Есть времена, когда вам необходимо установить обновления ОС или патчи безопасности на одной из ваших виртуальных машин-гостей (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 должны быть объединены в определенном порядке: от ребенка к родителю. Поэтому важно установить структуру древа контрольных точек, установив порядок их создания: от самых новых к самым старым.
Чтобы установить структуру контрольных точек, следуйте этим шагам:
- Откройте Hyper-V Manager.
- В центральном панели выберите виртуальную машину (ВМ), у которой нужно объединить контрольные точки.
- В разделе Действия справа щелкните Просмотреть диск.
- Выберите файл .avhd(x) и нажмите OK.
- Затем вы должны увидеть общий обзор свойств виртуального жесткого диска, включая его имя, расположение и имя родительского объекта. Определите родителя выбранного файла .avhd(x).
- Повторите шаги 3-5 для каждого файла .avhd(x) и определите их порядок для объединения.
Для объединения снимков Hyper-V выполните следующее:
- Откройте Менеджер Hyper-V.
- Выберите необходимую виртуальную машину.
- Нажмите Изменить диск.Откроется Мастер редактирования виртуального жесткого диска. Нажмите Далее.
- Нажмите Обзор, чтобы выбрать последний файл .avhdx. Нажмите Далее.
- Выберите Объединить, чтобы объединить изменения, сохраненные в дифференцируемом диске, в родительский или другой диск. Нажмите Далее.
- Выберите В родительский виртуальный жесткий диск и нажмите Готово.
- Для полного завершения процесса слияния снимков Hyper-V повторите шаги с 1 по 5 для каждого файла .avhd(x), пока все изменения не объединятся в исходный родительский диск.
- Последним шагом будет перезагрузка виртуальной машины для применения внесенных изменений.
Используя 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/