Как восстановить виртуальные машины и снимки в XCP-ng и XenServer
В этой статье мы расскажем как восстановить данные из виртуальных машин и снимков в XCP-ng и XenServer, где хранятся виртуальные диски, как работает механизм снимков и что делать, если виртуальная машина была удалена или ее диск стал недоступен. Мы также рассмотрим варианты восстановления данных с виртуальных дисков после повреждения файловой системы, случайного удаления файлов или сбоя хранилища, а также использование специализированного программного обеспечения для восстановления информации.

- Архитектура локального хранилища XCP-ng
- Подключение дисков и создание образов
- Как восстановить виртуальные машины и снимки XCP-ng / XenServer
- Заключение
- Часто задаваемые вопросы
- Комментарии
Гипервизоры XCP-ng и XenServer используются для создания, запуска и управления виртуальными машинами, которые хранят операционные системы, приложения и важные данные на виртуальных дисках. Для защиты от сбоев и возможности отката к предыдущему состоянию используются снимки (snapshots). Однако удаление виртуальной машины, повреждение хранилища, аппаратный сбой, административные ошибки или неудачное слияние снимков могут привести к потере доступа к важным данным.
Для решения этих задач мы будем использовать кроссплатформенную утилиту Hetman RAID Recovery. Эта программа позволяет подключать диски и выполнять восстановление в средах Windows, Linux и macOS. Она автоматически распознает логическую структуру серверных накопителей, безопасно извлекает целые виртуальные машины вместе со снимками, а также позволяет находить и восстанавливать удаленные файлы непосредственно из гостевых операционных систем.
Как восстановить виртуальные машины и снапшоты XCP-ng / XenServer
Архитектура локального хранилища XCP-ng
Для успешного восстановления данных важно понимать, как работает Storage Repository в среде XCP-ng. Гипервизор поддерживает хранилище на основе LVM, где каждый виртуальный диск создается как отдельный логический том. Однако сегодня мы сосредоточимся на локальном хранилище с файловой системой EXT4, где виртуальные диски хранятся как обычные файлы.

После сбоя сервера такой накопитель становится нераспознанным устройством для стандартных настольных операционных систем. Встроенные средства Windows или macOS просто не понимают специфическую логическую структуру, используемую гипервизором. В результате вы не можете напрямую подключить диск и скопировать необходимые образы, даже если сами данные физически остаются целыми.
Также стоит упомянуть особенности форматов виртуальных дисков и снимков. В среде XCP-ng на хранилище EXT4 файлы обычно хранятся в формате VHD. При создании снимка система формирует новый связанный дифференциальный файл, и все последующие изменения в гостевой системе записываются в него. Гипервизор создает такие снимки, чтобы зафиксировать точное состояние виртуальной машины в определенный момент времени.
Сторонней системе крайне сложно интерпретировать такую специфическую структуру без специализированного программного обеспечения. Здесь на помощь приходит Hetman RAID Recovery.
Программа точно распознает логику файловой системы EXT4 и мгновенно предоставляет прямой доступ к существующим файлам виртуальных машин и снимков, а также эффективно находит ранее удаленные данные. Кроме того, утилита полностью поддерживает работу с хранилищами на основе LVM, позволяя успешно находить и восстанавливать виртуальные диски непосредственно с логических томов. Алгоритм программы автоматически распознает их конфигурацию, обеспечивая безопасное извлечение данных даже при серьезном повреждении структуры хоста.
| Компонент | Описание |
|---|---|
| Локальное хранилище (Local SR) | Локальное хранилище, подключенное к серверу XCP-ng, в котором хранятся виртуальные диски машин (VDI) и связанные с ними данные. |
| Хранилище Storage Repository (SR) | Логическая единица хранения, используемая гипервизором для организации доступа к виртуальным дискам. SR может быть локальным или сетевым. |
| Physical Block Device (PBD) | Объект, который связывает хранилище SR с конкретным хостом XCP-ng и обеспечивает доступ к этому хранилищу. |
| Virtual Disk Image (VDI) | Виртуальный диск, на котором хранятся операционная система, приложения и файлы гостевой операционной системы. |
| Virtual Block Device (VBD) | Виртуальное устройство, с помощью которого VDI подключается к виртуальной машине (VM). |
| VHD (Virtual Hard Disk) | Формат виртуального диска, используемый во многих хранилищах XCP-ng и XenServer. Поддерживает цепочки базовых дисков и снимков. |
| LVM (Logical Volume Manager) | Механизм управления логическими томами, используемый в некоторых типах локальных хранилищ на основе блочных устройств. |
| EXT (файловая система ext4) | Файловая система, используемая для хранения файлов виртуальных дисков в соответствующем типе локального хранилища. |
| Snapshot (снимок) | Сохраненное состояние виртуальной машины или ее дисков на определенный момент времени. В зависимости от типа хранилища снимок может быть реализован с помощью цепочки виртуальных дисков. |
| Цепочка VHD (VHD chain) | Последовательность, состоящая из базового диска и дочерних дисков, содержащих изменения, связанные со снимками. Нарушение связей между ними может затруднить доступ к актуальным данным. |
| XAPI | API управления XCP-ng, предназначенный для работы с виртуальными машинами, хранилищами, виртуальными дисками и снимками. |
| Метаданные хранилища | Информация о конфигурации SR, виртуальных дисках и связях между ними. Повреждение или потеря метаданных может привести к тому, что виртуальные диски перестанут отображаться в интерфейсе управления. |
Подключение дисков и создание образов
Первым шагом в процессе восстановления является физическое извлечение дисков сервера и подключение их к рабочей станции:
- Наилучший вариант — прямое подключение к портам SATA на материнской плате.
- Если свободных портов недостаточно или используются серверные диски SAS, можно установить плату расширения HBA.
- В качестве альтернативы можно использовать внешние USB-корпуса или док-станции, но следует учитывать, что пропускная способность USB может увеличить общее время сканирования.
При подключении дисков существует одно критически важное правило. Операционная система Windows, Linux или macOS может предложить форматировать или инициализировать новые диски. Эти системные запросы необходимо игнорировать и просто закрывать, чтобы не уничтожить информацию безвозвратно.

