Донецкий техникум промышленной автоматики

Створення резервних копій віртуальних машин

  1. Загальні відомості про резервне копіювання даних
  2. Копіювання та відновлення віртуальних машин на платформі VMware ESX Server
  3. Резервне копіювання за допомогою Vizioncore esxRanger
  4. Створення резервних копій віртуальних машин на платформі Microsoft Virtual Server
  5. Використання служби Volume Shadow Service
  6. Резервне копіювання віртуальних машин Xen
  7. Висновок

Багато підприємств, а також домашні користувачі все частіше і частіше використовують віртуальні машини для виконання різного роду завдань і підвищення ефективності своєї діяльності. Якщо раніше віртуальні машини застосовувалися, в основному, ентузіастами, то тепер якість настільних і серверних платформ віртуалізації дозволило використовувати їх професіоналам в великих масштабах. Можливість запуску декількох віртуальних систем на одному фізичному комп'ютері має безліч переваг, серед яких: економія на апаратному забезпеченні, спрощення обслуговування і зниження витрат на електроенергію у великих датацентрах. Крім того, важливою перевагою віртуальних машин є їх проста переносимість на іншу фізичну платформу і проста процедура їх резервного копіювання. Але також як і звичайні операційні системи, віртуальні середовища вимагають високої уваги до створення резервних копій критично важливих даних. При роботі віртуальних машин у виробничому середовищі підприємства багато компаній планують цілі стратегії по архівації та відновлення віртуальної інфраструктури після збоїв, які отримали назву Disaster Recovery.

Багато постачальників комерційних платформ віртуалізації пропонують корпоративним користувачам вбудовані засоби архівації віртуальних машин, такі як VMware Consolidated Backup (VCB) для платформи ESX Server. Однак в секторі SMB (Small and Medium Business), де число використовуваних віртуальних машин невелика, практично відсутні надаються виробником платформ кошти резервного копіювання. Внаслідок цього, невеликим компаніям доводиться залучати системних адміністраторів для написання різних скриптів, а також використання стандартних утиліт операційних систем, що забезпечують архівацію і відновлення файлів і папок з життєво важливими даними.

Загальні відомості про резервне копіювання даних

Одночасно з процесом планування віртуальної інфраструктури необхідно також ініціювати процес по розробці плану архівації та відновлення після збоїв (Disaster Recovery Plan). Перш за все, потрібно виділити найбільш критичні елементи ІТ-інфраструктури, які потенційно схильні до пошкоджень з боку внутрішніх і зовнішніх джерел, таких як відключення електроживлення, несправності жорстких дисків, вірусна загроза і інші. Після цього, необхідно продумати частоту резервного копіювання віртуальних машин різних категорій залежно від ступеня критичності. Віртуальні продакшен-сервера компанії, які працюють в режимі повної публічної доступності, повинні архівувати досить часто і регулярно і мати властивість швидкої восстанавливаемости в разі збою. Внутрішні сервера організації, які не потребують такого високого уваги і швидкого відновлення, можуть архівувати рідше, з більшим часом відновлення. Потім потрібно визначити, які пристрої зберігання будуть використовуватися для архівації (IDE або SCSI диски інших серверів, пристрої SAN і т. П.).

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

  • Звичайна (повна) архівація (full backup)
    При цьому типі архівації створюється повна копія всіх даних, що зберігається. Процес створення такої резервної копії досить тривалий, проте вимагає не так багато часу на відновлення, оскільки не потрібно виконувати кілька завдань відновлення. Повна архівація скидає маркери архівації файлів і папок, які використовуються для визначення того, які файли слід копіювати. Ці маркери застосовуються для перевірки станів файлів при додаткової і разностной архівації.
  • Додаткова архівація (incremental backup)
    Цей вид архівації має на увазі копіювання файлів і папок, які змінилися з часу створення останньої резервної копії. Тому, якщо послідовно виконати дві додаткових архівації і не змінювати файл між ними, в образ відновлення він доданий не буде.
  • Разностная архівація (differential backup)
    Така архівація включає в себе всі зміни, що відбулися в файлах і папках, з часу останнього повного архівації. Відповідно, при двох послідовних різницевих архівації файл, який не змінився між ними, але змінився з часу останнього повного архівації буде поміщений в архів обидва рази.

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

Це, звичайно ж, не всі типи архівації, які можуть бути використані при резервному копіюванні даних, однак перераховані види - одні з найбільш часто використовуваних. Очевидно, що для серверів з високою критичністю до часу відновлення доцільніше використовувати разностную архівацію в комбінації з повною, ніж додаткову. Перша підійде для зовнішніх серверів організації, друга - для внутрішніх, яким дозволено більше часу простою.

