Понимание и использование моментальных снимков Microsoft Windows Server 2008 Hyper-V

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


Что такое моментальный снимок Hyper-V?


Если вы используете Microsoft Virtual Server 2005 R2 в среде тестирования и разработки или поддержки, вы, вероятно, быстро поняли, как использовать разностные и откатные виртуальные жесткие диски (VHD) для создания иерархий виртуальных машин с добавочными изменениями конфигурации и возможностями отката. Вы можете гораздо проще реализовать эти типы сред, используя новую функцию моментальных снимков Hyper-V, которая позволяет вам фиксировать конфигурацию и состояние виртуальной машины в любой конкретный момент времени и дает вам возможность загрузить любой существующий моментальный снимок. в течение нескольких секунд.



Как Hyper-V создает моментальный снимок?


В Hyper-V входят три отличительных элемента: гипервизор Windows, дочерние разделы и родительский раздел. Гипервизор Windows работает непосредственно над оборудованием и обеспечивает изолированное выполнение родительского и дочернего разделов. Роль дочернего раздела заключается в предоставлении среды виртуальной машины для установки и запуска гостевых операционных систем и приложений. Наконец, родительский раздел — это специальная виртуальная машина, на которой работает Windows Server 2008 и которая управляет созданием и работой дочерних разделов.


Родительский раздел создает дочерние разделы и управляет ими с помощью набора компонентов, называемых стеком виртуализации. Одним из компонентов стека виртуализации является служба управления виртуальными машинами (VMMS). VMMS включает в себя множество важных подкомпонентов, в том числе Worker Process Manager (WPM) и Snapshot Manager (SM). WPM создает рабочий процесс виртуальной машины (VMWP) для каждой виртуальной машины при ее запуске. VMWP управляет созданием моментальных снимков для виртуальной машины, которая находится в онлайн-состоянии (запущена и работает). Если виртуальная машина находится в автономном режиме и, следовательно, не имеет активного VMWP, диспетчер моментальных снимков обрабатывает процесс создания моментального снимка.


На рис. 1 показана папка виртуальной машины по умолчанию и набор файлов, который включает:



  • Папка, в которой хранится один или несколько виртуальных жестких дисков (VHD), содержащих файлы операционной системы, файлы приложений и данные.

  • Папка моментальных снимков, изначально не содержащая файлов.

  • Папка Virtual Machines, которая содержит файл конфигурации виртуальной машины на основе XML, названный с использованием глобального уникального идентификатора (GUID), и папку с таким же идентификатором GUID, содержащую два файла. Первый файл — это сохраненный файл состояния (названный с использованием того же идентификатора GUID, что и файл XML с расширением VSV), который используется для хранения сведений о состоянии виртуальной машины, таких как данные регистра процессора. Второй файл — это двоичный файл (также названный с тем же идентификатором GUID, что и XML-файл с расширением.BIN), который используется для хранения содержимого памяти виртуальной машины.

Изображение 28377
Рис. 1. Папка и файлы виртуальной машины по умолчанию перед созданием моментального снимка


На рис. 1 видно, что папка виртуального жесткого диска по умолчанию находится в C:UsersPublicDocumentsMicrosoft Hyper-VVirtual Hard Disks, а папки Snapshots и Virtual Machines расположены в C:ProgramDataMicrosoft. WindowsHyper-V. Расположение этих папок можно легко изменить в настройках Hyper-V с помощью консоли диспетчера Hyper-V.


Для виртуальной машины без моментальных снимков все изменения, внесенные в файлы гостевой операционной системы, файлы приложений и данные виртуальной машины, применяются к виртуальным жестким дискам, связанным с виртуальной машиной. Любая информация о состоянии хранится в файлах.VSV и.BIN. Если вы вносите изменения в настройки виртуальной машины, эти изменения отражаются в файле конфигурации XML.


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



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

  • Копия исходного файла конфигурации виртуальной машины с новым идентификатором GUID и расширением.XML.

  • Новая папка с тем же идентификатором GUID, что и у нового XML-файла. Эта папка содержит сохраненный файл состояния (.VSV) и двоичный файл (.BIN), которые создаются во время моментального снимка виртуальной машины. Оба файла имеют тот же идентификатор GUID, что и новая папка.

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

Изображение 28378
Рисунок 2: Папки и файлы виртуальной машины после моментального снимка


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


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


Создание снимка


Чтобы создать снимок виртуальной машины, вы можете использовать диспетчер Hyper-V. Это консоль на основе MMC, которая активируется при добавлении роли Hyper-V в Windows Server 2008. Как показано на рис. 3, просто щелкните правой кнопкой мыши виртуальную машину и выберите в меню параметр Snapshot.


Изображение 28379
Рисунок 3: Создание моментального снимка виртуальной машины с помощью консоли диспетчера Hyper-V


На рис. 4 показаны изменения в консоли диспетчера Hyper-V после создания моментального снимка. По сути, в разделе «Снимки» теперь отображается древовидная структура, отражающая существующую иерархию снимков виртуальной машины. Корневой узел дерева — это только что созданный моментальный снимок, содержащий отметку времени создания. Под корневым узлом находится дочерний элемент Now, представляющий работающую версию виртуальной машины.


Изображение 28380
Рис. 4. Отображение моментального снимка в консоли диспетчера Hyper-V.


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


Изображение 28381
Рис. 5. Отображение иерархии моментальных снимков в консоли Hyper-V Manager


Возврат к предыдущему снимку


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


Изображение 28382
Рис. 6. Использование параметра возврата моментального снимка в консоли диспетчера Hyper-V


При выполнении Revert работающая виртуальная машина останавливается, а активные разностные диски (.AVHD) удаляются. Новые разностные диски создаются и именуются с использованием нового идентификатора GUID. Конфигурация виртуальной машины, сохраненная во время моментального снимка, восстанавливается, а имена новых активных разностных дисков обновляются. Затем виртуальная машина перезапускается и загружаются файлы состояния сохранения (.VSV и.BIN). Если моментальный снимок был создан, когда виртуальная машина была выключена, то файлы состояния сохранения для загрузки отсутствуют, и виртуальная машина остается выключенной.


Вывод


Хотя внутренняя работа функции моментального снимка, включенной в выпуск Windows Server 2008 Hyper-V, сложна, создать моментальный снимок и вернуться к нему с помощью консоли диспетчера Hyper-V чрезвычайно просто. Простота использования функции Snapshot в Hyper-V облегчает создание иерархий виртуальных машин с вариантами конфигурации, которые подходят для сред тестирования и разработки, добавочных сборок образов рабочих столов и серверов и многих других сложных сценариев. Это одно из многих улучшений технологии виртуализации Windows, которое делает ее конкурентоспособной по сравнению с другими признанными продуктами виртуализации, такими как VMWare.