Надежное резервное копирование VMware ESXi: обеспечьте безопасность своих данных
В этой статье вы узнаете, как безопасно и эффективно создавать резервные копии вашей виртуальной среды на платформе VMware ESXi. Мы рассмотрим все шаги и методы, чтобы вы могли быть уверены в сохранности своих данных.
- Важность резервного копирования
- Как создать резервную копию конфигурации ESXi системы
- Как создать резервную копию данных
- Как настроить автоматическое резервное копирование с помощью скрипта ghettoVCB
- Как настроить NFS хранилище
- Как восстановить данные с помощью Hetman RAID Recovery
- Заключение
- Вопросы и ответы
- Комментарии
Важность резервного копирования
Виртуальные машины часто хранят критически важную информацию, такую как базы данных, почтовые сервера, веб-приложения и многое другое. Потеря данных может привести к серьезным последствиям, таким как простой бизнеса, утрата клиентов и даже юридические проблемы. Резервное копирование позволяет быстро восстанавливать виртуальные машины после сбоев или аварий, минимизируя время простоя системы. Это особенно важно для бизнес-процессов, требующих непрерывной доступности.
При внесении изменений в конфигурацию системы, обновлении программного обеспечения или применении патчей всегда существует риск возникновения проблем. Резервные копии позволяют откатываться к предыдущим состояниям системы в случае неудачных обновлений. Резервные копии облегчают процессы миграции в новое оборудование или масштабирования инфраструктуры. Вы можете легко восстановить виртуальные машины на новых серверах или в облачной среде.
Резервное копирование данных и резервное копирование конфигурации системы представляют собой две важные составляющие стратегии обеспечения безопасности в области информационных технологий.
Резервное копирование данных: фокусируется на сохранении и восстановлении фактических данных, которые хранятся на системе. Это могут быть файлы, базы данных, мультимедийный контент и другие информационные ресурсы.
Резервное копирование конфигурации системы: ориентировано на сохранение настроек и параметров системы, включая конфигурацию операционной системы, параметры приложений, настройки безопасности, сетевые настройки и другие параметры, определяющие функциональность и структуру системы.
Как создать резервную копию конфигурации ESXi системы
Для начала давайте рассмотрим процесс создания резервной копии конфигурации гипервизора ESXi. Самый простой способ создания резервной копии хостовой системы ESXi и восстановление из нее – воспользоваться специальными командлетами инструмента PowerCLI. Для данного способа резервного копирования у вас должен быть установлено расширение vSphere PowerCLI. Я покажу как создать резервную копию на ПК с Windows подключенному к хостовой машине по сети.
Для начала убедитесь, что у вас установлен PowerCLI. Запустите Powershell от имени администратора, далее для установки выполните такую команду:
Install-Module -Name VMware.PowerCLI -Force -AllowClobber
Далее нужно подключится к хосту, для этого выполните следующую команду:
Connect-VIServer -Server 192.168.1.177
В этой команде нужно указать правильный IP адрес хоста.
Чтобы создать резервную копию конфигурации хостового сервера ESXi выполните такую команду:
get-vmhost "192.168.1.177" | get-vmhostfirmware -BackupConfiguration -DestinationPath "D:\BackupESXi"
Правильно укажите IP адрес сервера ESXi и путь куда сохранить файл резервной копии, у меня это диск - D, папка – BackupESXi. После выполнения команды в каталоге - D:\BackupESXi, появится файл, содержащий бэкап конфигурации сервера ESXi. Теперь у нас есть резервная копия конфигурации сервера ESXi, и при любой поломке сервера вы сможете восстановить его конфигурацию с помощью данной копии.
Для восстановления нужно выполнить команду:
Set-VMHostFirmware -VMHost 192.168.1.177 -Restore -SourcePath "D:\BackupESXi\configBundle-192.168.1.177.tgz" -Force
При этом вы должны учитывать один момент, восстановление конфигурации ESXi из бэкапа должно производиться на точно такую же версию ESXi, в противном случае результат не гарантирован.
Как создать резервную копию данных
Что касается виртуальных машин, В VMware vSphere (ESXi), существует несколько способов создания их резервной копии. Далее будут представлены два основных метода: с использованием веб-интерфейса и с использованием утилит командной строки (PowerCLI).
1. Первый способ
Для первого способа воспользуемся веб-панелью. Откройте браузер и введите адрес вашего ESXi-хоста, затем, для входа в систему, логин и пароль администратора. На главной странице выберите вкладку "Virtual Machines" в левой боковой панели.
Найдите нужную виртуальную машину в списке, кликните по ней правой кнопкой мыши и выберите – Snapshot – Take snapshot.
Далее укажите имя и описание снимка, а затем нажмите – Take snapshot.
Вы можете использовать различные опции для управления снимками, такие как восстановление или удаление снимков, а также восстановить прежнее состояние из одного из сделанных ранее снимков.
2. Второй способ
И второй способ сделать снимок виртуальной машины с помощью Powershel и PowerCLI:
Ранее мы уже установили данный инструмент, далее нужно подключиться к серверу ESXi, открываем Powershell и вводим следующую команду:
Connect-VIServer -Server your-esxi-host
Далее для создания снимка нужно выполнить команду:
New-Snapshot -VM "Linux" -Name "LinBackup" -Description "2"
Правильно укажите имя машины, затем имя snapshot и описание.
Вы можете использовать другие командлеты PowerCLI для управления снимками, такие как Get-Snapshot, Remove-Snapshot, и т. д.
Обратите внимание, что создание снимков может потребовать времени и ресурсов. Помните о необходимости регулярного управления снимками, чтобы избежать их накопления и возможных проблем с производительностью хранилища данных.
Как настроить автоматическое резервное копирование с помощью скрипта ghettoVCB
Еще один способ создать резервную копию виртуальной машины с помощью стороннего инструмента GhettoVCB.
GhettoVCB — это скрипт для резервного копирования виртуальных машин в среде VMware ESXi. Он предоставляет гибкий способ создания резервных копий виртуальных машин.
Он похож на инструмент VMware VCB (VMware Consolidated Backup) для выполнения резервного копирования. Рабочий процесс ghettoVCB.sh включает в себя создание моментального снимка виртуальной машины, выполнение резервного копирования, а затем удаление моментального снимка после завершения резервного копирования. Примечательной особенностью сценария является его способность выполнять резервное копирование, пока виртуальная машина находится в сети, без необходимости выключения.
В качестве простого решения резервного копирования для виртуальной машины ESXi, ghettoVCB может каждый раз создавать только полную резервную копию, поэтому, если вы хотите создавать резервные копии только разностных данных или, другими словами, создавать инкрементальные или дифференциальные резервные копии, вам нужны другие решения.
Для использования данного метода загрузите GhettoVCB с официальной страницы GitHub. Нам нужен Source code (tar.gz). Затем нужно включить на хосте ESXi – доступ по SSH и загрузить ghettoVCB на сервер. Чтобы включить SSH, в панели управления, разделе – hosts, кликните по кнопке – actions – Services – enable console shell.
Далее, чтобы загрузить скрипт на сервер перейдите в раздел – Storage и кликните по кнопке - Datastor browser. В открывшемся окне выберите хранилище, на которое будет загружен архив и нажмите кнопку – Upload, затем укажите путь к архиву и нажмите – открыть, после чего начнется загрузка.
По завершении его нужно распаковать, для этого подключитесь к ESXi хосту с помощью SSH клиента, к примеру Putty. Введите IP адрес хоста, а затем логин и пароль администратора.
После успешного входа, перейдите в хранилище данных, куда вы загрузили архив, вводим команду cd и путь:
cd /vmfs/volumes/vmdata/
Далее для распаковки выполните команду:
tar -zxvf ghettoVCB.tar.gz
Правильно укажите имя архива.
После чего на сервере появится рабочая папка со скриптом GhettoVCB.
Создадим специальную папку, где будут хранится резервные копии наших виртуальных машин, назовём к примеру – backup. Помимо локального хранилища можно настроить NFS хранилище. Если у вас есть другой сервер или, к примеру NAS вы можете настроить NFS доступ и сохранить копию на него. Чуть позже для примера я покажу как настроить NFS доступ на Synology NAS.
А сейчас настроим конфигурационный файл ghettoVCB.conf
Для этого открываем его в текстовом редакторе, переходим в папку со скриптом:
cd /vmfs/volumes/vmdata/ghettoVCB-2023_09_29/
И открываем конфигурационный файл в текстовом редакторе:
vi ghettoVCB.conf
Для редактирования нажмите клавишу – i.
Можно исправить некоторые настройки или удалить все и внести только нужные параметры.
VM_BACKUP_VOLUME=/vmfs/volumes/vmdata/backup
DISK_BACKUP_FORMAT=thin
VM_SNAPSHOT_MEMORY=0
VM_SNAPSHOT_QUIESCE=0
ENABLE_HARD_POWER_OFF=0
ITER_TO_WAIT_SHUTDOWN=3
POWER_OFF_VM_SELECTION=0
ENABLE_COMPRESSION=0
VM_SNAPSHOT_CONSOLIDATE=0
ENABLE_NON_PERSISTENT_NFS=0
Для начала указываем путь к папке, где будет хранится бэкап, формат бэкапа - тонкий том. Далее одна из важных настроек — это расписание, я настрою ежедневную резервную копию на 2 часа дня, сделать это можно с помощью параметра CRON.
Добавим переменную CRON_MINUTE=0, задайте цифру от нуля до 59.
И переменную CRON_HOUR=14, от нуля до 23.
После запуска скрипта резервная копия виртуальных машин будет создаваться каждый день в указанное время.
Далее ограничим число сохраняемых копий, к примеру до 5, чтобы они не занимали много места.
Добавим VM_BACKUP_ROTATION_COUNT=5
Это означает, что ghettoVCB будет хранить максимум 5 резервных копий, и при создании новой резервной копии самая старая, превышающая это количество, будет удалена. Теперь сохраним изменения, для этого жмем – Esc, пишем двоеточие wq. (:wq). После можно запустить резервное копирование.
Чтобы проверить конфигурацию, запустите скрипт ghettoVCB:
./ghettoVCB.sh -a
Если будет выведена ошибка, что копия не может сохранится, то путь к папке бэкапа не правильно, что вы указали в конфигурационном файле, вам нужно изменить файл самого скрипта.
Открываем его в текстовом редакторе:
vi ghettoVCB.sh
Далее меняем путь к папке резервной копии, i для правки
VM_BACKUP_VOLUME=/vmfs/volumes/vmdata/backup
Затем Esc :wq для сохранения изменений.
Еще раз запускаем скрипт
./ghettoVCB.sh -a
- Параметр «-a» указывает на резервное копирование всех виртуальных машин на хосте.
- Указав параметр «-f» вы можете добавить список виртуальных машин для резервного копирования.
Чтобы создать список откройте текстовый редактор с именем для списка виртуальных машин
vi vm_backup
Добавьте имена машин
Linux
Windows
Esc :wq
Команда с использованием списка виртуальных машин будет иметь следующий вид
./ghettoVCB.sh -f vm_backup
С параметром -c можно добавить каталог конфигурации виртуальной машины
Резервная копия виртуальных машин на основе определенных конфигураций, расположенных в этом каталоге.
Параметр -g указывает путь к глобальному файлу конфигурации ghettoVCB
-
С параметром -l будет вывод будет записан в лог файл.
./ghettoVCB.sh -a -l /vmfs/volume/vmdata/ghettoVCB.log
Параметр-d указывает уровень отладки [info|debug|dryrun]
К примеру, выполним команду, при которой архив не будет сохранятся, будет выполнен тестовый запуск.
./ghettoVCB.sh -a -d dryrun
Ранее созданные резервные копии виртуальных машин лежат в указанной папке.
Как настроить NFS хранилище
А сейчас давайте рассмотрим, как настроить NFS хранилище на примере Synology NAS.
По умолчанию на Synology NAS - NFS отключен, поэтому сначала нужно его включить. Откройте панель управления – Файловые службы – вкладка SMB/AFP/NFS, в самом низу установите отметку – Enable NFS и NFSv4.1.
Далее нажмите по ссылке – Shared folder и добавите новую общую папку, нажмите Create, укажите имя, описание, установите отметки, скрыть общую папку из своих сетевых мест, а также скрыть файлы от пользователей без разрешения, Next.
В разрешениях добавьте дайте доступ только для вашего пользователя. Затем выберите «Разрешение NFS», нажмите «Создать». Введите IP-адрес вашего хоста ESXi, и нажмите «ОК» для подтверждения.
Запомните точку монтирования, она указана внизу. Итак, сетевую папку для бэкапа мы создали. Теперь переходим к настройкам хоста. Откройте админ панель ESXi, Хранилище – Новое хранилище. В открывшемся окне выберите тип – NFS datastore и нажмите – Next.
Далее задайте ему имя, укажите IP адрес хранилища, в моем случае адрес Synology NAS, и укажите папку ту, которую мы запомнили.
Выбираем – NFS4 и указываем логин и пароль с правами доступа записи, Next и Finish. После новый датастор появится в окне. И вы сможете настроить резервное копирование на новое место. Для этого нужно сменить конфигурационный файл и, если потребуется файл скрипта.
vi ghettoVCB.conf
Добавить новое место хранения
VM_BACKUP_VOLUME=/vmfs/volumes/NFS01
Включить NFS
UNMOUNT_NFS=1
Указать адрес NFS хранилища
NFS_SERVER=192.168.1.211
И указать каталог
NFS_MOUNT=/vmdataNFS
NFS_LOCAL_NAME=backup
NFS_VM_BACKUP_DIR=Backup
Если после изменений конфигурационного файла ничего не изменилось нужно еще добавить данные настройки в файл скрипта.
vi ghettoVCB.sh
Для восстановления данных с бэкапа нужно лишь скопировать файлы с бэкапа в нужную папку виртуальной машины. Или зарегистрировать новую виртуальную машину с бэкапа.
Virtual machines- Create/Register VM, Register an existing virtual machine
и указать путь к папке.
Заранее папку нужно скопировать в другое место, иначе она может быть затерта в процессе создания новых резервных копий.
Как восстановить данные с помощью Hetman RAID Recovery
В том случае если у вас возникли проблемы с восстановлением с резервной копии, резервная копия повреждена или отсутствует, восстановить случайно удаленные файлы виртуальных машин с ESXi сервера вам поможет программа для восстановления данных Hetman RAID Recovery.
Hetman RAID Recovery поможет восстановить данные с даже с разрушенного RAID массива, при случайном удалении файлов виртуальных машин или форматировании дисков. В автоматическом режиме соберет разрушенный массив из дисков и отобразит его содержимое.
Для восстановления запустите анализ и дождитесь окончания процесса. Затем перейдите в папку, где лежали утерянные файлы и восстановите их.
Программа | Поддержка форматов виртуальных дисков | Возможности | Интерфейс | Платформы |
---|---|---|---|---|
Hetman RAID Recovery | VMDK, VHD, VHDX | Восстановление данных с поврежденных или удаленных виртуальных дисков, поддержка всех типов файловых систем. | Удобный интерфейс пользователя с пошаговыми инструкциями. | Windows |
Stellar Data Recovery Technician | VMDK, VHD, VHDX | Восстановление данных с виртуальных машин, поиск и восстановление потерянных файлов. | Интуитивно понятный интерфейс, настройка восстановления. | Windows |
DiskInternals VMFS Recovery | VMDK | Восстановление данных с VMFS-томов ESXi, поддержка RAID-массивов. | Технический интерфейс, ориентированный на опытных пользователей. | Windows |
R-Studio | VMDK, VHD, VHDX | Восстановление данных с виртуальных дисков, поддержка многих файловых систем. | Более технический интерфейс, ориентированный на профессионалов. | Windows, macOS, Linux |
EaseUS Data Recovery Wizard | VMDK, VHD, VHDX | Простой инструмент для восстановления файлов с виртуальных машин. | Понятный и легкий в использовании интерфейс. | Windows, macOS |
Заключение
В заключение можно сказать, что настройка резервного копирования виртуальных машин и конфигурации системы ESXi – ключевой аспект обеспечения безопасности и надежности виртуальной инфраструктуры. Мы рассмотрели несколько методов резервного копирования, включая использование PowerCLI и стороннего скрипта GhettoVCB. Понимание процесса создания резервных копий важно для обеспечения возможности быстрого восстановления в случае сбоев или потери данных.