Оскільки, в основному, віртуальна машина являє собою папку з файлами, то можна застосовувати вбудовані засоби резервного копіювання хостовой операційної системи, в разі якщо використовується платформа віртуалізації поверх хостовой системи така як, наприклад Microsoft Virtual Server або VMware Server. У Microsoft Windows для цих цілей можна застосовувати утиліту ntbackup. При використанні bare-metal платформ (класу «голе залізо»), таких як ESX Server або Virtual Iron, необхідно скористатися засобами виробника системи віртуалізації або продуктами сторонніх розробників.

Крім того, резервне копіювання віртуальних машин може здійснюватися шляхом створення образів гостьових систем за допомогою програмного забезпечення, такого як Acronis True Image. Варто відзначити також, що бувають ситуації, коли необхідно здійснити архівацію не всієї віртуальної машини, а деяких даних в гостьовій системі. В цьому випадку, при написанні пакетних сценаріїв архівації можна використовувати утиліти для монтування віртуальних дисків в хостовую систему. Для платформ VMware такий утилітою є додаток VMware Disk Mount.

Копіювання та відновлення віртуальних машин на платформі VMware ESX Server

Пілотний продукт компанії VMware, платформа ESX Server, є ключовим елементом віртуальної інфраструктури у виробничому середовищі підприємства. Віртуальна інфраструктура VI3 (Virtual Infrastructure 3) являє собою сукупність продуктів і засобів, що дозволяють парку віртуальних машин ефективно виконувати свої завдання і безперебійно функціонувати в різних умовах, включаючи такі форс-мажорні чинники як різкі сплески навантаження, відключення живлення і псування устаткування. Одним з найважливіших засобів по реалізації стратегії Disaster Recovery є засіб резервного копіювання VMware Consolidated Backup (VCB). VCB може використовуватися для створення резервних копій окремих ESX-серверів, а також в сукупності із засобом управління парками віртуальних серверів VMware Virtual Center. VCB надає реалізує наступні можливості:

  • створення архівних копій віртуальних машин з різним типом архівації за допомогою спеціального проксі-сервера VCB Proxy Host, який знімає навантаження зі створення резервних копій з production-сервера компанії, де запущені віртуальні машини
  • не вимагає установки додаткових агентів на ESX-сервери
  • надає широкі можливості по інтеграції з продуктами сторонніх виробників засобів резервного копіювання, підтримка різних пакетів вже вбудована в VCB
  • підтримує архівацію на рівні файлів для гостьових систем Windows (можна створювати архівні копії окремих файлів і папок всередині гостьової системи), а також архівацію на рівні образів віртуальних машин для будь-яких гостьових ОС

Створення резервних копій віртуальних машин за допомогою VCB відбувається шляхом створення миттєвих знімків віртуальних машин без зупинки їх роботи. VCB підтримує також мережі зберігання SAN. Якщо віртуальні машини розташовані на пристрої зберігання SAN, процедура резервного копіювання виглядає наступним чином:

Процедура копіювання віртуальних машин за допомогою VCB

Створені в процесі роботи знімки станів віртуальних машин за допомогою агента, розташованого на проксі-сервері VCB зберігаються на резервному носії, звідки потім можуть бути відновлені в разі збою запущеної гостьової системи або псування устаткування. В цьому випадку, бекап-агент має прямий доступ до логічних одиниць LUN (Logical Unit Number) в пристроях SAN. Для мереж SAN кошти VCB підтримують протокол Fibre Channel, а також стрічкові носії для збереження архівних копій. VCB тісно використовує можливості VMware Tools, запущених всередині гостьової системи, для створення резервних копій даних гостьовий ОС.

VMware Consolidated Backup на даний момент підтримує наступні пакети (список включає в себе тільки офіційно відтестувати ПО з продуктом ESX Server):

  • Symantec Backup Exec 10.0
  • Symantec Backup Exec 10d
  • Veritas Netbackup 5.0
  • Veritas Netbackup 5.0 MP4
  • Veritas Netbackup 5.1
  • Veritas Netbackup 5.1 MP2
  • Veritas Netbackup 5.1 MP3
  • Veritas Netbackup 6.0
  • Tivoli Storage Manager v 5.2.1
  • Tivoli Storage Manager v 5.2.3
  • Tivoli Storage Manager v 5.3
  • EMC Networker v 7.0
  • EMC Networker v 7.1.x
  • EMC Networker v 7.2
  • EMC Networker v 7.3
  • CA BrightStor ARCServe r11
  • CA BrightStor ARCServe r11.1
  • CA BrightStor ARCServe r11.5
  • Commvault Galaxy v 5.9
  • Commvault Galaxy v 6.1

