Error al encender una máquina virtual VMware: VMK_NO_MEMORY

Publicado el 22 julio 2015 por Dbigcloud @dbigcloud

Esta semana os traigo un post de troubleshooting en VMware vSphere, hace días me encontre con un problema al encender una máquina virtual recibiendo el mensaje de error:Could not start VMX: msg.vmk.status.VMK_NO_MEMORY dicho error me impedia hacer vMotion al host en el que se encontraba la máquina virtual.

Investigando, he visto que el error es provocado por el servicio de HP AMS (Agentless Management Service) el cual se encarga de recolectar información del sistema operativo y la provee a la ILO. Por lo que este error unicamente lo vamos a encontrar en hardware HP y con las versiones de AMS siguientes:

- hp-ams 500.9.6.0-12.434156
- hp-ams-550.9.6.0-12.1198610
- hp-ams 500.10.0.0-18.434156
- hp-ams-550.10.0.0-18.1198610

En la siguiente imagen podéis observar el error mostrado:

La solución a este error es bien sencilla, pasa por desinstalar dicho software e instalar una versión más actual en este caso 10.0.1 o superior que corrije el bug, OJO hay que tener en cuenta que el host debe ser reiniciado.

Como es necesario reiniciar el host, debemos migrar todoas las máquinas virtuales a otros hosts y posteriormente acceder por SSH (si no lo tenéis habilitado es el momento de hacerlo).

Vamos a parar el servicio AMS:

/etc/init.d/hp-ams.sh stop

Si queréis ver la versión que esta instalada de AMS podéis hacerlo con el siguiente comando:

esxcli software vib list | grep ams

Y ahora vamos a desinstalarlo:

esxcli software vib remove -n hp-ams

Para que los cambios sean validos debemos reiniciar el host, una vez reiniciado,  vamos a copiar al host el fichero zip que nos hemos descargado con la nueva versión del software de AMS, en mi caso lo he dejado en la raiz / y lo instalamos.

esxcli software vib install -d /hp-ams-esxi5.5-bundle-10.0.1-2.zip

OJO es muy importante indicar la ruta absoluta, aunque estemos situado en el raiz debemos indicar la / al igual que si lo hemos copiado en otra ruta, por ejemplo si lo copiamos a /tmp debemos usar /tmp/hp-ams-esxi5.5-bundle-10.0.1-2.zip

Por último reiniciamos, con esto ya hemos solucionado el problema que teniamos al principio, ahora podemos migrar máquinas virtuales a al host sin ningún problema, espero que os sea de utlidad y os ayude a resolver este error.