VMware 101 – partedUtil y particiones de diagnostico

Que tal gente, el día de hoy les voy a platicar de un tema muy “básico” aunque me tomo un buen tiempo recordar e investigar para poderlo configurar… es impresionante como con el tiempo vamos perdiendo práctica en temas que consideramos “sencillos” o “básicos” es por eso que quiero compartir este procedimiento para todos aquellos que estén mi la misma situación. Comenzaré platicando cual es el propósito de una partición de diagnostico o “Dump” para después pasar a como crearla utilizando partedUtil.

¿Para que sirve una partición de diagnostico?

Esta partición se crea en el momento de instalación de un servidor ESXi, tiene la función de almacenar el volcado de memoria cuando se presenta un problema con el host ESXi y este termina crasheando y nos muestra la conocida PSOD o “Purple Screen Of Death”, es importante notar que este volcado de memoria nos ayudará a definir cual fue la causa raíz del problema para poderlo solucionar con ayuda de personal de soporte de VMware.

Este tipo de partición se puede tener en discos locales, en LUNs compartidas o dedicadas que sean presentadas a través de Hardware iSCSI o FC (Software iSCSI no esta soportado) o enviarlas a través del dump collector para su centralización. Justamente el ambiente en el que estoy trabajando tiene una pequeña LUN de SW iSCSI presentada a cada host ESXi para su instalación por lo que después de haber terminado la instalación podemos notar que se nos muestra este mensaje:

Screen Shot 2016-03-05 at 5.18.22 PM

 

¿Como creo una partición de diagnostico utilizando partedUtil?

El primer paso es identificar el disco local donde estaremos almacenando nuestra partición de diagnostico (o LUN compartida), para esto el procedimiento mas sencillo es simplemente seleccionar el host desde el vSphere Client e ir a Storage adapters, ubicar la controladora que tiene acceso a dicho disco/LUN y copiar el identificador:

Screen Shot 2016-03-05 at 5.40.50 PM

Una vez copiado el identificador NAA abrimos una sesión SSH a dicho host para poder determinar si existen particiones en dicho disco con el siguiente comando:

partedUtil getptbl “/vmfs/devices/disks/naa.xxxxxxxxxxxx”

El resultado será la tabla de particiones que contiene dicho disco o LUN, en este caso pueden notar que no tiene ninguna partición:

Screen Shot 2016-03-05 at 5.46.29 PM

Ahora también se nos muestra otra información con respecto a la geometría del disco y a que se utiliza un esquema de particionamiento GPT. Ahora necesitamos saber cual es el GUID o identificador del tipo de partición que estaremos creando con partedUtil, para esto utilizaremos el siguiente comando:

partedUtil showGuids

Screen Shot 2016-03-05 at 6.18.37 PM

Aquí podemos notar que se define el GUID a utilizar con partedUtil para crear una partición de diagnostico (vmkDiagnostic), una vez obtenido esto debemos de pensar el espacio que estaremos utilizando para esta partición, en el caso de una partición dedicada necesitaremos 110MB, pero como lo comenté anteriormente podemos tener un LUN compartido por varios hosts ESXi para almacenar sus volcados de memoria. El calculo de espacio es crucial para poder definir el sector de inicio y de final, para calcularlo utilizaremos la siguiente formula:

Sector_de_inicio + (Tamaño_de_Partición_expresado_en_MB * 1024 * 1024 / 512)

El sector de inicio no va a cambiar y siempre será 2048, y los demás datos son muy claros, para una partición de 110MB de un solo host ESXi tendríamos un resultado de sector de inicio de 2048 y de final 227328 (225280+2048).

Ahora teniendo esta información vamos a construir el comando para la creación de nuestra partición de diagnostico,:

partedUtil setptbl “/vmfs/devices/disks/naa.60030130f09000001b64169b0ccc0339” gpt “1 2048 227328 9D27538040AD11DBBF97000C2911D1B8 0”

Vamos a enfocarnos en la información resaltada con negritas:

  • gpt- simple, formato GPT
  • 1 – numero de la partición
  • 2048 – Sector de inicio
  • 227328 – Sector final
  • 9D27538040AD11DBBF97000C2911D1B8 – GUID o tipo de partición a crear
  • 0 – Atributo, en el caso de no ser una partición para booteo siempre será 0

Ok, es momento de crear la partición ingresando dicho comando, podemos ver que se nos arroja la tabla de partición resultante:

Untitled

Podemos verificar que la partición fue creada satisfactoriamente con el comando:

 partedUtil getptbl “/vmfs/devices/disks/naa.60030130f09000001b64169b0ccc0339”

Untitled 2

Ahora es momento de activar nuestra nueva partición de diagnostico con los comandos:

esxcli system coredump partition set –partition=”naa.60030130f09000001b64169b0ccc0339:1″

esxcli system coredump partition set –enable=true

Una vez activada solo es cuestión de verificar que efectivamente esta en uso con el comando:

esxcli system coredump partition list

Untitled3

Como pueden ver ya esta activa la partición y podrá ser utilizada en el caso de un PSOD. Si quieren probar esta partición podrían inducir un PSOD a través del comando vsish -e set /reliability/crashMe/Panic.

El espacio restante del disco puede ser utilizado para crear un datastore VMFS, en mi caso al tratarse de un disco local si procedí a crear un datastore que pueda ser utilizado para imágenes ISO y archivos temporales. En el momento de creación verán que les muestra que dicho disco contiene una partición de diagnostico pero que pueden utilizar el espacio libre:

Screen Shot 2016-03-05 at 7.01.12 PM

Mas información:

https://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=2004299

Leave a Reply