Роботу зі створення архівних копій віртуальних машин в загальному випадку можна уявити так:

  1. Програмне забезпечення для створення резервних копій запускає сценарій підготовки до архівації, який виконує наступні завдання:
    • переконується в тому, що всередині гостьової системи не відбуваються операції читання-запису в зберігаються папки і файли (тільки для гостьових ОС Windows)
    • перемикає віртуальну машину в режим «снапшотов», створює знімок стану віртуальної машини і робить його доступним для програми, що використовує VCB
    • монтує знімок віртуальної машини з SAN на проксі-сервер
  2. Проводиться створення резервної копії знімка віртуальної машини на рівні образу, або на рівні файлів і папок гостьової системи (повне, разностное або инкрементальное копіювання).
  3. ПО для архівації викликає post-backup сценарій, який завершує резервне копіювання (демонтує знімки віртуальних машин з проксі-сервера і виводить віртуальну машину з режиму знімка).

У процесі створення резервних копій кошти VCB використовують компоненти віртуальної інфраструктури, представлені нижче:

Структура рішення VMware Consolidated Backup

Підводячи підсумки можна сказати, що VMware Consolidated Backup являє собою потужний засіб для створення резервних копій віртуальних машин і дає можливість застосовувати стандартне ПО резервного копіювання, що використовується в організації для створення архівних копій даних.

Резервне копіювання за допомогою Vizioncore esxRanger

Продукт esxRanger компанії Vizioncore, контрольованої зараз компанією Quest Software, на даний момент є одним з найбільш популярних рішень для створення архівних копій віртуальних машин на платформі ESX Server. esxRanger не вимагає установки ніяких додаткових агентів на сервери ESX і створює архівні копії віртуальних машин з одного сервера або групи серверів за рахунок інтеграції з продуктом Virtual Center. Процес створення резервних копій відбувається на одному Windows-сервері, звідки архівні образи віртуальних систем можуть бути збережені на різних пристроях зберігання у виробничому середовищі організації.

esxRanger володіє як GUI-інтерфейсом, так і інтерфейсом командного рядка, що дозволяє використовувати звичайний планувальник завдань Windows для запуску робіт резервного копіювання за розкладом, що скасовує необхідність написання додаткових скриптів. Головне вікно продукту esxRanger представлено нижче:

Головне вікно esxRanger

Підключившись до VMware Virtual Center, при наявності відповідних дозволів, можна вибрати окремі віртуальні машини серверів датацентру для резервного копіювання. Копійовані образи автоматично стискаються при архівації та розпаковуються при відновленні, що дозволяє економити час системним адміністраторам.

esxRanger інтегрується з VMware Consolidated Backup при використанні в мережах зберігання даних SAN і дозволяє створювати повні або диференціальні копії віртуальних машин, а також окремих файлів і папок в гостьових ОС Windows. Крім того, в процесі резервного копіювання esxRanger збирає різну інформацію про метриках архівації (таких як час, витрачений на архівацію і відновлення), зберігає її в базі даних і дозволяє використовувати її для побудови трендів стратегії Disaster Recovery. На додаток до цього, esxRanger має механізм політик, які дозволяють будувати стратегію архівації даних на основі шаблонів і інтегрувати його з іншими компонентами ІТ-інфраструктури організації, максимально знизивши завантаження системних адміністраторів.

Процедура резервного копіювання за допомогою esxRanger виглядає так:

  1. Створюється точка збереження віртуальної машини і зберігається в базі даних.
  2. За допомогою VMware API відбувається «разлочка» файлів віртуальних дисків на читання (за замовчуванням вони заблоковані) і створення .REDO файлів, які будуть зберігати зміни віртуальних дисків з моменту точки збереження.
  3. Файли віртуальних дисків стискаються.
  4. Відбувається резервне копіювання стислих файлів і застосування .REDO файлів до VMDK файлів віртуальних машин.
  5. Після того, як зміни будуть застосовані, VMDK файли повертаються у вихідне заблокований статус.
  6. Системний адміністратор додає коментарі до архівних копій віртуальних машин, що містять вказівки на випадок збою віртуальних машин.

В цілому, esxRanger є зручним, надійним і простим у використанні засобом створення архівних копій віртуальних машин в Virtual Infrastructure 3, яке має можливості інтеграції з VMware Consolidated Backup, що дозволяє використовувати його в мережах зберігання даних SAN компаній будь-якого масштабу.

