Как администрировать Microsoft Hyper-V из командной строки (CLI)
Введение
Использование интерфейсов с графическим интерфейсом, таких как Hyper-V Manager или System Center Virtual Machine Manager (SCVMM), позволяет быстро и легко управлять Hyper-V. Однако во многих случаях вы можете сделать что-то быстрее, если у вас есть готовый сценарий командной строки. Или много раз вам приходилось использовать инструменты командной строки для управления Hyper-V, если вы хотите инициировать какое-либо действие через сценарий. В этой статье я покажу вам, как использовать Powershell для управления и настройки Microsoft Hyper-V.
Установка PowerShell
Для управления Hyper-V из командной строки вам понадобится Powershell. Вы можете установить его как на свой сервер Hyper-V (чтобы начать тестирование на локальной машине), так и на свой локальный ПК (чтобы вы могли удаленно запускать команды Powershell на сервер). В моем случае я просто установил его на сервер, так как именно там я буду демонстрировать команды Hyper-V Powershell.
Чтобы установить Powershell в Windows 2008, перейдите в «Диспетчер серверов», затем в «Функции». Щелкните Добавить функции. Установите флажок Windows Powershell и нажмите «Далее».
Рис. 1. Установка компонента Windows Powershell
Теперь нажмите «Установить», чтобы установить его.
Когда вы закончите, вы должны увидеть, что установка прошла успешно, и вы можете нажать «Закрыть».
Теперь, когда вы перейдете в «Пуск» — «Все программы», вы должны увидеть Windows Powershell, и вы можете нажать на Windows Powershell под ним.
Рисунок 2: Запуск инструмента командной строки Powershell
На этом этапе у вас должно появиться характерное темно-синее окно командной строки Windows Powershell, например:
Рисунок 3: Интерфейс Windows Powershell
Прежде чем вы действительно перейдете к запуску команд, есть кое-что еще, что вы действительно хотите получить — библиотеку Hyper-V Powershell.
Загрузка и установка библиотеки Hyper-V Powershell
Джеймс О’Нил — разработчик библиотеки управления Powershell для Hyper-V, и его библиотека бесценна, когда дело доходит до администрирования Hyper-V из командной строки. Чтобы загрузить и установить его, перейдите на указанный выше веб-сайт библиотеки управления Powershell и получите файл Hyperv.zip. Он содержит 2 файла внутри. Извлеките их в простой каталог, к которому вы можете легко получить доступ из командной строки, например C: emp, или создайте каталог, например C:powershell.
Теперь запустите PowerShell. Перейдите в каталог со сценариями библиотеки Hyper-V PowerShell.
Если вы не хотите использовать цифровую подпись сценариев PowerShell, вы можете временно отключить безопасность PowerShell, выполнив следующие действия:
Set-ExecutionPolicy без ограничений
Затем, чтобы загрузить эту новую библиотеку Hyper-V PowerShell, вам нужно сделать следующее:
. c: emphyperv.ps1
Обратите внимание на «точку», затем «пробел», а затем полный путь к файлу Hyper-V PS1. Это «точечное пространство» очень важно, потому что именно оно удерживает эту библиотеку в памяти на время сеанса PowerShell.
Отсюда вам будет выдано предупреждение системы безопасности, и вы должны нажать « R », чтобы запустить этот скрипт. Вы должны быть вознаграждены « Функциями виртуальной машины загружены » и списком всех команд, которые вы теперь можете выполнять, чтобы вы могли управлять своим сервером Hyper-V из командной строки PowerShell.
Вот как это выглядит:
Рисунок 4: Установка библиотеки Hyper-V PowerShell
Теперь, когда наша библиотека установлена, давайте узнаем, как ее использовать.
Администрирование Hyper-V с помощью библиотеки PowerShell
Руководство пользователя библиотеки Hyper-V PowerShell объясняет, как использовать почти 100 команд, включенных в библиотеку. И помните, что каждая из этих почти 100 команд имеет множество параметров. Таким образом, это огромная библиотека управления для Hyper-V, а не просто набор команд. Объяснение того, как использовать все команды, выходит за рамки этой статьи (именно поэтому существует 41-страничное руководство пользователя).
При этом позвольте мне показать вам, как использовать несколько основных команд в библиотеке Hyper-V PowerShell.
И имейте в виду, что любые команды, которые вы можете выполнять в командной строке, становятся экспоненциально более мощными в сочетании со сценариями, которые могут их разумно использовать.
Вот 5 команд библиотеки Hyper-V PowerShell и способы их использования:
- Get-VMsummary — предоставляет подробную сводку обо всех гостевых виртуальных машинах на вашем сервере Hyper-V.
Рисунок 5: Выходные данные Get-VMsummary
- Start-VM, Stop-VM, Suspend-VM и Shutdown-VM — назначение этих команд очевидно. Все, что вам нужно предоставить, — это VMElementName, как показано на рисунке 6.
Рисунок 6: Использование команды Start-VM
- New-VM — как быстрее всего создать новую гостевую виртуальную машину? Просто введите New-VM, и вот что вы получите: новую виртуальную машину, которую вам еще нужно настроить и запустить.
Рисунок 7: Создание новой виртуальной машины
- Get-VMmemory — перечисляет все виртуальные машины на хосте и объем их памяти.
Рисунок 8: Get-VMmemory
- Get-VMsnapshot
Команда Get-VMsnapshot показывает все снимки, созданные в вашей среде Hyper-V. Когда дело доходит до моментальных снимков, вы также можете использовать такие команды, как Update-VMsnapshot, New-VMsnapshot, Apply-VMsnapshot, Get-VMsnapshotTree и Choose-VMsnapshot.
Рисунок 9: Get-VMsnapshot
Отдельное спасибо
Я хочу выразить особую благодарность Марку Уилсону и Джеймсу О`Нилу.
Идея этого поста возникла из видеоролика Марка Уилсона, посвященного управлению Hyper-V из командной строки. Для получения дополнительной информации о Марке посетите блог Марка.
Джеймс О`Нил — разработчик библиотеки управления Powershell для Hyper-V, и его библиотека превосходна! Вы можете узнать больше о Джеймсе в его блоге.
Вывод
В заключение, управление Hyper-V из командной строки необходимо для ИТ-администраторов. Делая это с помощью PowerShell, вы получаете еще больше возможностей. Хотя вы можете управлять Hyper-V с помощью PowerShell без библиотеки управления PowerShell — кому это нужно? Библиотека управления Powershell Джеймса О`Нилса для Hyper-V — огромный подарок для всех администраторов виртуализации, которые хотят использовать PowerShell и Hyper-V. Я призываю вас попробовать это для себя - это весело и легко!