Управление Hyper-V из командной строки (часть 5)

Опубликовано: 20 Апреля, 2023

  • Управление Hyper-V из командной строки (часть 7)
  • Управление Hyper-V из командной строки (часть 8)

Введение

В моей предыдущей статье из этой серии я показал вам, как использовать PowerShell для извлечения данных конфигурации памяти виртуальной машины, а затем помещать эти данные в электронную таблицу. В этой статье я хочу развить эту технику, показав вам, как использовать PowerShell для изменения распределения памяти в Hyper-V.

Прежде чем я начну

Прежде чем я начну, я хочу быстро отметить для всех, кто только присоединяется к этой серии, что команды, которые я буду обсуждать, не являются родными для Hyper-V. Они являются частью библиотеки управления Hyper-V. Кроме того, эту библиотеку необходимо импортировать в PowerShell каждый раз, когда вы планируете использовать какие-либо команды, связанные с Hyper-V. Команда импорта:

Импорт модуля «C:Program FilesModulesHypervHyperv.psd1»

Полные инструкции по загрузке и установке библиотеки управления Hyper-V приведены в части 1 этой серии.

Между прочим, загружать модуль Hyper-V для PowerShell вручную и импортировать его вручную не всегда будет необходимо. Модуль Hyper-V будет включен в Windows Server 8.

Изменение назначенной памяти

