Доступ до даних на VMFS розділі з-під Windows / Linux / ESXi

Сьогодні ми розберемо кілька простих способів отримання доступу до даних, що зберігаються на файлової системі VMFS сховища (datastore) гипервизора ESXi (це файли конфігурації, файли з даними і снапшотов віртуальних машин). Стаття, власне, заснована на реальній ситуації, що виникла у одного з клієнтів, коли єдиний продуктивний сервер з гіпервізором VMware ESXi перестав завантажуватися.

У тому випадку, якщо не працює сам хост ESXi, але локальний диск (або диски) сервера залишився працездатними, ви завжди зможете скопіювати файли віртуальних машин (як диски з даними, так і конфігураційні файли) з нього і запустити ВМ на іншому сервері (на VMware Workstation або навіть Hyper-V). Основна проблема в тому, що "класичні" операційні системи (Windows і Linux) за замовчуванням не бачать розділ з файловою системою VMFS, тому що в них відсутній драйвер файлової системи VMFS. У цій статті ми розглянемо, як отримати доступ до файлів віртуальних машин на диску з файловою системою VMFS з різних ОС.

У моєму випадку проблема була в тому, що резервне копіювання віртуальних машин VMware налаштоване не було, як і не було часу на діагностику і вирішення проблем із завантаженням системи. Тому було прийнято рішення вручну скопіювати файли критичною віртуальної машини з сховища VMFS і запустити її на іншому комп'ютері на терміново піднятому для цих цілей гіпервізора ESXi.

Розберемо три сценарії доступу до даними на файлової системі VMFS:

зміст:

  • Монтування VMFS розділу в Linux (Ubuntu)
  • Доступ до VMFS розділу з Windows
  • Підключаємо VMFS сховище на новому ESXi хості

Монтування VMFS розділу в Linux (Ubuntu)

У цій секції ми покажемо, як змонтувати розділ з файловою системою VMFS на комп'ютері зі встановленою ОС Ubuntu (Live CD з Ubuntu в цьому сценарії нам не підійде).

В першу чергу необхідно підключити фізичний диск з файлової системою VMFS до комп'ютера (сервера) з Ubuntu. Щоб отримати доступ до даних на VMFS томі, нам знадобитися встановити спеціальний сторонній пакет vmfs-tools. Даний пакет дозволяє отримати доступ до файлової системи розділу VMFS з комп'ютерів під управлінням Linux. Доступ до даних на такому розділі можливий в режимі тільки на читання (read-only). Друге важливе обмеження, розробники vmfs-tools офіційно заявляли про підтримки версій файлової системи VMFS аж до VMFS 5.0. Можливість підключення розділу з VMFS 6 (vSphere 6.0 і 6.5.) Не гарантовано.

Встановимо пакет наступною командою

apt-get install vmfs-tools

Примітка. У репозитариях Ubuntu поки доступна тільки версія vmfs-tools 0.2.1, основний її недолік - вона вміє працювати тільки з файлової системою VMFS v4. Якщо вам потрібно змонтувати датастор із VMFS 5, доведеться самостійно завантажити і встановити версію vmfs-tools не нижче 0.2.5, наприклад, тут:

  • http://ge.archive.ubuntu.com/ubuntu/pool/universe/v/vmfs-tools/vmfs-tools_0.2.5-1_i386.deb

    - пакет для 32 бітної системи

  • http://de.archive.ubuntu.com/ubuntu/pool/universe/v/vmfs-tools/vmfs-tools_0.2.5-1_amd64.deb

    - пакет для 64 бітної системи

Качаємо відповідну версію пакета так:

#wget http://de.archive.ubuntu.com/ubuntu/pool/universe/v/vmfs-tools/vmfs-tools_0.2.5-1_amd64.deb

І встановлюємо його:

#dpkg -i vmfs-tools_0.2.5-1_amd64.deb

Якщо потрібно буде задовольнити залежності, скористайтеся командою:

# Apt-get install vmfs-tools

Після установки пакета, потрібно створити точку монтування, в яку буде підключений VMFS розділ:

#mkdir / mnt / vmfs

Наступний крок - потрібно розібратися з розділами на дисках. Гипервизор ESXi при установці крім, власне, розділу для файлів віртуальних машин (VMFS) створює безліч службових розділів. Якщо версія ESXi 4 або нижче, або VMFS сховище було оновлено з версії VMFS 3 до VMFS 5, а його розмір не перевищує 2 Тб, виведемо список дисків і розділів так:

