Доступ к данным на VMFS разделе из-под Windows, Linux и ESXi
Источник: https://winitpro.ru/index.php/2014/08/25/dostup-k-dannym-na-vmfs-razdele-iz-pod-windows-linux/
Рассмотрим несколько способов получения доступа к данным, хранящимся на файловой системе VMFS хранилища (datastore) гипервизора ESXi (это файлы конфигурации, файлы с данными и снапшотами виртуальных машин). Статья, собственно, основана на реальной ситуации, возникшей у одного из клиентов, когда единственный продуктивный сервер с гипервизором VMware ESXi перестал загружаться.
Если не работает хост ESXi, но диски (LUNы) сервера остались целыми, вы всегда сможете скопировать файлы виртуальных машин и запустить ВМ на другом сервере (на VMware Workstation или даже Hyper-V). Классические операционные системы (Windows и Linux) по умолчанию не увидят данные на разделе с файловой системой VMFS, т.к. в них отсутствует драйвер файловой системы VMFS.
Разберем три сценария доступа к данным на файловой системе VMFS:
Создайте каталог для монтирования:
# mkdir /mnt/vmfs
Определите имя диск и раздела с VMFS:
# fdisk -l
В нашем примере видно, что на диске /dev/sdb есть раздел sdb1 с файловой системой VMware VMFS.
Важно: Для просмотра таблицы разделов GPT на дисках VMFS размером более 2 TB вместо fdisk использовать команду parted: 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;
Если VMFS хранилище было удалено с диска, вы можете восстановить его по инструкции : https://winitpro.ru/index.php/2021/12/21/vosstanovlenie-vmfs-datastore-vmware/
Подключитесь к консоли хоста ESXi через SSH и выполните команду: vmkfstools -V
Эта команда должна найти доступные VMFS хранилища на дисках и смонтировать их;
Откройте vSphere Client и убедитесь, что ваше VMFS хранилище теперь доступно, щелкните по нему и выберите Mount;
Откройте Datastore Browser. Теперь вы можете получить доступ ко всем файлам на VMFS хранилище. Вы можете найти нужные vmx файлы, зарегистрировать их на сервере и сразу запустить критичные виртуальные машины.
В предыдущих версиях ESXi можно было смонтировать существующее VMFS хранилище из графического интерфейса vSphere Client. Для этого нужно при добавлении нового VMFS хранилища нужно выбрать опцию Keep the existing signature.
Доступ к 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 (< ESXi 5).
Примечание. При попытке подключения более новой версии 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 хранилище
Монтирование 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