Створення резервних копій віртуальних машин на платформі Microsoft Virtual Server

На жаль, компанія Microsoft, що являє власником і розробником продукту для віртуалізації серверів Virtual Server 2005, не надає користувачам настільки могутнього засобу резервного копіювання та відновлення, як VMware Consolidated Backup. В даний момент, Microsoft зосередилася, в основному, на розробці вбудованої в наступну версію платформи Windows Server підтримки віртуалізації на основі гіпервізора під кодовою назвою Viridian. Однак Microsoft постійно відкладає дату остаточного релізу Windows Virtualization, а також зменшує його анонсуються можливості, тому зараз важко щось певне сказати про можливості резервного копіювання в підготовлювану платформі віртуалізації. З досить великою ймовірністю можна сказати, що вбудована підтримка «живий» архівації буде, проте неясно поки в якому вигляді. На сьогоднішній день, резервні копії віртуальних машин в Virtual Server можуть бути створені «двома з половиною способами», що включають в себе:

  • использование стандартних ЗАСОБІВ резервного Копіювання образів операційних систем, Які могут буті створені агентами, что Працюють Всередині гостьовий систем, например, Symantec Backup Exec.
  • написання Спеціалізовані скриптів, Які зберігають стан віртуальної машини, копіюють ее дані на резервний носій и запускають віртуальну машину знову
  • ! застосування служб тіньового Копіювання тому (Volume Shadow Service, VSS), підтримка якіх в Virtual Server з'явилася зовсім недавно и поки НЕ підтрімується виробника систем резервного Копіювання Даних

Для того щоб сделать архівацію запущених віртуальніх машин на платформі Virtual Server можна використовуват ее COM-інтерфейс, написавши сценарій, например, с помощью Visual Basic Scripting (vbs). При створенні резервної копії віртуальної машини та патенти спочатку перевести ее в Збереження стан (Saved State), потім скопіюваті ее файли в завдань місце І, после цього, знову запустіті ее. Нижчих наведено приклад скрипта на vbs, Який Робить ЦІ необхідні дії для Копіювання однієї віртуальної машини. Його можна запускати за розкладом за допомогою стандартного планувальника завдань Windows. 'Backupvm.vbs' автор: John Savill 'використання: backupvm.vbs Option Explicit On Error Resume Next Dim objFSO , objVirtualServer, objVM, objSaveTask, objVHD' З'єднання з об'єктом файлова система set objFSO = CreateObject ( "Scripting.FileSystemObject") 'З'єднання з Virtual Server set objVirtualServer = CreateObject ( "VirtualServer.Application") 'Пошук віртуальної машини set objVM = objVirtualServer.FindVirtualMachine (WScript.Arguments (0))' збереження стану віртуальної машини set objSaveTask = objVM.Save 'Пауза для виконання операції збереження while not objSaveTask.isComplete WScript.Sleep тисячі wend 'Копіювання віртуальних дисків і UNDO-дисків for each objVHD in objVM.HardDiskConnections If objFSO.FileExists (objVHD.HardDisk.file) Then' Wscript.Echo objVHD.HardDisk.file & "" & WScrip t.Arguments (1) objFSO.CopyFile objVHD.HardDisk.file, WScript.Arguments (1) End If If objFSO.FileExists (objVHD.undoHardDisk.file) Then 'Wscript.Echo objVHD.undoHardDisk.file & "" & WScript. Arguments (1) objFSO.CopyFile objVHD.undoHardDisk.file, WScript.Arguments (1) End If Next 'Копіювання vsv і vmc файлів objFSO.CopyFile objVM.File, WScript.Arguments (1) objFSO.CopyFile objVM.SavedStateFilePath, WScript. Arguments (1) 'Запуск віртуальної машини objVM.Startup

Цей скрипт необхідно використовувати таким чином:

C: emp> cscript backupvm.vbs

Потрібно відзначити, що компанія Microsoft офіційно не підтримує такий процес створення резервних копій, оскільки цілісність віртуальної машини, скопійований в збереженому стані, може бути порушена через те, що частина її пам'яті не зберігається в цьому випадку в файлах vsv і vhd.

Використання служби Volume Shadow Service

