Búsqueda de sitios web

Recuperación de un almacén de datos de VMFS eliminado en VMware ESXi/vSphere


Analicemos el problema cuando su almacén de datos VMFS adjunto a un host ESXi/vSphere se elimina, se pierde o se daña. Puede suceder, por ejemplo, debido a un error humano cuando un administrador de VMware elimina accidentalmente un almacén de datos de VMFS o un disco/LUN con partición de VMFS se deshabilitó/perdió debido a errores en su dispositivo de almacenamiento/copia de seguridad. En este artículo, le mostraremos cómo recuperar manualmente la tabla de particiones en el disco con el almacén de datos de VMFS.

Supongamos que un administrador de VMware seleccionó accidentalmente Eliminar en lugar de Desmontar y eliminó un almacén de datos de VMFS.

No puede desmontar/eliminar un almacén de datos de VMFS que esté en uso, o si hay registradas máquinas virtuales o máquinas virtuales con estados no válidos (desconocidos).

En primer lugar, no se asuste. No vuelva a crear el almacén de datos de VMFS desde la interfaz de vSphere ni haga ninguna otra cosa que pueda sobrescribir los datos de la partición VMFS anterior en su disco (LUN).

Abra la interfaz de cliente de vCenter, vaya a Almacenamiento -> Dispositivos y busque en la lista el disco/LUN con el almacén de datos VMFS conectado anteriormente. Obtén la ruta completa al disco (con el identificador naa). En mi captura de pantalla, es:

/vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565

En este ejemplo, estoy usando un almacén de datos iSCSI VMFS que se ejecuta en Windows Server (objetivo iSCSI).

Habilite SSH en su host ESXi en el que está disponible el LUN de destino y conéctese mediante un cliente SSH (estoy usando el cliente SSH integrado de Windows).

Asegúrese de que la tabla de particiones exista en el dispositivo:

partedUtil getptbl /vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565 

El comando ha devuelto que hay un GPT en el disco/LUN.

gpt
1305 255 63 20971520

Luego debe obtener el primer y último bloque de la partición VMFS en el disco.

Para mostrar un resumen de todas las particiones disponibles desde el host ESXi y encontrar el primer bloque de la partición VMFS eliminada, ejecute el siguiente script en la CLI de ESXi:

offset="128 2048"; for dev in `esxcfg-scsidevs -l | grep "Console Device:" | awk {'print $3'}`; do disk=$dev; echo $disk; partedUtil getptbl $disk; { for i in `echo $offset`; do echo "Checking offset found at $i:"; hexdump -n4 -s $((0x100000+(512*$i))) $disk; hexdump -n4 -s $((0x1300000+(512*$i))) $disk; hexdump -C -n 128 -s $((0x130001d + (512*$i))) $disk; done; } | grep -B 1 -A 5 d00d; echo "---------------------"; done

En este ejemplo, mostramos información sobre la partición eliminada (testVMFS) y obtuvimos el número del primer bloque de la partición: 2048.

Ahora necesitamos obtener el último bloque de la partición VMFS en el disco:

partedUtil getUsableSectors /vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565

En nuestro ejemplo, es 20971486.

Si el comando devuelve el error "Tabla de partición desconocida en el disco", configure la etiqueta de partición GPT manualmente:

partedUtil mklabel /vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565 gpt

Luego obtenga un GUID de tabla de particiones para la partición VMFS. Siempre es AA31E02A400F11DB9590000C2911D1B8.

Puede mostrar todos los GUID de la tabla de particiones posibles con este comando:

partedUtil showGuids

Esto significa que debe usar otro GUID de gpt para un almacén de datos de vSAN.

Así que tenemos la siguiente información:

  • ID DE LUN: naa.60003ff44dc75adc87daa4e08f467565

  • Bloque de inicio - 2048

  • Bloque final: 2097148

  • GUID GPT: AA31E02A400F11DB9590000C2911D1B8

Luego crea una tabla de particiones en el disco usando la información que tienes:

partedUtil setptbl /vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565 gpt "1 2048 20971486 AA31E02A400F11DB9590000C2911D1B8 0"

Verifique las particiones en el disco nuevamente y asegúrese de que la partición VMFS ahora esté visible:

partedUtil getptbl /vmfs/devices/disks/naa.60003ff44dc75adc87daa4e08f467565

Ahora necesita montar el almacén de datos de VMFS:

vmkfstools -V
esxcli storage core adapter rescan --all

Vaya al cliente de vSphere y asegúrese de que aparezca el almacén de datos de VMFS eliminado accidentalmente. Puede montarlo en el host VMware ESXi o acceder a él desde el host Linux o Windows.

Todos los archivos, incluidas las imágenes ISO y los archivos de máquinas virtuales, están disponibles en el almacén de datos de VMFS restaurado.

Anteriormente, mostramos cómo usar partedUtil para crear un almacén de datos de VMFS en una unidad flash USB y aumentar el tamaño del almacén de datos de VMFS con las herramientas de la línea de comandos. Obtenga más información sobre cómo usar partedUtil para administrar la tabla de particiones en ESXi aquí: https://kb.vmware.com/s/article/1036609.

Esta guía es relevante para VMware ESXi/vSphere 6.0, 6.5 y 7.0.

Artículos relacionados