Резервное копирование данных и восстановление систем после сбоев является критически важным процессом для ИТ-инфраструктуры организации. Компания VMware предлагает простой и эффективный механизм, решающий задачи резервного копирования – фрэймворк VMware Consolidated Backup (VCB).
VCB используется для создания резервных копий виртуальных машин отдельных серверов VMware ESX Server, а также работает в совокупности со средством управления виртуальной инфраструктурой VMware VirtualCenter. Поскольку VCB является всего лишь фрэймворком для резервного копирования в виртуальной инфраструктуре, требуется либо использование ПО для резервного копирования сторонних производителей для автоматизации задач архивирования (которые поддерживают средства VCB), либо вручную писать сценарии командной строки, добавляя их в планировщик задач Windows.
VCB реализует следующие возможности:
- Создание архивных копий виртуальных машин посредством специального прокси-сервера VCB, который снимает нагрузку по созданию резервных копий с серверов производственной сети LAN за счет операций непосредственно в сети хранения данных SAN.
- Не требует установки дополнительных агентов на серверы ESX и в гостевые ОС.
- Предоставляет широкие возможности по интеграции с продуктами сторонних производителей средств резервного копирования. При этом поддержка многих пакетов уже встроена в VCB (а кроме того и, наоборот, эти продукты имеют VCB-поддержку). К ним относятся: Symantec Backup Exec, Veritas NetBackup, Tivoli Storage Manager, EMC Networker, CA BrightStor ARCServe, Commvault Galaxy.
Итак, как же работает VMware Consolidated Backup?
На картинке представлена схема резервного копирования VCB:
Что означает эта схема? Означает она то, что, поскольку виртуальные машины (то есть их виртуальные диски и файлы конфигурации) находятся на общем хранилище, есть возможность сделать мгновенный снимок файлов виртуальных дисков и скопировать их на прокси-сервер (или смонтировать тома гостевой ОС). Далее резервную копию виртуальной машины или ее файлы с прокси-сервера VCB можно скопировать на архивный носитель, например, ленточную библиотеку.
Как это делается: VCB заставляет ESX Server сделать снапшот виртуальной машины в то время, когда она запущена. Таким образом из одного файла виртуального диска на время получается два – один сохранил свое состояние на момент снимка, второй же накапливает все изменения виртуального диска, пока первый файл выкачивается прокси-сервером. Как только файл виртуального диска скачался на прокси-сервер, эти два файла на системе хранения снова сливаются в один.
На прокси-сервере VCB мы получаем полноценную резервную копию виртуальной машины, при этом в процессе создания копии не загружается сеть производственной среды LAN, поскольку снапшот делается на системе хранения и по Fibre Channel или iSCSI загружается на прокси-сервер. Серверы ESX также нагрузки не испытывают, поскольку все делается только на уровне хранилища, не затрагивая серверную часть, поэтому бэкап виртуальных машин можно делать в течение дня, а не только в периоды наименьшей нагрузки.
После того, как копия виртуальной машины попала на прокси-сервер VCB, ее можно отправить уже на ленточную библиотеку или другое хранилище.
Теперь, как работает VMware Consolidated Backup. Перед тем, как приступить к созданию резервных копий виртуальных машин, необходимо установить фрэймворк VCB на прокси-сервер (обязательно под управлением ОС Windows 2003 Server SP1 или R2), который подключен к системе хранения и видит те же самые LUN, что и серверы VMware ESX (если настроено зонирование, прокси-сервер VCB добавляют в те же зоны, что и серверы ESX).
Далее на прокси-сервере необходимо сделать следующее:
- У VCB есть требование – необходимо отключить автоматическое назначение букв дисков для обнаруживаемых томов в Windows. Для этого с помощью утилиты Diskpart (cmd->diskpart) последовательно выполняем команды:automount disable
automount scrub - убеждаемся, что есть разрешения на доступ к VMware VirtualCenter по 443 порту, а к серверам VMware ESX по 902 порту
- убеждаемся, что на диске прокси-сервера есть достаточно свободного места для хранения полноразмерной копии виртуальной машины.
Теперь можно приступать к созданию резервной копии виртуальной машины. Запускаем командную строку и переходим в папку C:\Program Files\VMware\VMware Consolidated Backup Framework командой cd.
Производим снятие полной резервной копии виртуальной машины vm1 в сети хранения данных SAN на уровне образов при взаимодействии с сервером vc1 VirtualCenter с именем пользователя vc и паролем pass. Резервная копия помещается в каталог d:\backup прокси-сервера VCB. Создаваемые резервные копии виртуальных дисков являются монолитными (не разбиваются на части в 2 Гб, флаг –M 1) и не сжимаются (флаг –F 1).
vcbMounter -h vc1 -u vc –p pass -a Name:vm1 -r d:\backup\ -t fullvm –M 1 –F 1
Надо отметить, что папку d:\backup заранее создавать не нужно – VCB сам создаст ее.
Теперь копируем машину на ресурс хранения и удаляем резервную копию с прокси-сервера командой:
vcbMounter -h vc1 -u vc -p pass -U d:\backup\
Теперь сделаем то же самое, но на уровне файлов гостевой ОС:
vcbMounter -h vc1 -u vc -p pass -a Name:vm1 -r d:\backup\ -t file
Отличие этого способа от предыдущего в том, что диск виртуальной машины не копируется на прокси-сервер, а просто монтируется на него в папку d:\backup. Забираем нужные файлы из этой папки и удаляем точки монтирования:
vcbMounter -h center -u vc -p pass -U d:\backup\
Теперь, как восстановить виртуальную машину на VMware ESX Server.
Для восстановления полной резервной копии виртуальной машины необходимо сделать следующее:
- Открыть файл .vmx резервной копии в текстовом редакторе и удалить суффикс «-NNNNNN», который автоматически назначен именам VMDK-файлов, на которые ссылается vmx-файл.
- Переименовать VMDK-файлы резервной копии, удалив префиксы «scsiN-N-N-» и суффиксы «-xNNN». Таким образом, имена VMDK-файлов должны совпадать с именами, указанными в файле .vmx.
- Изменить индексный VMDK-файл (файл без суффикса «-xNNN»), в котором находятся ссылки на другие VMDK, в текстовом редакторе, приведя в соответствие указанные в нем имена VMDK-файлов c получившимися именами.
Это нужно для того, чтобы резервная копия виртуальной машины была восстановима, поскольку VCB сознательно или несознательно допускает ошибки при создании резервной копии.
После этого с помощью VMware Converter открывается резервная копия виртуальной машины и происходит ее восстановление в требуемое место иерархии VirtualCenter или ESX Server.
Автор: Александр Самойленко
One Comment