Для изменения объема памяти, выделенной виртуальной машине, используется команда Set-VMMemory. Команда предполагает, что вы собираетесь указать имя виртуальной машины, распределение памяти которой вы хотите изменить, но у вас есть возможность использовать конвейер для указания нескольких имен виртуальных машин (или даже использовать подстановочные знаки.

Основное использование команды выглядит следующим образом:

Set-VMMemory –VM «<имя виртуальной машины»> -Memory <объем памяти> -Server <имя хост-сервера>

Чтобы дать вам более конкретный пример того, как работает эта команда, давайте представим, что я хотел выделить два гигабайта данных для виртуальной машины с именем Lab-W7 на хост-сервере с именем Hyper-V. Для этого я бы использовал следующую команду:

Set-VMMemory –VM «Lab-W7» –Memory 2.0GB –Server Hyper-V

Вы можете увидеть, как эта команда выглядит в действии, на рисунке A.

Изображение 26654
Рисунок А:

Выделить память виртуальной машине можно из командной строки.

Очевидно, удобно иметь возможность изменять распределение памяти виртуальной машины из командной строки, но вы должны признать, что этот процесс может стать довольно утомительным, если мне придется вручную выделять память для каждой отдельной виртуальной машины. К счастью, можно использовать выделение памяти подстановочными знаками.

На моем тестовом сервере есть ряд виртуальных машин под управлением Windows 7. Имена каждой из этих виртуальных машин начинаются с Lab-W7. Поскольку все мои виртуальные машины с Windows 7 придерживаются общего соглашения об именах, можно выделить память для всех из них одновременно. Первым шагом в этом является получение списка виртуальных машин, память которых я хочу изменить. Это можно сделать с помощью следующей команды:

Get-VM – Имя «Lab-W7%»

Эта команда возвращает список всех виртуальных машин с именем, начинающимся с Lab-W7, как показано на рисунке B.

Изображение 26655
Рисунок Б:

Вы можете использовать команду Get-VM, чтобы вернуть список всех виртуальных машин, соответствующих соглашению об именах.

Теперь мы можем объединить две команды, чтобы одновременно выделить память для каждой из этих виртуальных машин. Команда для этого:

Get-VM «Лаборатория-W7%» | Set-VMMemory – Память 2,0 ГБ

Вы можете увидеть, как это выглядит на рисунке C.

Изображение 26656
Рисунок C: Вы можете одновременно выделить память нескольким виртуальным машинам.

Вы могли заметить, что размер памяти выражается в ГБ, но вы можете выразить память в байтах, просто опустив нотацию ГБ.

Создание новой виртуальной машины

Хотя есть еще много тем, которые я хотел бы в конечном итоге обсудить в отношении распределения ресурсов виртуальной машины, мне нужно создать новую виртуальную машину для использования в другой статье, которую я пишу для этого сайта. В таком случае я подумал, что это может быть хорошей возможностью продемонстрировать команду New-VM.

Вы можете использовать команду New-VM для создания новой виртуальной машины из командной строки. К сожалению, эта команда не поддерживает множество параметров, поэтому вам придется использовать другие команды для создания ресурсов для новой виртуальной машины.

Синтаксис команды New-VM следующий:

New-VM –Name «<имя виртуальной машины>» –Path <путь к виртуальной машине> -Server <имя вашего хост-сервера>

Технически путь не требуется, но у большинства администраторов Hyper-V есть определенное место, где они предпочитают хранить файлы виртуальной машины, а не использовать расположение Hyper-V по умолчанию.

Если вы хотите увидеть эту команду в действии, посмотрите рисунок D. Здесь я использую команду для создания новой виртуальной машины с именем Windows Server 8 Beta.

Изображение 26657
Рисунок D: Команда New-VM используется для создания новой виртуальной машины.

В этом конкретном случае я заключил путь в кавычки, хотя синтаксис этого специально не требует, потому что я хотел использовать путь, в имени папки которого есть пробелы.

Итак, теперь, когда виртуальная машина создана, вам может быть интересно, какие ресурсы ей выделены. Если вы посмотрите на рисунок E, вы увидите, что новая виртуальная машина имеет 512 МБ памяти, без виртуального жесткого диска и с 1 виртуальным процессором. К счастью, мы можем легко добавлять ресурсы в виртуальную машину прямо из командной строки.

Изображение 26658
Рисунок E: Новой виртуальной машине выделено мало ресурсов.

Для начала, 512 МБ памяти действительно недостаточно для запуска Windows Server 8, поэтому давайте выделим пару гигабайт памяти для только что созданной виртуальной машины. Команда, которую я бы использовал в этом случае:

Set-VMMemory –VM «Windows Server 8 Beta» –Memory 2.0GB –Server Hyper-V

Вы можете увидеть фактическую команду на рисунке F, а если вы посмотрите на рисунок G, вы можете убедиться, что память была немедленно назначена только что созданной виртуальной машине.

Изображение 26659
Рисунок F: Эта команда использовалась для выделения памяти новой виртуальной машине.

Изображение 26660
Рисунок F: Вы можете проверить через диспетчер Hyper-V, что память действительно была выделена.

Быстрый путь

Я создал новую виртуальную машину таким образом по двум причинам. Во-первых, я хотел показать вам, какие ресурсы автоматически назначаются вновь созданной виртуальной машине, а какие нет. Во-вторых, я хотел иметь возможность посвятить следующую статью серии тому, как выделить различные ресурсы для виртуальной машины.

Хотя в использовании этих методов нет ничего плохого, есть способ сделать процесс более эффективным. Используя конвейерную обработку, можно создать виртуальную машину и сразу назначить ей ресурсы. Если вы посмотрите на рисунок H, то увидите, что я создал еще одну виртуальную машину и объединил команду New-VM с командой Set-VMMemory, чтобы мне не пришлось возвращаться и добавлять память в новую виртуальную машину позже. на. Этот метод можно использовать с любым из командлетов распределения ресурсов, которые я собираюсь показать вам позже в этой серии.

Изображение 26661
Рисунок H. Ресурсы для виртуальной машины можно выделить при ее создании.

Вывод

В следующей статье этой серии я покажу вам, как добавить дополнительные ресурсы в виртуальную машину Windows Server 8 Beta, которую мы только что создали. Мы начнем с создания виртуального жесткого диска, а затем добавим другие ресурсы, такие как ядра ЦП и сетевые адаптеры.

  • Управление Hyper-V из командной строки (часть 6)
  • Управление Hyper-V из командной строки (часть 7)
  • Управление Hyper-V из командной строки (часть 8)