среда, 1 февраля 2017 г.

VMware ESXi: Перенос гипервизора с одного USB-накопителя на другой, резервирование и восстановление

Гипервизор VMware vSphere ESXi в целях экономии может быть установлен на USB-накопитель. Чтобы не быть застигнутым врасплох в случае сбоя или выхода из строя флэшки, рекомендуется единовременно или периодически снимать образ гипервизора. Имея такой бэкап, можно в краткие сроки восстановить работу виртуальной среды.

Создание образа:
1. Подключаемся по SSH на нужный ESXi-хост или включаем командую строку в консоли.
2. Выясняем, как называется USB-устройство, на котором находится гипервизор:
"ls -l /dev/disks". Вероятнее всего у вас оно будет называться: "mpx.vmhba32:C0:T0:L0".
3. Находим полный путь к каталогу, куда будет сохранен образ. Проверяем подключённые тома командой: "ls -l /vmfs/volumes/". Далее в полном пути будем использовать GUID диска.
4. Создаем образ:

dd if=/dev/disks/mpx.vmhba32:C0:T0:L0 of=/vmfs/volumes/5860f072-c8fada20-90bf-1402ec84e0d8/BackupESXi/esxi.img bs=1M

где "/dev/disks/mpx.vmhba32:C0:T0:L0" - путь к USB-устройству с гипервизором;
"/vmfs/volumes/5860f072-c8fada20-90bf-1402ec84e0d8/BackupESXi/esxi.img" - полный путь к файлу образа;
"bs=1M" - параметр утилиты "dd", определяющий размер блока при копировании.

Восстановление образа:
Необходимо производить, используя другой компьютер и ОС семейства Linux. Например, прекрасно подойдет Debian Live CD. Команда для восстановления будет выглядеть примерно так:

dd if=/tmp/esxi.img of=/dev/sdb bs=1M

где "esxi.img" - образ гипервизора, скопированный с ESXi;
"sdb" - название целевого USB-устройства в ОС Linux.

Внимание!!! Использование для восстановления образа различных утилит под ОС Windows может приводить к ошибке загрузки гипервизора:

BANK5: invalid configuration
BANK6: not a VMware boot bank
No hypervisor found.


Настройка регулярного резервирования: 
Бэкап образа можно организовать с помощью планировщика "cron". Добавьте следующее содержимое в файл "/etc/rc.local.d/local.sh" перед строкой "exit 0":

/bin/kill $(cat /var/run/crond.pid)
/bin/echo '30 1 1 * * dd if=/dev/disks/mpx.vmhba32:C0:T0:L0 bs=1M | gzip > /vmfs/volumes/57bff6a8-b6fa57b0-56d3-9cb65496b448/BackupESXi/esxi.img.gz' >> /var/spool/cron/crontabs/root
/usr/lib/vmware/busybox/bin/busybox crond

Первая строка находит и убивает процесс планировщика. Во второй мы добавляем задание в конфигурационный файл крона ("30 1 1 * *" означает выполнять первого числа каждого месяца в 1:30, можно установить своё время). Команда создания образа такая же, как рассматривалась выше, за исключением того, что вдобавок используется "gzip" для сжатия файла с целью экономии пространства на диске. И последнее действие: запуск планировщика.
Далее выполните встроенный скрипт "auto-backup.sh" в консоли гипервизора и перегрузите ESXi.
Чтобы обойтись без перезагрузки, в консоли выполните три команды, которые уже внесли в файл "/etc/rc.local.d/local.sh".
После всех изменений проверьте, корректно ли ваше задание было добавлено в конец файла  "/var/spool/cron/crontabs/root".

3 комментария:

  1. В ESXi есть встроенный механизм для бекапа конфигурации (когда недоступны Host Profiles), восстанавливать надо на ту же версию сборки:
    http://www.vladan.fr/backup-restore-esxi-configuration-powercli/
    http://www.virtuallyghetto.com/2013/02/how-to-backup-restore-free-esxi-host.html

    ОтветитьУдалить
  2. Этот комментарий был удален автором.

    ОтветитьУдалить
  3. Бэкап конфигурации не включает в себя множество модулей, которые устанавливаются дополнительно в гипервизор при конфигурировании такого ПО как EMC RecoverPoint, PowerPath и т.п. При восстановлении придется все это делать руками, что может занять достаточно много времени и усложнит процесс. Запись образа на флэшку 8Гб занимает примерно 20-30 мин. Если у вас "голый" ESXi, бэкапом конфигурации вполне можно обойтись.

    ОтветитьУдалить