Aprenda cómo y cuándo utilizar las instantáneas de vSphere
El estado de una máquina virtual en cualquier punto específico en el tiempo se puede preservar tomando lo que se conoce como una instantánea.
La función de instantáneas de VMware es particularmente útil en aquellos escenarios en los que desea recuperarse rápidamente de un fallo o simplemente volver a un estado deseado. La restauración de una VM a un estado funcional después de una actualización o parche chapucero es un caso de uso común. Del mismo modo, puede utilizar las instantáneas para restablecer una VM a un estado de referencia una vez que un usuario haya terminado de utilizarla, tal vez como parte de un régimen de mantenimiento de un laboratorio de formación.
La función de instantáneas está disponible tanto en hosts ESXi independientes como en vCenter Server.
Trabajar con instantáneas y Snapshot Manager
Puede trabajar con instantáneas desde cualquier cliente de vSphere o realizando llamadas a la API desde PowerCLI o similar. Diferentes tareas como revertir desde una instantánea, eliminar instantáneas, etc. siguen el mismo patrón de clic y selección. El denominador común aquí es Snapshot Manager mediante el cual, podrás:
- Tomar instantáneas.
- Revertir a la última instantánea o a cualquier otra instantánea.
- Borrar una instantánea.
- Borrar todas las instantáneas.
- Editar una instantánea (Nombre y Descripción).
- Administrar instantáneas.
- Consolidar discos.
Desde el cliente vSphere, siempre se trata de hacer clic con el botón derecho del ratón sobre el nombre de la VM, seleccionar Instantánea(s) en el menú contextual o de acciones de la VM, seguido de la operación deseada. Esto se muestra en la Figura 1 como Opción A. Alternativamente, resalte el nombre de la VM, haga clic en la pestaña Instantáneas y seleccione una tarea del menú desplegable Todas las acciones o haciendo clic en el icono de la tarea respectiva, es decir, la Opción B.
Figura 1 – Dos maneras de llevar a cabo una acción relacionada con la instantánea en una VM
Note que cada VM puede tener un máximo de 32 instantáneas. Para un mejor rendimiento, se recomienda ceñirse a 2-3 instantáneas por VM. Cuando se supera este límite, se devuelve el error mostrado en la Fig.2.
Figura 2 – Error que indica que se ha superado el límite de número máximo de instantáneas por vm
Otro límite a tener en cuenta es el de la retención. La recomendación es evitar el uso de una instantánea por más de 72 horas ya que los archivos que constituyen la instantánea siguen creciendo y pueden impactar en el rendimiento del sistema aparte de que se puede quedar sin espacio en datastores que son relativamente pequeños en tamaño.
Cómo tomar instantáneas
Cuando se toma una instantánea de una VM, se conserva la siguiente información.
- Configuración de la máquina virtual. El directorio de la máquina virtual, que incluye los discos añadidos o modificados después de tomar la instantánea.
- Estado de energía. La máquina virtual puede estar encendida, apagada o suspendida.
- Estado de los discos. Estado de todos los discos virtuales de la máquina virtual.
- (Opcional) Estado de la memoria. El contenido de la memoria de la máquina virtual.
Dos opciones de configuración determinan el estado en el que se restaura una VM cuando se revierte desde una instantánea. Tenga en cuenta que ninguna de estas opciones está disponible, o se requiere para ello, cuando se toma una instantánea mientras la VM está apagada. Las dos opciones son:
Snapshot de la memoria de la máquina virtual: Activada por defecto, esta opción vacía el contenido de la memoria de una VM al disco como parte de la instantánea. Esto permite que una VM vuelva al estado exacto en el que se estaba ejecutando cuando se tomó la instantánea. Si esta opción no está seleccionada, y tampoco está seleccionada la quiescencia, la instantánea creará archivos que son consistentes con los fallos, lo que significa que tendrá que encender la máquina virtual manualmente después de haberla restaurado desde la instantánea. Una instantánea de memoria tardará mucho más en completarse. Además, una VM se «congela» para garantizar la integridad del estado.
Conservar el sistema de archivos del huésped: Esta opción requiere que VMware Tools esté instalado y funcionando correctamente. Quiescing una VM es el método preferido para asegurar un estado adecuado para las copias de seguridad. Esto incluye operaciones como el vaciado de búferes sucios de la caché en memoria del sistema operativo al disco u otras tareas específicas de la aplicación de nivel superior. Quiescing indica la pausa o la alteración del estado de los procesos en ejecución en un ordenador, en particular los que podrían modificar la información almacenada en el disco durante una copia de seguridad, para garantizar una copia de seguridad consistente y utilizable. Quiescing no es necesario para las instantáneas de memoria; se utiliza principalmente para las copias de seguridad.
La figura 3 captura una serie de capturas de pantalla que muestran cómo se toman las instantáneas, de VMs que residen en diferentes entornos, utilizando un cliente vSphere o Host en particular.
- Ejemplo 1 – Tomar una instantánea de una VM gestionada por vCenter Server 6.5 a través del cliente vSphere Web.
- Ejemplo 2 – Tomar una instantánea de una VM alojada en un host independiente ESXi 6.5 a través del cliente de host ESXi.
- Ejemplo 3 – Tomar una instantánea de una VM alojada en un host independiente ESXi 6.0 a través del cliente vSphere C#.
Figura 3 – Varios ejemplos sobre cómo tomar instantáneas
El cuarto y último ejemplo ilustra cómo se utiliza PowerCLI para hacer una instantánea de una VM gestionada por vCSA 6.5. He incluido dos posibles formas que puedes utilizar para hacer un snapshot de una VM. En el primer ejemplo, simplemente recupero una VM usando el Get-VM que luego paso a canalizar en el cmdlet New-Snapshot. En el segundo ejemplo, he utilizado el cmdlet New-Snapshot por sí mismo, en el que se especifica la máquina virtual que se desea capturar mediante el parámetro -VM. En ambos ejemplos, los parámetros -Name asignan un nombre a la instantánea tomada.
PowerShell
1
|
get-vm -nombre «windows 7» | New-Snapshot -Nombre «Pre Windows Update»
|
PowerShell
1
|
Nuevo-Instantánea -VM «Windows 7» -Nombre «Pre Windows Update»
|
Figura 4 – Dos formas de crear instantáneas con PowerCLI
Cómo excluir discos de una instantánea
Puede haber casos en los que no quiera que los discos de la VM se vean afectados por las instantáneas. Para lograrlo, cambie el Modo de disco duro de una VM a Independiente – Persistente o Independiente – No persistente desde la configuración de la VM. Las dos opciones difieren ligeramente según la explicación de VMware:
Independiente – Persistente: Los discos en modo persistente se comportan como los discos convencionales de su ordenador físico. Todos los datos escritos en un disco en modo persistente se escriben permanentemente en el disco.
Independiente – No persistente: Los cambios en los discos en modo no persistente se descartan cuando se apaga o se reinicia la máquina virtual. Con el modo no persistente, puede reiniciar la máquina virtual con un disco virtual en el mismo estado cada vez. Los cambios realizados en el disco se escriben y se leen en un archivo de registro de rehacer que se elimina cuando se apaga o se reinicia.
Figura 5 – Cambio del modo de disco de un VMDK para que no le afecten las instantáneas
Cómo revertir a una instantánea
Para revertir a una instantánea, se selecciona la opción Revert to Latest Snapshot. Si una VM tiene varias instantáneas, sólo tiene que resaltar la instantánea a la que desea revertir en la jerarquía de instantáneas que se muestra en el Administrador de instantáneas y pulsar el icono Revertir a, como se muestra en la Fig. 6.
Figura 6 – Selección de la instantánea a la que revertir en el Administrador de instantáneas
El estado al que revierte una VM depende de las opciones seleccionadas en el momento en que se tomó la instantánea. Si se seleccionó la opción de memoria, la VM permanece encendida mientras revierte a un estado anterior. Si la opción de memoria no se incluyó en el momento en que se tomó la instantánea, tendrá que encender la VM manualmente después de revertir desde la instantánea, independientemente del estado de energía en el que se encontraba la VM cuando se tomó la instantánea.
Siempre que revierta desde la instantánea, se le advertirá de que el estado actual de la VM se perderá a menos que tome una instantánea como se muestra en la Fig. 7.
Figura 7 – Advertencia de pérdida del estado actual al revertir a una instantánea
Si se seleccionó la opción de memoria cuando se tomó la instantánea, se le presenta entonces la opción de suspender la VM mientras se revierte. Si se selecciona la opción, se debe «despausar» la VM manualmente encendiéndola de nuevo.
Figura 8 – Suspender la VM mientras se revierte desde la instantánea
La primera instantánea tomada se denomina instantánea padre base. Esta es la versión más recientemente guardada del estado actual de la máquina virtual. La instantánea padre es siempre la instantánea que aparece inmediatamente encima del icono You are here en Snapshot Manager. Si revierte o restaura una instantánea, esa instantánea se convierte en el padre del estado actual You are here. Una instantánea de una VM tomada después de la instantánea padre se llama instantánea hija.
Figura 9 – Jerarquía de instantáneas que ilustra la relación entre las instantáneas padre e hija y el estado actual representado por You are here
Cómo eliminar instantáneas
Puede eliminar una sola instantánea o cualquier instantánea existente de una sola vez. La eliminación de instantáneas es un proceso costoso de E/S y puede afectar al rendimiento. Cuando se elimina una instantánea, el estado actual de una VM no cambia. Sin embargo, todos los cambios acumulados hasta la fecha se copian de los discos delta y se escriben en el disco base en un proceso llamado Consolidación. A continuación, el proceso de consolidación se encarga de eliminar todos los archivos redundantes asociados a la instantánea que se acaba de eliminar.
Si el proceso de consolidación falla, se puede iniciar el proceso manualmente desde el menú de instantáneas seleccionando la opción Consolidar. Es importante que la consolidación se lleve a cabo con éxito, ya que los discos delta redundantes (véase la siguiente sección) pueden afectar negativamente al rendimiento.
Figura 10 – Realización de la consolidación de discos manualmente
Para obtener más detalles, consulte el artículo Cómo consolidar instantáneas en vSphere 5.x/6.x KB article.
Snapshots desde una perspectiva de archivos
Una instantánea consiste en una serie de archivos que se pueden ver en Datastore Browser después de navegar a la carpeta de una VM para la que se han tomado instantáneas.
Una instantánea consiste en los siguientes archivos:
Archivos de disco delta: Un archivo .vmdk en el que el sistema operativo invitado puede escribir. El disco delta representa la diferencia entre el estado actual del disco virtual y el estado que existía en el momento en que se tomó la instantánea anterior. Cuando se toma una instantánea, se preserva el estado del disco virtual, lo que impide que el sistema operativo huésped escriba en él, y se crea un disco delta o hijo. Un disco delta tiene dos archivos, incluyendo un archivo descriptor que es pequeño y contiene información sobre el disco virtual y un archivo correspondiente que contiene los datos en bruto. Los archivos que componen el disco delta se denominan discos hijos o redo logs.
Archivo plano: Un archivo -flat.vmdk que es uno de los dos archivos que componen el disco base. El disco plano contiene los datos sin procesar para el disco base. Este archivo no aparece como un archivo separado en el navegador de almacenes de datos, pero aparece por separado cuando se enumera el contenido del directorio mientras se consolida a ESXi.
Figura 11 – Algunos archivos sólo son visibles cuando se consolida a ESXi
Archivo de base de datos: Un archivo .vmsd que contiene la información de las instantáneas de la VM y es la fuente principal de información para el Snapshot Manager. Este archivo, que puede verse en cualquier editor de texto, contiene entradas de línea que definen las relaciones entre las instantáneas y los discos hijos de cada instantánea.
Archivo de memoria: Un archivo .vmsn, incluye el estado activo de una VM y captura el estado de la memoria de la VM para permitirle volver a un estado de máquina virtual encendida. Si la opción de memoria instantánea no está seleccionada, sólo se puede revertir a un estado de máquina virtual apagada.
Puede consultar el post titulado La anatomía de una máquina virtual VMware para más detalles.
Figura 12 – Asignación de los archivos de instantáneas mostrados en Datastore Browser a las entradas encontradas en el archivo de base de datos
Como se ha mencionado, una instantánea preserva el estado del disco y/o de la VM en un punto específico en el tiempo mediante la creación de una serie de discos delta para cada disco virtual o RDM virtual conectado. Opcionalmente, el estado de la memoria y la energía se conservan mediante la creación de un archivo de memoria.
Cada instantánea crea un archivo delta adicional. Cuando se toma una instantánea, el mecanismo de instantáneas evita que el sistema operativo huésped escriba en el archivo base .vmdk y, en su lugar, dirige todas las escrituras al archivo del disco delta. El disco delta representa la diferencia entre el estado actual del disco virtual y el estado que existía en el momento en que se tomó la instantánea anterior. Si existe más de una instantánea, los discos delta pueden representar la diferencia entre cada instantánea. Los archivos de disco delta pueden expandirse rápidamente y llegar a ser tan grandes como todo el disco virtual si el sistema operativo invitado escribe en cada bloque del disco virtual.
Puede encontrar más detalles en los siguientes enlaces:
- Entendiendo las instantáneas de VM en ESXi / ESX
- Determinando si hay archivos delta sobrantes o instantáneas que VMware vSphere o Infrastructure Client no pueden detectar
Limitaciones de las instantáneas
Hay una serie de limitaciones que debe conocer. Algunas, como las relacionadas con la forma en que las instantáneas interactúan con vMotion, deben abordarse adecuadamente si todavía utiliza versiones anteriores de vSphere.
- No se admiten las instantáneas de VM con discos sin procesar, discos en modo físico RDM o sistemas operativos invitados que utilicen un iniciador iSCSI en el invitado.
- Las VM con discos independientes deben estar apagadas antes de tomar una instantánea.
- No se admiten las instantáneas de VM encendidas o suspendidas con discos independientes.
- Las instantáneas no se admiten con dispositivos PCI vSphere Direct Path I/O.
- Las instantáneas de VM configuradas para compartir el bus no es una opción admitida por VMware.
- Aunque las instantáneas proporcionan una imagen puntual del disco que las soluciones de copia de seguridad pueden utilizar, éstas no están destinadas a ser un método robusto de copia de seguridad y recuperación. Si los archivos que contienen una máquina virtual se pierden, sus archivos de instantáneas también se pierden. Además, un gran número de instantáneas son difíciles de gestionar, consumen grandes cantidades de espacio en disco y no están protegidas en caso de fallo de hardware.
- Las instantáneas pueden afectar negativamente al rendimiento de una máquina virtual. La degradación del rendimiento se basa en el tiempo que dure la instantánea o el árbol de instantáneas, en la profundidad del árbol y en cuánto hayan cambiado la máquina virtual y su sistema operativo invitado desde el momento en que se tomó la instantánea. Además, es posible que vea un retraso en el tiempo que tarda la máquina virtual en encenderse. No ejecute máquinas virtuales de producción a partir de instantáneas de forma permanente.
- Si una máquina virtual tiene discos duros virtuales de más de 2TB, las operaciones de instantáneas pueden tardar bastante más en finalizar.
Si tiene entornos anteriores a VSphere 6.0, asegúrese de leer el artículo de la KB Migración de máquinas virtuales con instantáneas. Un problema común que solía encontrar con frecuencia, fue uno en el que había puesto un host en modo de mantenimiento y esperar a que las máquinas virtuales para migrar fuera de él de forma automática, sólo para encontrar el proceso atascado porque uno o más máquinas virtuales tenían instantáneas.
Solución de problemas
Aquí hay algunos artículos de KB que cubren algunos problemas más comunes que es probable que se cruzan con cuando se trabaja con instantáneas.
- Solución de problemas al crear o confirmar instantáneas en VMware ESXi/ESX
- No se pueden eliminar las instantáneas de la máquina virtual
- No se pueden crear nuevas instantáneas en una máquina virtual después de eliminar un disco de la máquina virtual
- La tarea de eliminación de instantáneas se detiene al 99% en ESXi/ESX