Cómo degradar o bajar la versión de una máquina virtual en VMware ESXi. En el caso real que emplearemos bajaremos de la versión 6.5 (mx13) a la versión 5.0 (mx8) una máquina virtual y comprobaremos que funciona perfectamente tras la degradación (downgrade). Este procedimiento es útil cuando queremos ejecutar una máquina virtual en un ESX de versión inferior.
Escenario inicial
El proceso de degradación (downgrade) puede ser necesario cuando disponemos de una máquina virtual en un entorno VMware ESXi y queremos moverla a otro entorno con VMware ESXi en versión inferior. Si intentamos realizar el proceso sin hacer el downgrade nos encontraremos con este error:
Processing srv_mysql Error: VM hardware version 13 is not supported by destination host (version 5.5)
El error anterior, de ejemplo, se produce cuando intentamos hacer una réplica de una máquina virtual en ESXi versión 6.5 (13) a otro entorno con ESXi 5.5 (8 ó 10). Como vemos será imposible hacer la réplica directamente, tendremos que hacer un donwgrade o degradación para bajar la versión de la máquina virtual en el entorno ESX 6.5.
Es un ejemplo de los muchos que se pueden dar al querer ejecutar una máquina virtual con una versión superior en un entorno de versión inferior.
Requisitos para hacer downgrade o bajada de versión de una máquina virtual VMware ESXi
En primer lugar necesitaremos disponer de acceso como administradores a la consola de administración de VMware, a ser posible a la consola web. Y antes de iniciar el proceso deberemos hacer una copia de seguridad de la máquina virtual, como explicamos a continuación.
Copia de seguridad de la máquina virtual, exportar a OVF o mediante Veeam Backup u otro software
MUY IMPORTANTE: dado que se trata de un proceso delicado es fundamental hacer copia de seguridad de la máquina virtual a la que queramos aplicar el downgrade. Si podemos apagar la máquina durante unos minutos realizaremos una exportación a OVF para hacer la copia.
Para exportar a OVF será tan sencillo como apagar la máquina virtual y seleccionarla en la consola de administración, pulsando con el botón derecho sobre ella y eligiendo «Exportar»:
El asistente nos indicará que se descargarán dos archivos, un ovf (configuración de la máquina virtual):
Indicaremos dónde queremos guardarlo:
Y un vmdk (el disco duro de la máquina virtual):
Que también indicaremos dónde queremos guardarlo:
Se iniciará la descarga de los dos ficheros, esperaremos a que finalice para tener una copia de seguridad de la máquina virtual:
Recuperar máquina virtual de exportación OVF
Una vez exportada la máquina virtual a OVF, si fuera necesario recuperarla por el motivo que sea, podríamos hacerlo creando una nueva máquina virtual, pulsando sobre «Host» con el botón derecho del ratón y eligiendo «Crear/Registrar máquina virtual»:
Indicaríamos «Implementar una máquina virtual a partir de un OVF…»:
Especificaremos un nombre para la máquina virtual y seleccionamos el archivo OVF exportando anteriormente. Con esto se recuperará la máquina virtual:
Si nuestra máquina virtual está en producción y tiene altos requisitos de disponibilidad, seguramente no podremos detenerla unos minutos para exportar a OVF. En este caso tendremos que hacer la copia de seguridad «en caliente», usando algún software de terceros que lo permita, como por ejemplo Veeam Backup & Replication:
Obtener información sobre la máquina virtual (versión y datastore donde está ubicada)
Será necesario saber dónde está ubicado el disco duro virtual de la máquina. Lo necesitaremos para el proceso de degradación. Para ello pulsamos sobre la máquina virtual en la consola de administración web:
En esta ventana podremos ver la versión actual de la máquina virtual, en nuestro caso sobre ESXi 6.5 (máquina virtual versión 13):
En el grupo de «Configuración de hardware», desplegando «Disco duro 1», podremos ver en qué datastore está ubicado, en qué carpeta y con qué nombre de fichero. En nuestro caso en el datastore ssd_1, en la carpeta srv_web y en el fichero srv_web.vmdk. Anotaremos estos datos que necesitaremos más adelante:
Proceso de degradación downgrade para bajar de versión una máquina virtual VMware ESXi
En primer lugar es recomendable (no obligatorio) apagar la máquina virtual que degradaremos, de esta forma el proceso será un poco más seguro. Si decidimos apagarla lo mejor es hacerlo desde el propio sistema operativo, para evitar que se pueda corromper algún fichero si hacemos un apagado forzado desde VMware. O bien, si tiene las VMware Tools, podremos hacer un apagado controlado desde el propio VMware:
Aunque repetimos que es crucial hacer una copia de seguridad previa de esta máquina, por si se produjera algún error en el proceso.
Lo que haremos será crear una nueva máquina virtual en la versión degradada y le asignaremos el disco duro existente de la máquina virtual a degradar. De ahí que el proceso sea «peligroso».
Para ello accederemos a la consola de administración web de VMware y pulsaremos con el botón derecho del ratón sobre «Host», seleccionaremos «Crear/Registrar máquina virtual»:
Elegiremos «Crear una nueva máquina virtual» y pulsaremos «Siguiente»:
Introduciremos el nombre para la nueva máquina virtual, en nuestro caso «srv_web_degradado» y lo más importante del proceso, en «Compatibilidad» elegiremos «Máquina virtual con ESXi 5.0» (o la versión a la que queramos degradarla):
Seleccionaremos el datastore donde se creará la máquina virtual. Aunque hay que tener en cuenta que el disco duro de esta nueva máquina seguirá siendo el de la anterior:
El asistente nos mostrará el paso de «Personalizar la configuración». En «Disco duro 1» pulsaremos en la equis para quitar el que nos propone por defecto:
Lo que nos interesa es añadir un disco duro seleccionando el de la máquina a degradar. Pulsaremos en «Agregar disco duro»:
En el desplegable elegiremos «Disco duro existente»:
Accederemos al datastore y carpeta donde se encuentre el disco duro de la máquina que queramos degradar (que hemos anotado en pasos anteriores). Seleccionaremos el disco duro (fichero con extensión .vmdk):
Una vez que tengamos asignado como disco duro de la nueva máquina virtual el existente de la anterior que queremos degradar podremos establecer el resto de la configuración, por ejemplo, la memoria RAM asignada y otros valores:
El asistente nos indica las opciones elegidas, si son correctas pulsaremos en «Finalizar» para crear la nueva máquina virtual:
Con el proceso anterior tendremos una máquina virtual degradada a la versión que hayamos elegido, en nuestro caso ESXi 5.0 (máquina virtual versión 8)
A partir de este momento tendremos dos máquinas virtuales que comparten el mismo disco duro. NUNCA debemos iniciar las dos a la vez y si iniciamos una de ellas NO debemos iniciar la otra ni aunque apaguemos la anterior. Si lo hacemos aparecerá este error:
- Error de implementación específica del sistema de archivos de LookupAndOpen[file]
- No se pudo bloquear el archivo.
- No se puede abrir el disco ‘/vmfs/volumes/5ac8a96e-19d59a01-4b0f-0023243278aa/srv_web/srv_web.vmdk’ o uno de los discos de instantánea de los que depende.
- Se produjo un error en el encendido del módulo ‘Disk’.
- No se pudo iniciar la máquina virtual.
Este proceso suele utilizarse cuando tenemos dos entornos con diferentes versiones de ESX y queremos pasar una máquina virtual de un entorno con versión superior a otro de versión inferior. Por lo que lo normal es que una vez degradada se exporte al otro entorno (como hemos explicado en pasos anteriores).