Чтобы обеспечить максимальную сохранность исходных данных, мы всегда рекомендуем создавать полный образ подключенного диска. Это точная побайтовая копия физического накопителя. Эта встроенная функция также помогает в ситуациях, когда невозможно подключить все необходимые диски к компьютеру одновременно.
Чтобы создать образ, выберите диск в программе, нажмите Сохранить диск и укажите путь для сохранения файла.

После этого откройте главное меню, выберите Монтировать диск, укажите тип Raw disk images и откройте сохраненный образ для дальнейшей безопасной работы.

Как восстановить виртуальные машины и снимки XCP-ng / XenServer
МЕТОД 1. Восстановление существующих и удаленных виртуальных машин
Перейдем к практической части. Сразу после выбора нашего диска программа автоматически распознает структуру файловой системы EXT4. Запускаем Быстрое сканирование подключенного хранилища.

В течение нескольких секунд алгоритм обнаруживает существующие виртуальные диски вместе с цепочками файлов снимков. Такой же быстрый поиск одинаково хорошо работает и для архитектуры LVM, где программа мгновенно находит все доступные логические тома, содержащие виртуальные машины.

Сначала рассмотрим сценарий восстановления существующих виртуальных машин. В нашем случае файлы физически присутствуют на диске, но доступ к ним был утрачен только из-за общего сбоя сервера. Мы просто выбираем эти целые виртуальные машины, нажимаем кнопку Восстановить и успешно сохраняем их на безопасный локальный диск нашего компьютера.

Теперь рассмотрим ситуацию с файлами, которые были случайно удалены пользователем до сбоя системы.
Обратите внимание, как удаленные файлы отображаются в интерфейсе программы. Они помечены специальным красным крестом, что позволяет легко их найти.

Выберите найденные удаленные виртуальные машины, нажмите кнопку Восстановить и успешно сохраните их на безопасный локальный диск нашего компьютера.
МЕТОД 2. Восстановление файлов из гостевых операционных систем
Еще одна мощная функция программы — возможность напрямую подключать найденные виртуальные диски. Это позволяет получить доступ к их внутреннему содержимому без необходимости запуска самого гипервизора.

Что особенно важно, мы можем даже подключать удаленные виртуальные диски, которые система только что обнаружила на нашем хранилище EXT4, и извлекать из них полезную информацию.

После подключения диска запускаем на нем Быстрое сканирование.

На этом этапе мы демонстрируем процесс поиска пользовательских файлов, которые были случайно удалены в нашей гостевой операционной системе Windows 10 до общего сбоя сервера.
Программа успешно восстанавливает структуру каталогов. Мы можем просмотреть найденные данные с помощью функции предварительного просмотра, проверить целостность документов и выполнить окончательное сохранение необходимых файлов на локальный компьютер.

МЕТОД 3. Восстановление данных с использованием снимков
Программа также хорошо работает с системными снимками. После анализа диска интерфейс отображает файлы снимков вместе с файлами виртуальных машин. Здесь можно увидеть как существующие текущие снимки, так и ранее удаленные.

Сначала продемонстрируем восстановление данных из существующего снимка. В нашем случае мы создали один базовый снимок системы. Мы подключаем этот найденный текущий снимок, выполняем быстрое сканирование и запускаем процесс поиска и восстановления файлов, которые точно соответствуют этому конкретному моменту времени.


Теперь перейдем к восстановлению данных из удаленного снимка. Чтобы усложнить тест, после создания первого снимка мы добавили новые файлы, создали еще один снимок, а затем полностью удалили его.

Мы подключаем этот удаленный снимок, найденный программой, успешно сканируем его и сохраняем необходимые файлы на локальный компьютер.

Это наглядно подтверждает возможность системы восстанавливать данные независимо от текущего состояния снимка.

Заключение
Восстановление виртуальных машин и снимков в XCP-ng и XenServer зависит от причины потери данных, типа хранилища и состояния виртуальных дисков. Случайное удаление виртуальной машины, повреждение хранилища, физический отказ диска или нарушение цепочки снимков могут привести к потере доступа к операционной системе, приложениям и пользовательским файлам.
В процессе восстановления важно правильно определить структуру хранилища (SR), найти соответствующие виртуальные диски (VDI) и проверить целостность файлов VHD и зависимости между ними. Если диск или снимок недоступен через интерфейс управления, это не всегда означает, что данные утрачены безвозвратно. В некоторых случаях информацию можно восстановить непосредственно с виртуального диска с помощью специализированного программного обеспечения для восстановления данных.
Чтобы не усугубить ситуацию, рекомендуется остановить операции записи на поврежденном хранилище, не удалять оставшиеся элементы цепочки снимков и не создавать новое хранилище поверх устройства с потерянными данными. Если возможно, создайте побайтовую копию диска и выполняйте дальнейшие действия с копией.
Специализированное программное обеспечение для восстановления данных, включая решения Hetman Software, может помочь просканировать доступные виртуальные диски, найти потерянные файлы и восстановить информацию после удаления или повреждения файловой системы. Результат зависит от состояния накопителя, характера повреждения и того, были ли потерянные данные перезаписаны.
Регулярное резервное копирование, проверка целостности снимков и мониторинг состояния хранилищ XCP-ng и XenServer помогут снизить риск потери данных и сократить время восстановления виртуальной инфраструктуры.







