Незважаючи на те, що навколишнє середовище Hyper-V надає досить багато технологій забезпечення високої доступності та відмовостійкості віртуальних машин (таких як кластера, Live Migration, реплікація, і т.д.), адміністратор повинен думати про класичний резервне копіювання віртуальних машин. Всі ці технології дозволяють мінімізувати час недоступності ВМ в різних сценаріях, але не забезпечують можливість відновлення у випадках різних форс мажорів, таких як природні катаклізми, помилки персоналу, хакерські або вірусні атаки, атаки конкурентів і подібні сценарії. У цій статті я постараюся розглянути основні вимоги, які пред'являються до систем резервного копіювання Hyper-V, стратегії резервного копіювання та можливості безкоштовних і комерційних продуктів резервного копіювання.
Ви можете створювати резервні копії віртуальних машин, запущених на хості Hyper-V, за допомогою вбудованого Windows Server Backup (або скриптів на його основі, що запускаються через wbadmin), безкоштовних або комерційних продуктів. Всіх ці спосіб об'єднує те, що в основі резервного копіювання віртуальних машин Hyper-V лежить технологія снапшотов (або знімків). В знімку зберігається як стан віртуальних дисків, так і вміст пам'яті і настройки віртуальної машини. Тобто снапшот є стан віртуальної машин на якийсь момент часу.
зміст:
- Як працює резервне копіювання віртуальних машин Hyper-V?
- Основні вимоги до засобів резервного копіювання ВМ Hyper-V
- Резервне копіювання Hyper-V за допомогою вбудованого Windows Server Backup
- Сторонні засоби резервного копіювання Hyper-V
Як працює резервне копіювання віртуальних машин Hyper-V?
Розглянемо спрощено схему роботи будь-якого сучасного засоби для бекапа віртуальних машин Hyper-V.
Примітка. Раніше резервне копіювання серверів виконувалося за рахунок установки агента резервного копіювання на кожен хост. В епоху віртуалізації точка створення бекапа змістилася з гостьової ОС на сам Hyper-V хост, на якому запущено ВМ. Агентні сценарії резервного копіювання застосовуються досить рідко, в основному для конкретних додатків, які не підтримують VSS.Засіб резервного копіювання віддає команду хосту Hyper-V на створення знімка. Після отримання команди на створення снапшотов гипервизор створює нові файли (дельта-файли) і ВМ продовжує свою роботу, зберігаючи зміни в цих файлах них. Тепер завдання кошти резервного копіювання скопіювати оригінальні файли ВМ (зміни в них не пишуться) на носій резервних копій і після цього видалити снапшот. При видаленні знімка Hyper-V виробляє консолідацію (злиття) вихідних і дельта файлів, робота ВМ при цьому також не переривається. У разі втрати продуктивної ВМ, ви можете відновити її стан на момент дати створення резервної копії.
Основні вимоги до засобів резервного копіювання ВМ Hyper-V
Це в загальних рисах про резервне копіювання Hyper-V, але на ділі виникає купа нюансів і проблем. Спробую перерахувати найбільш поширені проблеми:
- Чим довше засіб резервного копіювання забирає снапшот (бекап) до себе, тим більше змін накопичується в дельта файлах. При досить великій кількості змін всередині ВМ за час копіювання файлів, процес злиття файлів при видаленні снапшотов може викликати високе навантаження на диски, Hyper-V хост і саму ВМ. Тобто бажано максимально швидко забрати знімок. У Hyper-V Server 2016 року для прискорення процесу резервного копіювання використовується технологій Resilient Changed Tracking, яка дозволяє засобу резервних копіювання копіювати тільки блоки даних, змінені з момент останнього бекапа. При цьому не потрібно "забирати" ВМ цілком.
- При копіюванні даних знімка ВМ по LAN мережі з хоста Hyper-V на сховище резервних копій можливо викликати високе навантаження на мережу. Тому для трафіку резервного копіювання бажано використовувати окремий інтерфейс сервера, або ж копіювати дані через SAN мережу.
- Виходячи з вищестоящих пунктів при використанні зовнішніх систем зберігання для зберігання файлів ВМ, ви можете скористатися можливостями СГД по інтеграції із засобами резервного копіювання (апаратні снапшоти).
- Спочатку гостьова ОС не підозрює про те, що створюється її резервна копія. Відповідно при спробі відновити ВМ з такого бекапа, ОС намагається продовжити свою роботу з моменту створення знімка. У деяких випадках це може викликати проблеми як з самої ОС, так і з втратою даних в запущеними всередині неї додатках (особливо в транзакційних, таких як Exchange, SQL, ADDS і т.п.). Для подолання цієї проблеми в Hyper-V 2016 з'явився новий тип знімків - Production Checkpoints (Microsoft рекомендується застосовувати звичайні знімки - Standard Checkpoint тільки в тестових і лабораторних середовищах, або для бекапа зупинених віртуальних машин). Виробничі знімки працюють за рахунок наявності в гостьовій ОС засобів інтеграції Hyper-V і ґрунтуються на технології Volume Shadow Copy (Windows) або заморозки файлової системи fsfreeze (Linux). Однак стан пам'яті при цьому не копіюється. Тобто Hyper-V повідомляє гостьову ОС про створення знімка, додаток з підтримкою VSS коректор завершує поточні транзакції, переходить в консистентні стан і створюється знімок ВМ. При відновленні з такого знімка гостьова ОС вимкнена (тому що стан пам'яті не було збережено), після включення вона вважає, що просто сталося аварійне відключення по харчуванню. Додаток (якщо воно підтримує VSS) при цьому починає роботу з збереженого узгодженого стану.
- Для зберігання резервних копій віртуальних машин потрібно досить багато місця. Чим частіше ви робите знімки і чим довше повинні зберігається бекапи, тим більше місця вам потрібно в сховище резервних копій. Як правило вам на допомогу може прийти технологія дедуплікаціі даних (вбудована в Windows Server) або власна технологія від вендора кошти резервного копіювання. Якщо ви використовуєте диференціальні диски, потрібно щоб засіб резервного копіювання підтримувало цю технологію. Інакше ви можете зберігати однакові дані ВМ кілька разів.
- При великій щільності віртуальних машин на хості бажано мати можливість планування часу резервного копіювання ВМ, щоб уникнути надзвичайно навантаження на продуктивні системи в виробниче час.
- Якщо вам потрібно зберігати кілька копій віртуальної машини на кілька дат кілька днів, потрібно забезпечити управління кількістю збережених копій ВМ, автоматизувавши управління резервними копіями скриптами або засобами програми резервного копіювання.
- Також важливі засоби моніторингу створення резервних копій. Не хочеться в певних момент дізнатися, то резервне копіювання не працює, тому що на СГД під бекапи вже давно скінчилося місце. Тут же потрібно згадати про засіб верифікації резервних копій.
- Досить часто потрібно відновити з резервної копії віртуальної машини конкретний файл. Деякі засоби резервного копіювання / відновлення дозволяють виконувати гранулярне відновлення файлів / папок без необхідності розгортання цілком ВМ або її віртуального диска. Примітка. Є навіть кошти відновлення конкретних сховищ, ящиків та навіть окремих листів з резервної копії ВМ з Exchange.
- Можливість поділу прав доступу до системи за рахунок рольової моделі управління резервним копіюванням (актуально для адміністраторів, що відповідають за різні групи систем або пристроїв).
- Не забувайте про необхідність реалізації класичної стратегії резервного копіювання 3-2-1 (три копії, на двох різних носіях, один з яких на іншому майданчику).
Далі ми розглянемо кілька популярних рішень по організації резервного копіювання ВМ на Hyper-V з точки зору розглянутих можливостей.
Резервне копіювання Hyper-V за допомогою вбудованого Windows Server Backup
Безкоштовний спосіб організації системи резервного копіювання ВМ на Hyper-V передбачає використання вбудованого Windows Server Backup через графічний майстер резервного копіювання / відновлення або утилітою wbadmin (Входить до складу WSB). Windows Server Backup підтримує VSS і инкрементальное копіювання, ця фіча доступна як в повноцінної редакції Windows Server 2012 і вище, так і в Hyper-V. Для установки даного компонента потрібно скористатися консоллю Server Manager або командою:
Install-WindowsFeature Windows-Server-Backup -IncludeManagementTools
У WSB є графічна консоль wbadmin.msc, яка дозволяє створювати і управляти резервним копіюванням Hyper-V, створювати розклад резервного копіювання і т.д. Для бекапа ВМ досить запустити простий майстер, в якому потрібно вибрати які ВМ з сервера Hyper-V потрібно бекапіть, куди, і вказати розклад резервного копіювання.
Порада. У попередніх версіях Hyper-V до 2012 за допомогою вбудованих засобів резервного копіювання було не можна створити резервну копію однієї ВМ - Бекап все віртуальні машини відразу.Але зазвичай простіше скористатися утилітою командного рядка wbadmin для бекапа ВМ Hyper-V. Тим більше з графічного інтерфейсу можна створити більше одного завдання резервного копіювання ВМ, причому це завдання завжди буде перезатірать попередні резервні копії.
Щоб створити резервну копію ВМ з ім'ям Server 1 в локальну папку на диску C: (не найправильніша, ідея не так, чи), просто виконайте команду:
wbadmin start backup -backupTarget: C: -hyperv: "Server 1"
Наприклад, щоб створити резервну копію двох ВМ і зберегти їх в мережеву папку (припустимо це зовнішнє NAS сховище), досить виконати команду:
wbadmin start backup -backuptarget: \\ 192.168.1.100 \ VMbackup: -hyperv: "TestVM01, TestVM 02" -allowDeleteOldBackups -quiet
Ви можете додати цю команду в планувальник Windows (за допомогою того ж PowerShell) і тим самим налаштувати регулярне створення резервних копій ВМ (старі бекапи при цьому видаляються).
Наприклад, при бекапе ВМ з контролером домену AD, ви можете після закінчення бекап скинути транзакційні логи AD, щоб база ADDS в резервної копії була в Консистентне стані (аналогічно можна зробити бекап ВМ з Exchange або SQL Server:
wbadmin start backup -backuptarget: \\ 192.168.1.100 \ VMbackup: -hyperv: MSK-DC1 -vssFull
Щоб отримати список зареєстрованих в системі резервних копій, виконайте команду:
wbadmin get versions
З відновленням ВМ з такого бекапа все також досить просто. Однак ви не можете відновити з резервної копії один конкретний файл або папку, вам доведеться вручну змонтувати vhdx файл з резервною копією і також вручну скопіювати потрібний файл.
При всій своїй простоті WSB досить надійне рішення для резервного копіювання ВМ Hyper-V, працює досить швидко і дозволяє управляти розкладом резервного копіювання. Але звичайно, у Windows Server Backup є свої недоліки:
- Немає коштів моніторингу виконання резервних копій, перевірки консистентності резервних копій ВМ і додатків в них;
- Складно управляти резервним копіюванням в середніх і великих інсталяціях Hyper-V (підходить для невеликих середовищ з 1-2 хостами Hyper-V);
- Не можна автоматично відновити конкретний файл або стан додатки (вам доведеться вручну змонтувати vhdx файл з резервною копією і вручну скопіювати потрібний файл);
- При великій щільності і розмірах віртуальних машин на хості вам доведеться за допомогою планувальника Windows налаштовувати порядок створення резервних копій, щоб не викликати перевантаження сервера, а також високого навантаження на мережі LAN / SAN / iSCSI в робочий час (якщо ви зберігаєте бекапи на іншому сховище).
Сторонні засоби резервного копіювання Hyper-V
МАТЕРІАЛ ПІДГОТОВЛЕНО ЗА СПРИЯННЯ BACKUPSOLUTION.RUСпеціалізірованний постачальник рішень для резервного копіювання та відновлення данихПри великій кількості хостів Hyper-V і віртуальних машин, використовувати вбудований Windows Server Backup нереально. Вам в будь-якому випадку доведеться вибирати одне з сторонніх рішень. Однозначно говорити, що той чи інший продукт буде ідеальним рішенням для резервного копіювання Hyper-V не можна, занадто багато нюансів потрібно врахувати. Це і кількість хостів, ліцензійні обмеження, необхідний функціонал, архітектура мережі і т.д.
На ринку представлена велика кількість комерційних і безкоштовних продуктів для резервного копіювання, і заплутатися в них дуже складно. Зазвичай для оцінки лідерів ніші використовується магічний квадрант Gartner. Я знайшов таку картинку, що характеризують основних гравців і лідерів на ринку резервного копіювання для дата-центрів.
Як ви бачите, Гартнер серед лідерів рішень щодо створення резервної копії виділяє компанії і продукти:
- Actifio
- Commvault
- Dell EMC
- IBM
- Rubrik
- Veeam
- Veritas Technologies (Symantec - Veritas Backup Exec)
- Acronis (Veritas Backup Exec)
- Symantec (Veritas Backup Exec)
В рамках однієї статті оцінити і порівняти всі продукти досить складно, тому спробуємо розглянути можливості декількох програм - лідерів ринку щодо створення резервної копії Hyper-V.
- Veritas Backup Exec
- Commvault Backup
- Veeam Backup
- Acronis Backup
Я склав невелику порівняльну таблицю з цікавими мені можливостями цих коштів резервного копіювання (розглядається функціонал версій, актуальних на момент написання статті).
Функціонал / Продукт | Veritas Backup Exec 20.2 | Commvault Backup and Recovery 11 | Veeam Backup & Replication 9.5 | Acronis Backup 12.5 |
Резервне копіювання файлових систем | Windows / Linux | Windows / Linux / IBM AIX / HP-UX | Windows / Linux / IBM AIX / HP-UX. Агенти для фізичних систем автономні, не підтримують спільне використання сховищ групові політики | Windows / Linux |
Передача резервних копій дискових масивів по NDMP | + Підтримка NDMP v4 +. Список підтримуваних сховищ є на сайті veritas. Чи не підтримується инкрементальное і диференційно копіювання, бекап тільки LUN цілком і не можна відновити окремі файли. | + Підтримка прямого резервного копіювання даних з файлових пристроїв NAS. На сайті Commvault є список підтримуваних версій файлових систем різних виробників. При використанні цього типу резервного копіювання дані відправляються безпосередньо з NAS через MediaAgent (проксі сервер) на пристрій зберігання, минаючи керуючий сервер CommServe. Підтримка бекапов окремих vmdk файлів. | + Підтримка NDMP (v4 і вище) з'явилася відносно недавно. Підтримується бекап тільки LUN цілком. Підтримується до 10 контрольних точок відновлення (на NetApp до 30). | - |
Передача моментальних знімків ВМ по SAN | + На сайті Veritas в секції Hardware Compatibility List представлений список сумісних HBA адаптерів, SAN свічів | + Підтримується бекап по SAN як для ESXi так і для Hyper-V хостів | + Необхідно додаткова фізична машина з роллю виділеного проксі сервера Veeam, підключеного до тієї ж мережі SAN і презентованих LUN | Підтримка моментальних знімків тільки в VMware vSphere для сховищ NetApp з Data ONTAP |
Реплікація резервних копій в кілька сховищ (в тому числі на віддалену майданчик) | + | + | + | + |
Підтримка гранулярного відновлення додатків і БД | Microsoft SQL / Exchange / AD | Microsoft SQL / Exchange / AD / Domino / DB2 / MySQL / Oracle | Microsoft SQL / Exchange / AD / Oracle (Тільки для віртуалізованих додатків, що не підтримується на фізичних системах) | Microsoft SQL / Exchange / AD |
Управління апаратними знімками СГД | + | + (IntelliSnap) | + (Список підтримуваних вендорів і моделей СГД їсть ь на сайті, для деяких необхідна установка окремого модуля інтеграції) | + |
Ліцензування для середовищ віртуалізації | Хост / сокет / Обсяг даних | Сокет / Обсяг даних | На сокет (процесор) | на хост |
Вартість 1 ліцензії (орієнтовано) | Від 85 тис. Р. | 190 тис. Р. | 70 тис. Р. (Редакція Standard), 200 тис. Р. (Редакція Enterprise Plus) | 45 тис. Р. (Редакція Standard), 95 тис. Р. (Редакція Advanced) |
Як ви бачите, функціонал і вартість ліцензій для кожного продукту досить сильно відрізняється. Тому перед прийняттям рішень про вибір того чи іншого рішення варто скласти список вимог до продукту резервного копіювання Hyper-V, список наявного обладнання та необхідний функціонал. У більшості відомих продуктів резервного копіювання є безкоштовні версії з деякими обмеженнями, зазвичай їх досить для оцінки функціонала.