Как объединить снимки Hyper-V: пошаговое руководство

Есть времена, когда вам необходимо установить обновления ОС или патчи безопасности на одной из ваших виртуальных машин-гостей (VM). Однако процесс обновления иногда может идти не так, как задумано, что приводит к сбоям системы, потере конфигурационных данных или деинсталляции определенных программ. Microsoft Hyper-V предоставляет возможность создавать снимки Hyper-V, которые позволяют сохранить состояние VM в определенный момент времени и откатить систему к предыдущему состоянию в случае ошибки системы.

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

Что такое снимок Hyper-V?

A Hyper-V snapshot is a point-in-time copy of a VM, which contains all the information required to restore your data. With the use of Hyper-V snapshots, you can revert the VM to a point when the VM state was captured and the snapshot was taken. Hyper-V snapshot technology is enabled by default when the Hyper-V role is installed on your computer and your first VM is created. Hyper-V snapshots of a selected VM can be taken in any state (Off, Running, Paused, and Saved) and the operation is typically complete in a few seconds.

Обратите внимание, что в настоящее время снимки Hyper-V известны как контрольные точки Hyper-V, но оба эти термина равносильны.

Типы снимков Hyper-V

Microsoft Hyper-V предоставляет два типа снимков:

  • Снимки производства применяют технологию резервного копирования внутри гостевой ОС для создания снимков данных, согласованных с данными, виртуальной машины. В этом целях используются служба копирования теней тома Windows (VSS) или замораживание файловой системы Linux. Снимки производства Hyper-V могут использоваться для захвата состояния производственной среды, так как они улучшают согласованность данных приложений и гостевой ОС. Обратите внимание, что снимки производства Hyper-V не захватывают состояние памяти ВМ, информацию о ее активности ЦП или конфигурации оборудования.

В новых версиях ОС (Windows Server 2016 и Windows 10) производственные контрольные точки являются типом контрольной точки по умолчанию. Однако вы можете изменить это в менеджере Hyper-V или в Windows PowerShell.

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

Как работают снимки Hyper-V

Как вы знаете, ВМ Hyper-V хранятся в виртуальных дисках, которые имеют формат файла .vhd(x). В то же время файлы снимков, созданные на этих ВМ Hyper-V, хранятся в формате файла .avhd(x) и находятся в той же папке, что и файл образа жесткого диска. Снимки Hyper-V в основном являются дифференцирующими виртуальными дисками, и каждый из них имеет родительско-дочернюю связь с соответствующим родительским виртуальным жестким диском. Вы можете создать до 50 снимков для каждой ВМ. Все снимки Hyper-V организованы иерархически, образуя таким образом поддерево контрольных точек.

Как объединить снимки Hyper-V

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

Чтобы объединить снимки Hyper-V, необходимо использовать либо Hyper-V Manager, либо PowerShell. Оба этих подхода будут описаны ниже.

Использование Hyper-V Manager

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

Чтобы установить структуру контрольных точек, следуйте этим шагам:

  1. Откройте Hyper-V Manager.
  2. В центральном панели выберите виртуальную машину (ВМ), у которой нужно объединить контрольные точки.
  3. В разделе Действия справа щелкните Просмотреть диск.
  4. Выберите файл .avhd(x) и нажмите OK.
  5. Затем вы должны увидеть общий обзор свойств виртуального жесткого диска, включая его имя, расположение и имя родительского объекта. Определите родителя выбранного файла .avhd(x).
  6. Повторите шаги 3-5 для каждого файла .avhd(x) и определите их порядок для объединения.

Для объединения снимков Hyper-V выполните следующее:

  1. Откройте Менеджер Hyper-V.
  2. Выберите необходимую виртуальную машину.
  3. Нажмите Изменить диск.Откроется Мастер редактирования виртуального жесткого диска. Нажмите Далее.
  4. Нажмите Обзор, чтобы выбрать последний файл .avhdx. Нажмите Далее.
  5. Выберите Объединить, чтобы объединить изменения, сохраненные в дифференцируемом диске, в родительский или другой диск. Нажмите Далее.
  6. Выберите В родительский виртуальный жесткий диск и нажмите Готово.
  7. Для полного завершения процесса слияния снимков Hyper-V повторите шаги с 1 по 5 для каждого файла .avhd(x), пока все изменения не объединятся в исходный родительский диск.
  8. Последним шагом будет перезагрузка виртуальной машины для применения внесенных изменений.

Используя PowerShell

Перед тем как начать объединение снимков Hyper-V, убедитесь, что на вашем компьютере включена команда Merge-VHD. Если нет, на экране появится следующая ошибка:
Термин 'Merge-VHD' не распознается как имя командлета, функции, файла сценария или выполняемой программы.
Проверьте правильность написания имени или, если указан путь, убедитесь, что путь указан правильно и повторите попытку.

Чтобы устранить эту проблему, откройте PowerShell от имени администратора и выполните следующую команду:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-PowerShell

Если всё верно, вы увидите следующее:

Теперь вы готовы запустить командлет Merge-VHD. Обратите внимание, что эта операция выполняется офлайн.

Чтобы объединить снимки Hyper-V, выполните эту команду:

Merge-VHD Path = '' DestinationPath = ''

В этом случае данные с нескольких дочерних дисков, начиная с самого нового, могут быть объединены с самым старым родительским диском. На экране вы увидите следующее:

После завершения операции выключите виртуальную машину-гостя и перезагрузите систему. В отличие от Hyper-V Manager, который требует объединения каждого слоя цепочки дисков отдельно, PowerShell позволяет выполнять такую ​​сложную операцию одной командой.

Почему стоит использовать снимки Hyper-V

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

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

Source:
https://www.nakivo.com/blog/merge-hyper-v-snapshots-step-step-guide/