Recuperarse de un Datastore lleno en VMware

Cuando se nos llena un datastore en el que tenemos thin provisioning, la acción por defecto de vSphere es suspender las máquinas virtuales que están ejecutándose en él. Es posible que no nos demos cuenta hasta que veamos que las máquinas virtuales afectadas tienen un icono con un interrogante y si hacemos click sobre ellas nos aparece el siguiente diálogo, comunmente conocido como la “Pregunta” de la máquina virtual (Virtual Machine Question)

datastore lleno vmware

La máquina virtual no reanudará su funcionamiento normal hasta que contestemos de forma apropiada a esta pregunta (y el datastore no esté lleno). El problema puede surgir si se te ha llenado un datastore en el que están alojadas un gran número de máquinas virtuales. En ese caso, habría que ir contestando las preguntas máquina por máquina y esto supondría un problema en cuanto a tiempos de recuperación.

Podemos obtener un listado de las maquinas virtuales que hay dentro de un esxi ejecutando

Para comprobar los mensajes que tienen pendientes las maquinas virtuales, podemos utilizar el comando: (numero de maquina virtual es el numero de la primera columna en la salida del comando anterior)

Obtendremos una salida similar a :

Para evitar esto, te dejo un script que he desarrollado la última vez que me encontré con un datastore VMware lleno en un entorno de desarrollo y que, ejecutándolo en cada uno de los hosts del cluster, se encarga de escanear las máquinas virtuales en busca de preguntas pendientes, y en caso de haberlas, contestar el Retry de forma automatizada. De esta forma, se pueden revisar y re-arrancar (continuar tras suspensión realmente) unas 300 máquinas virtuales en cuestión de unos 5 minutos.

Deberás subir este script a cada uno de los hosts que contengan máquinas virtuales en un datastore lleno y ejecutarlo. Puedes darle permisos de ejecución con chmod +x nombre-del-script.

 

 

Leave a Comment

Your email address will not be published. Required fields are marked *