Доступ к данным на VMFS разделе из-под Windows, Linux и ESXi
Рассмотрим несколько способов получения доступа к данным, хранящимся на файловой системе VMFS хранилища (datastore) гипервизора ESXi (это файлы конфигурации, файлы с данными и снапшотами виртуальных машин). Статья, собственно, основана на реальной ситуации, возникшей у одного из клиентов, когда единственный продуктивный сервер с гипервизором VMware ESXi перестал загружаться.
Если не работает хост ESXi, но диски (LUNы) сервера остались целыми, вы всегда сможете скопировать файлы виртуальных машин и запустить ВМ на другом сервере (на VMware Workstation или даже Hyper-V). Классические операционные системы (Windows и Linux) по умолчанию не увидят данные на разделе с файловой системой VMFS, т.к. в них отсутствует драйвер файловой системы VMFS.
Разберем три сценария доступа к данным на файловой системе VMFS:
Монтирование VMFS раздела в Linux (Ubuntu)
Рассмотрим, как смонтировать раздел с файловой системой VMFS на компьютере с установленной ОС Ubuntu 20.04 LTS. Установите пакет vmfstools в зависимости от версии файловой системы VMFS:
- vmfs-tools – поддерживает VMFS 3 (ESXi 3.x, 4x) и VMFS 5 (ESXi 5.x)
- vmfs6-tools – VMFS6 (в современных версиях ESXi, начиная с vSphere 6.5
В нашем примере диск был подключен к хосту ESXi 7.1, поэтому нужно установить vmfs6-tools для доступа к данным на файловой системе VMFS6:
# apt-get -y install vmfs6-tools
Создайте каталог для монтирования:
# mkdir /mnt/vmfs
Определите имя диск и раздела с VMFS:
# fdisk -l
В нашем примере видно, что на диске /dev/sdb есть раздел sdb1 с файловой системой VMware VMFS.
parted -l
Чтобы смонтировать этот VMFS раздел в Linux, выполните команду:
# sudo vmfs6-fuse /dev/sdb1 /mnt/vmfs
Команда вернула что на указанном разделе находится файловая система VMFS6 и смонтировала его в указанный каталог.
Файлы виртуальных машин на VMFS диске доступны вам на чтение (read-only) и вы можете скопировать их или быстро запустить в VMware Player/Workstation.
Если при монтировании появилась ошибка
VMFS Unsupported version 5
Unable to openfilesystem
Значит, нужно установить vmfs-tools, который поддерживает VMFS3 и VMFS5:
# apt-get install vmfs-tools
Осталось смонтировать раздел диска с хранилищем VMFS:
#vmfs-fuse /dev/sdb1 /mnt/vmfs
Подключаем VMFS хранилище на новом ESXi хосте
Выше мы рассмотрели, как с помощью сторонних драйверов смонтировать VMFS в Linux или Windows. Однако самый универсальный способ открыть данные на VMFS разделе – просто подключить его на новом ESXi сервере (вы можете развернуть его менее чем за час). На мой взгляд, это самый простой способ переподключить как физический жёсткий диск, так и LUN с устройства хранения (через FC или iSCSI).
Итак, как подключить существующее VMFS хранилище на новом ESXi хосте без его форматирования.
- Подключитесь к новому серверу ESXi (в этом примере это ESXi 6.7) с помощью веб клиента vSphere;
- Подключите диск к новому серверу и выполните Storage rescan (если ваша VMFS находится на iSCSI LUN, подключите его согласно инструкции);
- Перейдите на вкладку Devices, найдите ваш LUN в списке. Убедитесь, что Esxi видит там раздел VMFS;
- Подключитесь к консоли хоста ESXi через SSH и выполните команду:
vmkfstools -V
- Эта команда должна найти доступные VMFS хранилища на дисках и смонтировать их;
- Откройте vSphere Client и убедитесь, что ваше VMFS хранилище теперь доступно, щелкните по нему и выберите Mount;
- Откройте Datastore Browser. Теперь вы можете получить доступ ко всем файлам на VMFS хранилище. Вы можете найти нужные vmx файлы, зарегистрировать их на сервере и сразу запустить критичные виртуальные машины
Доступ к VMFS разделу из Windows
Для доступа к данным на VMFS разделе из Windows, нам понадобится специальный открытый драйвер Open Source VMFS Driver, написанный на Java. Драйвер требует версию Java не ниже 6 и также позволяет монтировать VMFS-тома в режиме только для чтения.
Скачать Open Source VMFS Driver драйвер можно на странице https://code.google.com/archive/p/vmfs/. На данный момент проект не обновлялся с 2010 года и максимальная версия драйвера, доступная на сайте — VMFS Driver r95, которая поддерживает только VMFS 3 (
Примечание. При попытке подключения более новой версии VMFS появится ошибка No VMware File System detected.
- Итак, скачайте Open Source VMFS Driver (fvmfs_r95_dist.zip ) и распакуйте его в произвольный каталог (допустим C:vmfs);
- Проверить работу java-приложения fvmfs.jar можно так:
cd vmfs
java -jar fvmfs.jar
- Далее нужно определить номер диска с хранилищем VMFS, подключенный к Windows-компьютеру. Номер диска можно узнать с помощью консоли управление дисками или diskpart. (В нашем примере подключенный диск имеет индекс 1 – Disk1. Для драйвера утилиты fvmfs, этот диск будет именоваться так: .PhysicalDrive1)
- Попытаемся получить информацию о диске:
java -jar fvmfs.jar .PhysicalDrive1 info
- Предоставьте общий доступ к данному диску с помощью WebDav:
java -jar fvmfs.jar .PhysicalDrive1 webdav
- Проверьте, что на клиенте запущена служба клиента WebDAV (WebClient) – если она отключена, ее нужно запустить.
- Подключите расшаренный диск:
net use * http://localhost:50080/vmfs
- В системе должен появиться новый диск, с содержимым датастора VMFS, доступный для чтения;
- Не закрывайте окно командной строки пока работаете с файлами на VMFS хранилище
Ubuntu
Linux и ESXi, Доступ к данным на VMFS разделе из-под Windows