Резервное копирование и восстановление виртуализованного Microsoft Exchange с помощью Veeam Backup & Replication
После того, как вы перевели Exchange на виртуальные рельсы, пора приступать к резервному копированию, а в случае необходимости — к восстановлению. Сегодня я вкратце расскажу, как это можно сделать с помощью Veeam Backup & Replication 8.0, а также поделюсь ссылками на источники более подробной информации.
Для того, чтобы создать корректную резервную копию с учетом работы приложения (в нашем случае речь пойдет о Exchange), в задании резервного копирования нужно активировать соответствующую настройку — application-aware processing. Тогда при выполнении задания последуют шаги, необходимые для создания консистентного бэкапа. Вкратце, будет происходить следующее: Veeam проанализирует гостевую файловую систему обрабатываемой виртуальной машины на предмет наличия работающего приложения, чтобы уяснить, что нужно бэкапить с использованием VSS (либо других способов «заморозки» приложения и гостевой ОС). Если будет использоваться не VSS, то перед «заморозкой» Veeam может запустить скрипт, который вы укажете. Выполняется «заморозка». Создается снапшот виртуальной машины. Выполняется «разморозка». Если был указан скрипт, который надо выполнить после «разморозки», Veeam запустит его. Происходит передача данных резервной копии и коммит снапшота. В завершение выполняется транкейт лога (используется VSS.) Более подробно о создании консистентных резервных копий можно почитать здесь или здесь (на англ. языке) или пост «Замораживание» виртуальных машин для получения непротиворечивых резервных копий».Примечание: При определенных условиях для бэкапа Exchange может быть применена технология создания снапшота Microsoft VSS Persistent Snapshot, но об этом в другой раз.
Итак, сегодня мы настраиваем задание резервного копирования, которое будет процессить наш Exchange с помощью Microsoft VSS:
Запустив мастер задания (например, выбрав для задания команду Edit) и дойдя до шага Guest Processing, зачекиваем галку Enable application-aware processing. Далее в секции Guest OS credentials указываем учетную запись для доступа к гостевой ОС.
Нажимаем Applications, выбираем в списке наш Exchange сервер и нажимаем Edit, чтобы указать, какие опции хотим применять при процессинге приложения и лога. Сначала идём в секцию Applications на вкладке General:
Рекомендуемая опция для нашего приложения — Require successful processing. Если ее выбрать, то процесс резервного копирования пойдет по своим шагам при успешной работе VSS, в противном случае резервное копирование будет остановлено. (Можно, конечно, выбрать Try application processing, but ignore failures –, но в случае ошибки VSS такое решение приведет к созданию лишь crash-consistent бэкапа, а это не совсем то, к чему мы стремимся.)
Переходим к секции Transaction logs. Здесь мы должны указать, что делать с логами (журналами транзакций), если бэкап успешно завершен. Логика такая: Если выбрано Process transaction logs with this job — то процесс ориентируется на бэкап, сделанный Veeam: в случае успешного бэкапа на гостевой файловой системе будет выполнен log truncation, в противном случае нет (логи будут сохранены). А если выбрано Perform copy only — то в ходе резервного копирования для создания снапшота будет использоваться метод VSS_BS_COPY (флаг COPY ONLY); логи останутся нетронутыми, при необходимости их можно обрабатывать сторонними приложениями (не Veeam). Жмем на ОК для сохранения настроек, возвращаемся к шагу мастера и завершаем его. В ситуации послеаварийного восстановления сервера Exchange можно использовать Instant VM Recovery, которая позволяет восстановить виртуальную машину в рабочее состояние буквально за минуты. Для этого задействуется технология Veeam vPower — она позволяет запустить виртуальную машину прямо из сжатого и дедуплицированного бэкапа. То есть нет нужды вытаскивать бэкап из репозитория, копировать его на производственную СХД, и прочая, и прочая — вместо этого Veeam дает доступ к файлам виртуальной машины в репозитории, монтируя диск на Veeam backup server (который обычно служит и сервером для работы vPower NFS). Саму виртуальную машину можно затем включить и начать использовать, пока, например, чинится исходная машина — это позволит не прерывать работу конечных пользователей. Пространство на локальном диске используется как временная область для записи — туда пишутся все изменения, пока машина работает из резервной копии.Мастер восстановления запускается по команде меню Restore. Выбираем, что хотим делать –, а именно, Instant VM recovery:
Проходим по шагам мастера восстановления:
Сначала выбираем нашу виртуальную машину, которую будем восстанавливать. Затем выбираем точку, на которую хотим восстановиться (Restore Point), и режим восстановления (Restore Mode). На шаге Restore Reason указываем причину, по которой делаем восстановление (может понадобиться в случае аудита) и переходим на шаг Ready to Apply, где можно выбрать еще 2 опции: Connect VM to network (подключить виртуальную машину к сети) и Power on VM automatically (автоматически включить виртуальную машину). Таким образом, по завершении восстановления виртуальная машина будет готова к использованию.
Примечание: UI мастера восстановления для разных платформ виртуализации (VMware и Hyper-V) будет немного различаться, но общее описание и опции примерно одинаковые.
После нажатия кнопки Next Veeam выполнит операции восстановления с указанными настройками, используя СХД NFS (в случае VMware) или соответствующий драйвер (в случае Hyper-V), чтобы запустить виртуальную машину прямо из файла резервной копии.В заключение выполним миграцию машины обратно на производственную СХД, используя Storage vMotion либо Live Migration (от производителей платформ виртуализации) или собственный функционал Veeam Quick Migration (только для VMware).Более подробнее про Instant VM Recovery можно почитать здесь.
Хотя Instant VM Recovery — штука мощная, использовать его не всегда удобно. Например, бывают случаи, когда нужно восстановить одно утерянное почтовое сообщение — не поднимать же для этого из бэкапа целиком сервер со всей базой! На помощь в этой ситуации приходит инструмент Veeam Explorer for Microsoft Exchange (поддерживает Exchange 2010 SP1 и выше). С его помощью можно восстановить только нужный объект (письмо, календарь или задачу). Подробнее об отличиях универсального восстановления от гранулярного можно почитать в этом посте на Хабре: «Гранулярное восстановление объектов виртуализованных приложений».Выбираем из меню Home команду Restore для нужной платформы, затем выбираем Application items. Далее указываем, для какого именно приложения мы хотим восстановить объект — в нашем случае это Microsoft Exchange.
Запустится мастер восстановления Microsoft Exchange Item Level Restore wizard. В нем мы выберем наш Exchange Server и точку, на котору хотим восстановиться (Restore Point). При необходимости указываем, для чего понадобилось восстановиться (Restore Reason). После этого автоматически открывается Veeam Explorer for Microsoft Exchange, который представит вашему вниманию содержимое mailbox datastore (.EDB) для забэкапленного Exchange сервера.С помощью этого инструмента можно просматривать содержимое mailbox datastore, выполнять поиск нужных писем, заданий или заметок календаря.
Найдя нужный объект, кликаем по нему правой кнопкой или используем команды меню, чтобы выбать, как же именно мы будем его восстанавливать (отправим почтой, восстановим на сервер и т.д.).
Отметим, что Veeam Explorer for Microsoft Exchange поддерживает восстановление «жестко удаленных» (hard-deleted) объектов и архивных мейлбоксов (Online Archive mailboxes) во всех редакциях Veeam Backup & Replication 8, включая бесплатную Free Edition. Восстановление на Exchange server поддерживается для коммерческой версии, в бесплатной же доступны восстановление путем сохранения в .MSG, экспорта в .PST и отправки по email в виде прикрепленного файла.
Более подробное описание инструмента см. в What«s New и в руководстве по работе с Veeam Explorers (на англ. языке), а также по ссылкам ниже.