Підтримка служб VSS з'явилася в недавно вийшов релізі Virtual Server 2005 R2 SP1. Використання служб тіньового копіювання в Virtual Server передбачає створення резервних копій запущених віртуальних машин за рахунок створення образів, що має суттєво спростити і прискорити процедуру резервного копіювання та відновлення. Однак недостатньо, щоб програмне забезпечення для резервного копіювання підтримувало VSS, необхідно також, щоб воно підтримувало ще й новий Virtual Server VSS Writer Service (VS Writer), виявити підтримку якого, на даний момент, не вдалося ні в однієї з систем архівації. Відповідно до інформації Microsoft, засоби резервного копіювання можуть використовувати VS Writer для архівації та відновлення віртуальних машин наступним чином: вони нотифікує Virtual Server про те, що процес архівації почався, Virtual Server відповідає на це створенням знімка віртуальної машини, після чого починається процес копіювання. На даний момент утиліта NTBackup також не підтримує цей механізм.

Резервне копіювання віртуальних машин Xen

Компанія XenSource, що займається підтримкою Open-Source проекту Xen, а також поширенням комерційної платформи віртуалізації XenEnterprise, пропонує не так багато варіантів архівації віртуальних машин на платформі Xen. Один з них наведено нижче з використанням пристроїв зберігання даних в файлової системі NFS (Network File System).

Вихідна інформація:

  • Хост XenServer (в прикладі процедури бекапа його IP 192.168.1.10)
  • Комп'ютер, який використовується в якості сервера зберігання архівних копій (в прикладі його IP 192.168.1.1)
  • Віртуальна машина XenVM (в прикладі її IP 192.168.1.12)

Процедура резервного копіювання:

  1. Встановіть NFS сервер шляхом додавання в файл / etc / exports наступного рядка:
    / * (Rw, sync, no_root_squash)
  2. На хості XenServer пропишіть в файл / etc / xen / xmexample1 наступне:
    kernel / boot / xenkernel
    name = "ExampleDomain"
    vif = [ '']
    root = / dev / nfs
    nfs_server = '192.168.1.1'
    nfs_root = '/ ip = 192.168.1.10: 192.168.1.1: 192.168.1.1: 255.255.255.0 :::'
  3. Збережіть копію файлу / etc / fstab і додайте в нього такі рядки:
    192.168.1.1:rootdevice / nfs rw, hard, intr 1 + 1
    192.168.1.1:swapdevice swap swap defaults 0 0
    192.168.1.1:usrpartition / usr nfs rw, hard, intr 1 + 1
    192.168.1.1:varpartition / var nfs rw, hard, intr 1 + 1
    none / dev / pts devpts gid = 5, mode = 620 0 0
    none / proc proc defaults 0 0
  4. Скопіюйте /lib/modules/2.6.16.29-xen з хоста XenServer на пристрій резервного копіювання
  5. Виконайте наступну команду на сервері архівних копій:
    #scp 192.168.1.10:/lib/modules/2.2.16.29-xen / lib / modules /
  6. Для активації консолі, використовуючи udev, виконайте наступні команди на сервері архівних копій:
    mkdir / tmp / dev
    mount --move / dev / tmp / dev
    sbin / MAKEDEV null console zero
    mount --move / tmp / dev / dev
  7. Виконайте наступну команду для монтування пристрою резервного копіювання на хост Xen:
    #xm create -c xmexample1
  8. Щоб створити резервну копію файлу xenstore-ls і скопіювати вміст файлової системи (за винятком директорій / proc та / sys) в іншу папку:
    #rsync -a -e ssh --exclude = '/ proc / *' --exclude = '/ sys / *' 192.168.1.10:/ / backupdir

Висновок

Складання та реалізація плану резервного копіювання та відновлення після збоїв (Disaster Recover Plan) найбільш важливих серверів і робочих станцій організації є необхідною складовою її діяльності. Віртуальні машини, навіть більше ніж фізичні, вимагають високої уваги до архівації даних, оскільки зазвичай кілька віртуальних систем консолідовано на одному фізичному хості. Провідні виробники платформ віртуалізації прагнуть до того, щоб надати потужні і зручні засоби резервного копіювання, однак на даний момент це вдалося тільки компанії VMware. Стратегію резервного копіювання можна проводити двома способами: один з найпростіших шляхів, робити це в рамках стандартної стратегії по архівації даних в ІТ-інфраструктурі компанії, за рахунок установки в гостьових системах агентів резервного копіювання та створення образів. Інший, більш зручний і швидкий шлях - використання вбудованих засобів платформ, таких як VMware Consolidated Backup або написання скриптів системними адміністраторами. У будь-якому випадку, ніколи не можна забувати, що відмова обладнання або інші форс-мажорні обставини не повинні істотно впливати на критично важливу діяльність компанії.