Comprobación de coherencia de metadatos de VMFS mediante vSphere On-disk Metadata Analyzer (VOMA)
Summary: La herramienta VOMA se puede utilizar para realizar una comprobación de metadatos en el sistema de archivos.
Symptoms
- Cuando hay problemas para acceder a ciertos archivos en un almacén de datos VMFS
- Cuando no es posible modificar o borrar archivos en un almacén de datos VMFS
- Cuando se intenta leer archivos en un almacén de datos VMFS, se produce un error
Argumento
no válidoCuando se intenta modificar la tabla de particiones, falla con el siguiente error:
Error: Read-only file system during write on /dev/disks/naa.600601603b503400de93e0a87e9ce211 SetPtableGpt: Unable to commit to disk
En el archivo /var/log/vmkernel se pueden ver entradas similares a las siguientes:
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
Los siguientes escenarios se aplicarían para realizar una comprobación de metadatos:
- El entorno experimenta una interrupción del almacenamiento.
- Después de una reconstrucción de volumen RAID o un reemplazo de disco
- Hay errores de metadatos en el archivo vmkernel.log.
- No puede acceder a los archivos en un almacén de datos VMFS que no está presente en ningún otro host.
Resolution
Prerrequisitos:
Antes de ejecutar VOMA, es necesario asegurarse de lo siguiente:
- Apague todas las máquinas virtuales en el almacén de datos afectado o migre a otro almacén de datos.
- El apagado de una máquina virtual que se ejecuta en archivos que tienen ciertos tipos de metadatos dañados mediante vSphere On-disk Metadata Analyzer puede hacer que la máquina virtual y sus datos no estén disponibles de forma permanente. Por este motivo, siempre se recomienda tener respaldos actualizados de las máquinas virtuales en el entorno.
- Para los almacenes de datos VMFS-5/VMFS-6, el almacén de datos se desmonta en todos los hosts ESXi 7.x/8.x.
- Si VOMA se ejecuta en un volumen con acceso a uno o más hosts ESXi, VOMA produce un mensaje similar al siguiente:
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
- Si VOMA se ejecuta en un volumen con acceso a uno o más hosts ESXi, VOMA produce un mensaje similar al siguiente:
Para comprobar la coherencia de los metadatos, ejecute VOMA desde la CLI de un host ESXi. VOMA se puede utilizar para comprobar y corregir problemas de incoherencia menores para un almacén de datos VMFS o volúmenes lógicos que respaldan el almacén de datos VMFS.
VOMA puede comprobar y corregir los siguientes elementos.
| Funciones de VOMA | Descripción |
|---|---|
Metadata check and fix |
Algunos ejemplos de comprobación y corrección de metadatos incluyen, entre otros, los siguientes:
|
Affinity metadata check and fix |
Para habilitar la comprobación de afinidad para VMFS6, utilice el -a|--affinityChk opción.Entre varios ejemplos de comprobación y corrección de metadatos de afinidad se incluyen los siguientes:
|
Directory validation |
VOMA puede detectar y corregir los siguientes errores:
|
Lost and found files |
Durante una comprobación del sistema de archivos, VOMA puede encontrar archivos a los que no se hace referencia en ninguna parte del sistema de archivos. Estos archivos huérfanos son válidos y están completos, pero no tienen un nombre ni una entrada de directorio en el sistema. Si VOMA encuentra archivos huérfanos durante el escaneo, crea un directorio denominado lost+found en la raíz del volumen para almacenar los archivos huérfanos. Los nombres de los archivos utilizan el formato de número de secuencia de archivo. |
Entre las opciones de comando que toma la herramienta VOMA se incluyen las siguientes.
| Opción de comando | Descripción |
|---|---|
-m|--module |
Los módulos disponibles son:
|
-f|--func |
Funciones compatibles con el módulo:
|
-a|--affinityChk |
Se incluye una comprobación/corrección relacionada con la afinidad para VMFS6. |
-d|--device |
Dispositivo y disco que se utilizarán. Por ejemplo: voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x |
-b|--blockSize |
Indica el tamaño de bloque del disco. |
-s|--logfile |
Especifique la ruta al archivo de registro para generar los resultados. |
-x|--extractDump |
Extraiga el volcado recolectado mediante VOMA. |
-D|--dumpfile |
Indique el archivo de volcado para guardar el volcado de metadatos recopilados. |
-v|--version |
Muestra la versión de VOMA. |
-h|--help |
Muestra el mensaje de ayuda para el comando VOMA. |
-Y |
Indique que VOMA se ejecute sin utilizar tablas PE para la resolución de direcciones. |
-Z| --file |
Indique que VOMA se ejecuta en los archivos de dispositivo extraídos. |
Procedimiento:
Obtenga el nombre y el número de partición del dispositivo que respalda el almacén de datos VMFS que desea comprobar.
#esxcli storage vmfs extent list
Las columnas Nombre del dispositivo y Partición en la salida identifican el dispositivo. Por ejemplo:
Volume Name ..... Device Name Partition 1TB_VMFS6 ..... naa.xxxx 3
Compruebe si hay errores de VMFS.
Proporcione la ruta absoluta a la partición del dispositivo que respalda el almacén de datos VMFS y proporcione un número de partición con el nombre del dispositivo. Por ejemplo:
# 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
Documentación de referencia:
Uso del analizador de metadatos en disco (VOMA) de vSphere para comprobar la coherencia de los metadatos de VMFS (broadcom.com)
Comprobación de la coherencia de los metadatos con VOMA (vmware.com)