• Экспорт и импорт виртуальной машины Hyper-V. Экспорт виртуальных машин Hyper-V. Скрипт v2.0

    Аннотация: Целью данной практической работы является подробное рассмотрение процессов экспорта и импорта виртуальных машин стандартными средствами Hyper-V и понятие снимок виртуальной машиной.

    Экспорт виртуальной машины

    Примечание. Материал практики основан на разделе "Local Desktop Virtualization" книги "Understanding Microsoft Virtualizations Solutions" M. Tulloch (Chapter 2).

    Процесс экспорта виртуальной машины средствами Hyper-V не составляет труда. Единственный параметр , который необходимо определить - путь сохранения файлов виртуальной машины. Для экспорта ВМ необходимо:

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

    На следующем рисунке представлено содержимое папки экспортированной виртуальной машины:


    Рис. 10.3.

    Config.xml - файл , содержащий информацию об исходном местоположении файлов виртуальных жестких дисков экспортируемой машины.

    В папке Virtual Machines находится .exp файл , содержащий сведения об экспортированной виртуальной машине. В ходе импорта данный файл преобразуется в конфигурационный xml - файл .

    В папке Virtual Hard Disks находятся файлы виртуальных жестких дисков экспортированной машины.

    В папке Snapshots содержит сведения о моментальных снимках виртуальной машины (.avhd , .vsv , .bin ).

    Импорт виртуальной машины

    Отметим особенности импорта виртуальных машин Hyper - V:

    1. Импортировать в Hyper-V можно только виртуальные машины другого Hyper-V сервера. Импорт виртуальных машин Virtual PC или Virtual Server невозможен, поскольку конфигурация виртуальных машин, создаваемых этими решениями отличается от Hyper-V, несмотря на то, что все решения используют .vhd - файлы виртуальных жестких дисков.
    2. Виртуальную машину можно экспортировать только один раз. Как уже отмечалось, создаваемый при экспорте .exp - файл сведений о виртуальной машине, в процессе импорта преобразуется в xml - файл конфигурации. В связи с этим, при возникновении ошибок импорта единственным способом продолжения работы с импортируемой виртуальной машиной является создание новой с аналогичной конфигурацией на основе уже имеющихся файлов виртуальных жестких дисков.

    Для импорта виртуальной машины необходимо:

    Отметим еще раз, что в случае возникновения ошибки импорта, для продолжения работы с виртуальной машиной необходимо создать новую, и на этапе подключения виртуального жесткого диска указать файл жесткого диска импортируемой машины (см. рис. 10.6)

    Снимки виртуальной машины (snapshot)

    Снимком называется состояние виртуальной машины на определенный момент времени. Снимки используются для хранения информации о состояниях и возврата к ним, в случае необходимости (отмена внесенных изменений с момента создания снимка).

    Нельзя создать снимок приостановленной виртуальной машины. При создании нескольких снимков может образоваться их хронологическая последовательность - дерево снимков.

    Для создания снимка необходимо выбрать пункт Снимок выпадающего меню .


    Рис. 10.7.

    После создания снимка появится соответствующий значок на панели "Снимки" диспетчера Hyper-V.

    Для возврата виртуальной машины к состоянию снимка, необходимо применить его к виртуальной машине (см. рис. 10.9).


    Рис. 10.9.

    Как показано на рис. 10.9 , доступны следующие действия работы со снимками:

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

    Краткие итоги.

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

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

    Hyper-V – настройка сети, создание контрольных точек, импорт и экспорт виртуальных машин.

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

    Но сначала вы должны решить, какой виртуальный коммутатор вы создаете. А Virtual Switch Manager предлагает текстовое описание каждого типа коммутатора.

    Если вы хотите, чтобы ваша видела и получила доступ к файлам на ПК хоста и в вашей сети, нужно выбрать внешний коммутатор. Эта же опция предоставляет доступ ВМ к интернету. Опции внутреннего и частного коммутатора позволяют виртуальным машинам Hyper-V связываться только друг с другом. После того, как вы определились с этой опцией, нажмите кнопку создания виртуального коммутатора.

    Дальше вы должны сконфигурировать опции своего виртуального коммутатора. Здесь важно определить, к какому сетевому адаптеру вашего компьютера вы его подключаете. На вашем компьютере может быть проводное и беспроводное соединение. Выберите правильное.

    Подсказка . Скажем вы захотели, чтобы ваша виртуальная машина получила доступ к файлам на ПК хоста, но не имела доступа к сети или интернету. Если ваш компьютер имеет проводное и беспроводное соединение, подключите коммутатор к тому, что вы не используете для выхода в интернет. Если у вас нет физического сетевого кабеля, выберите не Wi-Fi соединение. Так ВМ получит доступ только к основному ПК и будет изолирован от вредоносного программного обеспечения и внешних атак.

    После того, как вы создали виртуальный коммутатор, его нужно подключить к виртуальной машине. В центральной области менеджера Hyper-V, щелкните по соответствующей ВМ. Затем в нижней правой области, щелкните по настройкам. Что откроет настройки виртуальной машины.

    В левой области щелкните по опции адаптер соединения. Если вы не видите эту опцию, щелкните по Add Hardware, и добавьте сетевой адаптер. Полезная функция - управление пропускной способностью, которая может контролировать использование ВМ пропускной способности вашей сети. Эта регулировка гарантирует, что у виртуальной машины есть необходимое сетевое соединение, но лишние ресурсы она не потребляет.

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

    Внимание . Несмотря на то, что многие опции можно изменить в настройках самой ВМ, некоторые из них, установленные при создании виртуальной машины, можно изменить только выключив ее.

    Создание контрольных точек Hyper-V

    Если вы, в своей Windows 8.1 делаете какие-то существенные изменения, например, установку настольной программы или обновления Windows, создается системная точка восстановления. То есть сохраняется копия критических файлов операционной системы, таких как реестр Windows, до их изменения. И если что-то пойдет не так, изменение можно откатить и вернуться к более раннему состоянию Windows.

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

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

    Hyper-V - импорт и экспорт виртуальных машин

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

    • Ранее экспортируемую в Hyper-V виртуальную машину вы можете потом импортировать. Для чего не выделяя ВМ в верхнем правом углу окна менеджера Hyper-V, щелкните по ссылке импорт виртуальной машины.

    • Откроется мастер импорта виртуальной машины, где вас спросят, в какой папке (не файл) находится сохраненная копия ВМ.

    • Затем вы увидите название ВМ и подробности ее создания. Если это то, что вам надо, щелкните дальше.

    • Теперь вас спросят, как вы хотите импортировать ВМ. Для этого существуют три возможности:
    1. Зарегистрированная виртуальная машина . Используется если вы выполняете прямой импорт. ВМ находится в той же папке, куда и экспортировалась, и вы хотите оставить ее там.
    2. Восстановление виртуальной машины . Используется, если ВМ не находится в той папке, куда экспортировалась. Например, это копия, сделанная из основного образа на сервере.
    3. Копия виртуальной машины . Используется, если вы хотите создать локальную копию существующей ВМ, оставляя «основную» неповрежденной, например, для последующего ее импорта на другой ПК. А также эта опция используется, если вы создаете копию уже импортированной ВМ.

    Внимание . Если вы импортируете ВМ, не делая с нее копии, любые изменения, которые вы в ней сделаете и любые проблемы останутся в ней, и вы фактически теряете свою чистую основную копию.

    • Если вы хотите создать копию виртуальной машины, вас спросят, где вы хотите ее сохранить.

    • Последний шаг - подтвердить выбранные настройки.

    Интегрирование в виртуальную машину дополнительных служб

    Некоторые операционные системы, особенно более ранние версии Windows, не предоставляют сетевой доступ или другие нужные функции. И вам придется включить дополнительные функции ВМ. Делать это нужно в работающей виртуальной машине.

    Эти дополнительные функции, которые требуются для некоторых операционных систем, включают возможность перемещения курсора мыши между основным рабочим столом и открытой виртуальной машиной. А также включают сети и поддержку USB.

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

    3 июня 2011 в 20:40

    PowerShell+Hyper-V

    • Виртуализация

    Не могу уже через gui...

    Примерно так начинался мой разговор с другом которому в течение короткого промежутка времени пришлось несколько раз подряд экспортировать виртуальные машины из Hyper-V. Обычно для этого используется Hyper-V Manager (HVM), который устанавливается вместе с ролью Hyper-V под Windows Server 2008 R2. Я должен признаться что интерфейс этой программы не вызывает у меня каких-либо негативных эмоций. Среди всех программ для управления, которые Microsoft поставляет к Server эта мне кажется наиболее удобной и понятной (сравниваю например с IIS Manager, который вызывает недоумение у новых пользователей и бурное негодование у тех кто использовал IIS 6 в 2003 Server). Однако если нужно экспортировать или импортировать виртуальную машину в количестве N-штук в промежуток t-времени то используя Hyper-V Manager можно сломать кнопку у мыши и жутко возненавидеть Hyper-V. Тут на помощь и приходит PowerShell.
    Import-Module HyperV
    … И по умолчанию такого модуля в PowerShell конечно нет. Microsoft решила что писать командлеты для управления Hyper-V ни кто не будет (действительно дикая затея). С другой стороны этот мир полон людей умеющих и готовых упрощать жизнь себе и другим пользователям. Так на свет и появился PowerShell management Library for Hyper-V.
    Первое что нужно сделать- это скачать этот модуль + документация, по вкусу. (Оба доступны по:http://pshyperv.codeplex.com/releases)
    Потом необходимо этот модуль установить. Процесс не сложный (запускаемый файл install выдает себя с головой).
    Теперь можно работать. Запускаем PowerShell, импортируем модуль (то что написано в подзаголовке).
    И нам доступны все функции которые мы могли использовать через HVM, вот некоторые из них:

    Подключение к виртуальной машине
    New-VMConnectSession

    Манипулирование состоянием виртуальных машин
    Get-VMState, Set-VMState, Convert-VmState,
    Ping-VM, Test-VMHeartBeat, Shutdown-VM, Start-VM, Stop-VM, Suspend-VM
    Get-VMKVP, Add-KVP, Remove-KVP, Get-VMJPEG

    Возможность делать бэкапы, экспорт виртуальных машин и снятие снэпшотов
    Export-VM, Import-VM, Get-VMSnapshot, Choose-VMSnapshot, Apply-VMSnapshot, New-VMSnapshot ,Remove-VMSnapshot, Rename-VMSnapShot, Update-VMSnapshot, Get-VMSnapshotTree, Get-VmBackupScript

    Добавление и удаление вирт. машин, настройка их свойств
    New-VM, Remove-VM, Set-VM, Get-VMCPUCount, Set-VMCPUCount, Get-VMMemory, Set-VMMemory, Set-VMSerialPort

    Управление дисковыми контроллерами
    Get-VMDiskController
    Add-VMSCSIController, Remove-VMSCSIcontroller
    Get-VMDriveByController, Add-VMDRIVE, Remove-VMdrive
    Get-VMDiskByDrive, Add-VMDISK, Set-VMDisk, Get-VMDisk
    Get-VMFloppyDisk, Add-VMFloppyDisk
    Add-VMNewHardDisk

    Управление сетевыми интерфейсами
    Get-VMNic, List-VMNic, Choose-VMNIC, Add-VMNIC, Remove-VMNIC, Set-VMNICAddress, Set-VMNICConnection, Get-VMNicport,
    Get-VMnicSwitch, Choose-VMSwitch, New-VMSwitchPort, Get-VMByMACaddress, Choose-VMExternalEthernet,
    New-VMExternalSwitch, New-VMInternalSwitch,New-VmPrivateSwitch

    Работа с VHD файлами
    Get-VHDDefaultPath, Get-VHDInfo, New-VHD, Compact-VHD, Test-VHD,Convert-VHD,Merge-VHD,Mount-VHD, Unmount-VHD

    Все приведенные команды говорят сами за себя.
    Например чтобы получить состояние виртуальной машины достаточно ввести:
    List-VMState имя вирт. машины
    и в результате:

    В моем примере всего одна виртуальная машина => я не указывал параметров, но если у вас их много, то наверное следует явно указать ее имя, если не хочется потом пробираться сквозь консольный вывод.
    Так же просто например узнать об используемых сетевых интерфейсах для виртуальных машин, достаточно лишь ввести:
    Get-VMNic
    и получаем:

    Ну и самое, то что и было необходимо моему другу- возможность делать экспорт в фоне, по расписанию. Для этого можно написать командлет который потом запихнуть в Scheduler. У меня например этот командлет останавливает виртуальную машину, делает ее экспорт, запускает снова и посылает мне письмо об ошибке или успехе выполнения командлета. После этого управление передается другому скрипту который архивирует и посылает backup на удаленный ftp.
    Экспорт: export-vm -vm MyVM1 -path D:\backups\VM -copystate -wait -force
    Параметр -copystate говорит что нужно скопировать все (включая виртуальный диск => размер экспорта на выходе может получиться очень большим)

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

    P.S. Совершенно не претендую на «открытие Америки» просто решил что кому-нибудь информация об этом полезном модуле окажется полезной. Я описал лишь наиболее простые варианты для которых можно использовать PowerShell management library for Hyper-V. Если кто-то знает или написал собственные более удобные инструменты для оптимизации работы с Hyper-V буду только рад узнать о них.

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

    Любая виртуальная машина, вне зависимости от платформы, состоит из двух основных частей: собственно, виртуальной машины - текстового или XML-файла с описанием ее конфигурации и виртуального жесткого диска. Переносить саму виртуальную машину не имеет никакого смысла, мы же не переносим железо, если нам надо запустить систему на другом ПК, достаточно перенести виртуальный диск.

    Форматы виртуальных дисков у разных гипервизоров также различны, однако это не представляет сложности - достаточно использовать специализированное ПО для конвертации. Единственная тонкость - гостевая ОС должна поддерживаться обоими типами гипервизора. В противном случае придется предпринимать дополнительные меры для обеспечения нормальной работы, однако эта тема выходит за рамки данной статьи.

    Рассмотрим процесс на реальном примере. Один наш клиент приобрел коробочную версию "Мегаплан", который разработчики распространяют весьма оригинальным способом: в виде образа виртуальной машины формата Open Virtualization Format (OVF) , который поддерживают VMWare и VirtualBox . Собственно, внутри виртуалки содержится Ubuntu 12.04 с настроенным веб-сервером, СУБД и прочими компонентами необходимыми для работы "Мегаплана", который представляет собой обычное веб-приложение. При этом лицензионное соглашение запрещает доступ к гостевой ОС.

    Оставим за кадром лицензионную политику и удивимся только тому, что продавая, причем недешево, серверное ПО уровня предприятия, разработчики полностью игнорируют серьезные гипервизоры вообще, предлагая воспользоваться настольными гипервизорами второго типа.

    Если виртуальная машина уже работала на платформе VMWare (как чаще всего и бывает), то удаляем из нее VMWare Tools и выключаем машину.

    Теперь можно приступать к конвертации виртуального диска. Для этого воспользуемся бесплатной утилитой StarWind V2V Converter . Ее интерфейс и использование предельно просты. Выберем исходный виртуальный диск (файл с расширением vmdk ).

    По окончании преобразования еще раз заходим в свойства жесткого диска и выбираем там VHDX образ, подтверждаем изменения и запускаем виртуальную машину. Убедившись, что все работает нормально, старый VHD диск можно удалить.

    Конвертация Hyper-V виртуальных машин в VMWare производится аналогичным образом. Конвертируем виртуальный диск в VMDK, если использовался диск формата VHDX, то предварительно его следует преобразовать в VHD средствами Hyper-V аналогично тому как мы делали выше. Затем создаем в VMWare виртуальную машину для используемой гостевой системы с идентичными параметрами и в настройках диска указываем использовать сконвертитрованый нами VMDK диск. После запуска виртуальной машины не забываем установить пакет VMWare Tools необходимый для полноценной работы гостевой системы.

    • Теги:

    Please enable JavaScript to view the