#fdisk -l

Як ви бачите, розділ з файловою системою VMFS - / dev / sda3 (мітка VMware VMFS)

важливо. Оскільки в ESXi 5 використовується VMFS v5 із таблицею розділів GPT (таблиця GUID Partition Table), яка використовується замість MBR, що дозволяє створювати сховища більшого розміру та прокидати RDM диски у режимі фізичної сумісності розміром понад 2 TB. Тому для перегляду таблиці розділів доведеться замість fdisk використовувати команду parted.

Отже, виведемо інформацію про розділи так:

#parted -l

Залишилося змонтувати розділ диска зі сховищем VMFS:

# Vmfs-fuse / dev / sdb3 / mnt / vmfs

Виведемо вміст змонтованого розділу:

#ls -all / mnt / vmfs

Отже, тепер ми бачимо всі файли віртуальних машин на VMFS сховище, яке доступне нам тільки для читання, а це значить, що ми можемо скопіювати каталоги і / або окремі файли потрібних віртуальних машин на окремий диск і запустити їх на іншому гіпервізора ESXi.

Доступ до 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.
  1. Отже, скачайте Open Source VMFS Driver (fvmfs_r95_dist.zip) і розпакуйте його в довільний каталог (припустимо C: \ vmfs)
  2. Перевірити роботу java-додатки fvmfs.jar можна так:
    cd \ vmfs
    java -jar fvmfs.jar
  3. Далі потрібно визначити номер диска зі сховищем VMFS, підключений до Windows-комп'ютера. Номер диска можна дізнатися за допомогою консолі управління дисками або diskpart. (У нашому прикладі підключений диск має індекс 1 - Disk1. Для драйвера утиліти fvmfs, цей диск буде називатися так: \\. \ PhysicalDrive1)
  4. Спробуємо отримати інформацію про диск:
     java -jar fvmfs.jar \\. \ PhysicalDrive1 info

  5. Надайте спільний доступ до даного диску за допомогою WebDav:
    java -jar fvmfs.jar \\. \ PhysicalDrive1 webdav
  6. Перевірте, що на клієнті запущена служба клієнта WebDAV (WebClient) - якщо вона відключена, її потрібно запустити.
  7. Підключіть розшарений диск:
    net use * http: // localhost: 50080 / vmfs
  8. В системі повинен з'явитися новий диск, з вмістом датастора VMFS, доступний для читання.
  9. Чи не закривайте вікно командного рядка поки працюєте з файлами на VMFS сховище

Підключаємо VMFS сховище на новому ESXi хості

Як ви бачите, в обох розглянутих вище випадках сторонні драйвери для VMFS під Linux і Windows не дозволяють працювати з VMFS 6.0. Тому самий універсальний спосіб отримати доступ до даних на VMFS розділі диска вийшов з ладу сервера - підключити його на новому сервері ESXi (який, благо, встановлюється і налаштовується менш ніж за годину). Це найпростіший спосіб. Таким способом ви зможете перепідключити як фізичний жорсткий диск, так і LUN з пристрою зберігання (через FC або iSCSI).

Новий хост ESXi повинен коректно визначити підключений VMFS датастор і ви зможете отримати доступ до файлів на ньому.

Отже, як підключити існуюче VMFS сховище на новому ESXi хості без її форматування.

  1. Підключіться до нового сервера ESXi за допомогою веб клієнта vSphere.
  2. Підключіть диск до нового сервера і виконайте Storage rescan.
  3. Перейдіть в розділ Configure -> Datastores і додайте нове сховище (Create a new datastore).
  4. Виберіть Тиск сховища Disk або LUN.
  5. У списку доступних пристроїв виберіть підключений диск (LUN) з VMFS сховищем.
  6. Виберіть режим підключення. обов'язково виберіть Keep the existing signature.
  7. Натисніть на кнопку Finish.
  8. Перейдіть в розділ сховищ хоста. Виберіть підключений сховище. Його вміст можна відобразити, натиснувши на кнопку Datastore browser.
  9. Тепер ви можете знайти потрібні vmx файли, зареєструвати їх на сервері і відразу запустити критичні віртуальні машини.