Перевірка узгодженості метаданих VMFS за допомогою vSphere On-disk Metadata Analyzer (VOMA)
Summary: Інструмент VOMA можна використовувати для перевірки метаданих файлової системи.
Symptoms
- Коли виникають проблеми з доступом до певних файлів у сховищі даних VMFS
- Коли неможливо змінити або видалити файли в сховищі даних VMFS
- При спробі прочитати файли в сховищі даних VMFS не вдається з помилкою
Невірний аргумент
При спробі змінити таблицю розділів, не вдається з помилкою:
Error: Read-only file system during write on /dev/disks/naa.600601603b503400de93e0a87e9ce211 SetPtableGpt: Unable to commit to disk
У файлі /var/log/vmkernel можна побачити записи, схожі на:
vmkernel: 0:00:20:51.964 cpu3:1085)WARNING: Swap: vm 1086: 2268: Failed to open swap file '/volumes/4730e995-faa64138-6e6f-001a640a8998/mule/mule-560e1410.vswp': Invalid metadata
vmkernel: 0:00:20:51.964 cpu3:1085)WARNING: Swap: vm 1086: 3586: Failed to initialize swap file '/volumes/4730e995-faa64138-6e6f-001a640a8998/mule/mule-560e1410.vswp': Invalid metadata
cpu11:268057)WARNING: HBX: 599: Volume 50fd60a3-3aae1ae2-3347-0017a4770402 ("<Datastore name>") may be damaged on disk. Corrupt heartbeat detected at offset 3305472: [HB state 0 offset 6052837899185946624 gen 15439450 stampUS 5 $
Cause
Для виконання перевірки метаданих застосовуватимуться такі сценарії:
- У навколишньому середовищі спостерігаються перебої у зберіганні.
- Після перебудови тому RAID або заміни диска
- У файлі vmkernel.log є помилки метаданих.
- Він не може отримати доступ до файлів у сховищі даних VMFS, яких немає на жодному іншому хості.
Resolution
Передумови:
Перед запуском ВОМА потрібно переконатися в тому, що:
- Вимкніть усі віртуальні машини на ураженому сховищі даних або перенесені в інше сховище даних.
- Вимкнення віртуальної машини, яка працює з файлами з певними типами пошкоджених метаданих за допомогою аналізатора метаданих на диску vSphere, може зробити віртуальну машину та її дані назавжди недоступними. Через це завжди бажано мати поточні резервні копії віртуальних машин у середовищі.
- Для сховищ даних VMFS-5/VMFS-6 сховище даних демонтується на всіх хостів ESXi 7.x/8.x.
- Якщо VOMA працює на томі з доступом до одного або декількох хостів ESXi, VOMA видає повідомлення, схоже на:
voma -m vmfs -d /vmfs/devices/disks/naa.00000000000000000000000000: Checking if device is actively being used by other hosts Found 1 actively heart beating hosts on device '/vmfs/devices/disks/naa.00000000000000000000000000:1' 1): MAC Address xx:xx:xx:xx:xx:xx
- Якщо VOMA працює на томі з доступом до одного або декількох хостів ESXi, VOMA видає повідомлення, схоже на:
Щоб перевірити узгодженість метаданих, запустіть VOMA з CLI хоста ESXi. VOMA можна використовувати для перевірки та виправлення незначних невідповідностей для сховища даних VMFS або логічних томів, які підтримують сховище даних VMFS.
VOMA може перевірити та виправити наступні пункти.
| Функції VOMA | Опис |
|---|---|
Metadata check and fix |
Приклади перевірки та виправлення метаданих включають, але не обмежуються наступним:
|
Affinity metadata check and fix |
Щоб увімкнути перевірку спорідненості для VMFS6, використовуйте -a|--affinityChk Варіант.Декілька прикладів перевірки та виправлення споріднених метаданих включають наступне:
|
Directory validation |
VOMA може виявляти та виправляти такі помилки:
|
Lost and found files |
Під час перевірки файлової системи VOMA може знайти файли, на які немає посилань у файловій системі. Ці осиротілі файли є дійсними та повними, але не мають назви чи запису каталогу в системі. Якщо VOMA знаходить осиротілі файли під час сканування, вона створює каталог з іменем lost+found у корені тому для зберігання осиротілих файлів. Імена файлів використовують формат порядкових номерів файлів. |
Параметри команд, які приймає інструмент VOMA, включають наступне.
| Опція команди | Опис |
|---|---|
-m|--module |
Доступні модулі:
|
-f|--func |
Функції підтримки модуля:
|
-a|--affinityChk |
Включіть перевірку/виправлення, пов'язане з спорідненістю, для VMFS6. |
-d|--device |
Пристрій і диск, які будуть використовуватися. Наприклад: voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x |
-b|--blockSize |
Вкажіть розмір блоку диска. |
-s|--logfile |
Вкажіть шлях до файлу журналу для виведення результатів. |
-x|--extractDump |
Витягніть зібраний відвал за допомогою VOMA. |
-D|--dumpfile |
Вкажіть файл дампу, щоб зберегти зібраний дамп метаданих. |
-v|--version |
Відобразіть версію VOMA. |
-h|--help |
Відобразіть довідкове повідомлення для команди VOMA. |
-Y |
Вкажіть, що VOMA працює без використання таблиць PE для роздільної здатності адрес. |
-Z| --file |
Вкажіть, що VOMA працює на видобутих файлах пристрою. |
Процедура:
Отримайте ім'я та номер розділу пристрою, який підтримує сховище даних VMFS, яке ви хочете перевірити.
#esxcli storage vmfs extent list
Стовпці «Назва пристрою» та «Розділ» у виведених даних ідентифікують пристрій. Наприклад:
Volume Name ..... Device Name Partition 1TB_VMFS6 ..... naa.xxxx 3
Перевірте наявність помилок VMFS.
Укажіть абсолютний шлях до розділу пристрою, який підтримує сховище даних VMFS, і вкажіть номер розділу з іменем пристрою. Наприклад:
# voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x The output lists possible errors. For example, the following output indicates that the heartbeat address is invalid. XXXXXXXXXXXXXXXXXXXXXXX Phase 2: Checking VMFS heartbeat region ON-DISK ERROR: Invalid HB address Phase 3: Checking all file descriptors. Phase 4: Checking pathname and connectivity. Phase 5: Checking resource reference counts. Total Errors Found: 1
Довідкова документація:
Використання vSphere On-disk Metadata Analyzer (VOMA) для перевірки узгодженості метаданих VMFS (broadcom.com)
Перевірка узгодженості метаданих з VOMA (vmware.com)