Production Checkpoint в Hyper-V Windows Server 2016

У версії Hyper-V, представленої в Windows Server 2016 і Windows 10, з'явилася нова функція під назвою Production Checkpoints (Продуктивні контрольні точки). Чекпоінти (раніше їх називали снаншотамі), з'явилися ще в Windows Server 2008 Hyper-V і представляли собою механізм збереження поточного стану віртуальної машини (при цьому зберігаються стан диска, пам'яті, процесорів і пристроїв). У разі необхідності, адміністратор може відкотити ВМ до стану на момент створення такої контрольної точки. Такий тип чекпоінта не залежить від гостьової ВМ, яка нічого не знає про його створення. Основний недолік таких контрольних точок - неможливість забезпечити збереження консистентного стану додатків, запущених всередині ВМ (бази SQL Server, Active Directory, Exchange і т.д.). Таким чином, стандартні контрольні точки Hyper-V (будемо називати їх Standard Checkpoint) за рекомендаціями Microsoft придатні для використання тільки в тестових і лабораторних середовищах.

Production Checkpoints в Windows Server 2016 за рахунок інтеграції з гостьової ОС через службу тіньового копіювання VSS (в Wndows) або fsfreeze (для Linux), дозволяють отримати консистентні стан віртуальної машини (природно, за умови підтримки додатком створення резервних копій через VSS).

Примітка. При використанні продуктивних чекпоінтів замість XML файлів, що зберігаються разом з ВМ, використовуються два нових типи бінарних файлів: .vmcx - конфігураційні дані, .vmrs - дані стану.

У Hyper-V на Windows Server 2016 при створенні контрольної точки ВМ за замовчуванням використовуються нові Production Checkpoints, і якщо з якихось причин вони не підтримуються, використовуються Standard Checkpoint.

Використовуваний тип чекпоінта задається за допомогою консолі Hyper-V Manager  в розділі Checkpoints налаштувань віртуальної машини.

Переключитися між режимами створінь контрольних точок Hyper-V можна за допомогою наступних команд PowerShell:

Set-VM -Name MS-SQL4 -CheckpointType Disabled
Set-VM -Name MS-SQL4 -CheckpointType Standard
Set-VM -Name MS-SQL4 -CheckpointType Production
Set-VM -Name MS-SQL4 -CheckpointType ProductionOnly

Примітка. Production Checkpoint підтримується для ВМ з версією віртуального обладнання> 6.0.

Створюється чекпоінт для ВМ як зазвичай: з консолі Hyper-V або за допомогою PowerShell. 

CheckPoint-VM -Name MS-SQL4

При створення Production Checkpoint в журналі Application гостьовий ВМ можна знайти події з початком і завершенням процедури створення приведення додатки в консистентні стан за допомогою VSS.

Після відкату до Production Checkpoint, потрібно вручну включити ВМ, при цьому і гостьова ОС і запущене в ній додаток вважатимуть, що в попередній раз додаток і ОС завершили свою роботу коректно.

Однак, не варто забувати, що контрольні точки Hyper-V не є повноцінним засобом резервного копіювання. Їх область застосування - короткострокові завдання (тестування релізів, оновлень, змін і т.д.)