¿Qué es VMware Changed Block Tracking (CBT) y cómo funciona?

VMware proporciona API para simplificar la protección de datos en entornos virtuales empresariales con funciones que permiten realizar backups sin agentes y mejorar la eficacia de los backups incrementales de máquinas virtuales. Los backups incrementales ayudan a ahorrar una cantidad significativa de espacio de almacenamiento en comparación con los backups completos

Cuando se trata de soluciones modernas de backup de VMware, la mayoría se basan en las API de VMware y utilizan la tecnología Changed Block Tracking (CBT) para facilitar y acelerar la creación de backups incrementales de máquinas virtuales. En esta entrada del blog explicamos el seguimiento por bloques modificado, incluido el principio de funcionamiento y las aplicaciones prácticas.

NAKIVO for VMware vSphere Backup

NAKIVO for VMware vSphere Backup

Complete data protection for VMware vSphere VMs and instant recovery options. Secure backup targets onsite, offsite and in the cloud. Anti-ransomware features.

¿Qué es el seguimiento de bloques modificados?

El seguimiento de bloques modificados (CBT) es una función nativa de VMware que registra los bloques modificados en un archivo de seguimiento. CBT forma parte de VMware vSphere Storage APIs – marco de protección de datos publicado por primera vez en la versión 4.0, que permite a las aplicaciones de protección de datos de terceros aprovechar CBT para hacer backups y replics más eficientes.

CBT funciona en el nivel de ESXi Storage Stack y permite a las soluciones de backup de terceros hacer backups sólo de los bloques de datos modificados desde el último backup, es decir, crear backups incrementales, o de los bloques en uso en lugar de la VM completa. Esto permite reducir drásticamente la cantidad de datos de backup, especialmente en entornos grandes con cientos de máquinas virtuales, y acelerar el proceso de backups.

VMware CBT reduce significativamente la cantidad de tiempo que el software de backup tarda en hacer backups incrementales, ya que realiza un seguimiento de los cambios en un archivo de registro especial. Las soluciones de backup de terceros causan más carga de CPU en un servidor ESXi si rastrean los cambios sin CBT utilizando otros métodos. Así, CBT también optimiza el rendimiento de un servidor ESXi al hacer backup de datos.

CBT también es utilizado por el proceso Storage vMotion de VMware que permite mover archivos de disco de máquinas virtuales de un almacén de datos a otro mientras se está ejecutando.

Cómo funciona el seguimiento de bloques modificados de VMware

La función CBT funciona comparando el último y el actual ID de conjunto de cambios y encontrando los sectores de disco que fueron alterados entre estos ID de conjunto de cambios. VMware CBT también identifica todos los bloques de Virtual Machine File System (VMFS) de un disco virtual que están en uso. El seguimiento lo realiza el propio hipervisor y tiene lugar fuera de la máquina virtual.

Requisitos de la CBT

Los requisitos para el seguimiento de bloques modificados incluyen:

  • VMware vSphere (ESXi 4.0 o superior)
  • Hardware virtual versión 7 o superior
  • Almacenes de datos locales VMFS, NFS o iSCSI
  • Aprovisionamiento grueso o fino
  • No hay asignaciones de disco RAW. No se admite la asignación de dispositivos sin procesar (RDM) en el modo de compatibilidad física.
  • Una VM no debe tener instantáneas para empezar a utilizar VMware CBT

El hardware virtual a partir de la versión 7 es compatible con VMware CBT.

Cómo activar el seguimiento de bloques modificados

Por defecto, CBT está desactivado ya que consume una pequeña cantidad de tiempo de la CPU del host. Pero para una solución de backup de terceros como NAKIVO Backup & Replication, CBT debe estar activado para que el producto pueda hacer backups incrementales rápidos y fiables.

CBT se activa en los ajustes avanzados de configuración de una máquina virtual:

  1. Abre los ajustes de la máquina virtual. Puede hacerlo en VMware vSphere Client haciendo clic con el botón derecho en una VM y seleccionando Editar ajustes.
  2. En la ventana Editar ajustes, haga clic en la pestaña Opciones de VM.
  3. Haga clic en la categoría de opciones Avanzadas para ampliar los ajustes y haga clic en Editar configuración en la línea Parámetros de configuración. Se abre la ventana Parámetros de configuración de la máquina virtual, que contiene varias líneas y cada una de ellas contiene un nombre y un valor de parámetro.
  4. La activación de la CBT viene determinada por la siguiente línea de la configuración .vmx:

ctkEnabled = "TRUE"

Además, para cada disco en el que esté habilitado CBT, se incluirá una entrada:

scsix:x. ctkEnabled = "TRUE"

Estos parámetros deben configurarse para activar el seguimiento de bloques modificados.

Nota: Para desactivar CBT, cambie TRUE a FALSE en las líneas ctkEnabled y scsi0:0.ctkEnabled líneas (utilice el número apropiado del dispositivo SCSI).

Changed Block Tracking is enabled in VM configuration parameters

Cuando se activa CBT en una VM, el VMkernel crea un archivo adicional con -ctk.vmdk en el directorio de la VM que se utiliza para almacenar la asignación de bloques de disco virtual. Este archivo está relacionado con el disco.vmdk respectivo y contiene una lista de bloques cambiados en este disco virtual entre el momento determinado identificado en el último ID de changeset y el estado actual. El tamaño del archivo CTK que se crea permanece invariable y no crece más allá del tamaño original a menos que se aumente el tamaño del disco virtual. El tamaño del archivo CTK es de aproximadamente 5 MB por cada 10 GB de tamaño de disco de la máquina virtual.

The -ctk.vmdk files are created for each virtual disk file when VMware CBT is enabled

La mayoría de las soluciones de backup utilizarán el método del SDK de VMware para habilitar mediante programación la CBT para una máquina virtual y utilizar un ciclo de aturdimiento/desaturdimiento, que incluye el encendido o apagado, la suspensión/reanudación o la creación/eliminación de una instantánea. Durante un ciclo de aturdimiento/desaturdimiento, se inserta un filtro especial de seguimiento de cambios en la pila de almacenamiento de VMware para la máquina virtual en cuestión, lo que permite que CBT se instancie en la máquina virtual.

Cómo comprobar si la CBT está activada

En los casos en los que no haya habilitado CBT manualmente, puede comprobar si el software de backup ha habilitado CBT para hacer backups de VM. Los pasos para comprobar los ajustes de CBT son similares a los pasos para activar esta función. Pero aquí cubriremos un método ligeramente diferente utilizando un archivo de configuración .vmx.

Para comprobar si CBT está activado para la VM, haga lo siguiente:

  1. Abra VMware vSphere Client.
  2. Busque la máquina virtual necesaria y asegúrese de que está apagada.
  3. Vaya a la carpeta VM de un almacén de datos.
  4. Busque un archivo de configuración VM (.vmx).
El archivo de configuración .vmx debe contener la entrada ctkEnabled entrada. El valor de la entrada debe ser «TRUE». Si no es así, cambie el valor a «TRUE» para habilitar CBT para la VM.

Checking the Changed Block Tracking status in the VMX (VM configuration) file

Con la CBT activada, cada disco virtual va acompañado de un archivo xxx-ctk.vmdk, donde «xxx» es un nombre de disco virtual. Si ve estos archivos CTK, indica que la función CBT funciona.

En algunos casos, como el apagado inadecuado del host o un fallo de alimentación, CBT puede perder el rastro de los cambios mientras la máquina virtual está encendida. Esto puede hacer que la CBT se reinicie, lo que significa que todos los datos de la CBT recogidos anteriormente se borrarán y los nuevos datos comenzarán a recogerse a partir del momento del reinicio. Si ejecuta un backup de VM después del reinicio de CBT, se realiza un backup completo. Después de hacer un backup completo y hacer un seguimiento de los nuevos cambios, puede volver a realizar backups incrementales.

Utilización de VMware CBT en NAKIVO Backup & Replication

NAKIVO Backup & Replication es una solución universal de protección de datos que permite hacer backups, recuperar y replicar máquinas virtuales en VMware vSphere. Para acelerar el backup incremental realizado con la solución NAKIVO, CBT está activado por defecto en cualquier nuevo job de backup.

Changed Block Tracking is used for incremental VMware VM backup

Hay varios casos en los que NAKIVO Backup & Replication, como cualquier otra solución de backup de vSphere, no puede utilizar VMware CBT:

  • VMware CBT no es compatible con una VM: Posible causa – El host ESXi es inferior a v4.1, o la versión del Hardware Virtual es inferior a v7.
NOTA: Las versiones 10.6 y posteriores de NAKIVO Backup & Replication no son compatibles con ESXi 5.1 y versiones anteriores.
  • No se proporcionaron datos de VMware CBT: Posible causa – Apagón del host ESXi y CBT perdió el rastro de los cambios incrementales de VM.

En los ajustes adicionales de Seguimiento de cambios, puede encontrar las acciones que debe realizar la solución cuando encuentra un error al utilizar CBT.

What to do with CBT configuration in case of errors

Echemos un vistazo más de cerca a estas acciones On error:

  • Cambio al método propietario: Se utilizará el método propietario de seguimiento de cambios NAKIVO Backup & Replication, que es más lento que VMware CBT y consume más recursos del host ESXi.
  • Restablecer CBT: Se restablecerá la CBT en caso de fallo de la CBT.
  • Fallo en el procesamiento de VM: Se detendrá el procesamiento de VM.

CBT is reset if errors occur

Además, puede especificar cuándo aplicar la acción En caso de error seleccionada:

  • Inmediatamente: En caso de error, la acción se aplica inmediatamente (excepto la acción Reiniciar CBT).
  • En el siguiente reintento: En caso de error la acción se aplica en el siguiente reintento.
  • En el último reintento: La acción de error se aplica en el último reintento.

Configuring error behavior for a backup job with Changed Block Tracking

También puede seleccionar la casilla Comprobar dos veces los bloques modificados proporcionados por CBT. En este caso, los datos proporcionados por VMware CBT se comprobarán adicionalmente con el seguimiento de cambios propietario de NAKIVO Backup & Replication. Este enfoque es más fiable, pero puede ser más lento que el VMware CBT normal.

Conclusión

VMware Changed Block Tracking es una potente función que hace que el proceso de backups sea más rápido y fiable en todos los aspectos. La tecnología está bien probada y se utiliza en gran medida en la tecnología nativa de VMware, como Storage vMotion.

VMware CBT es una parte integral de las modernas soluciones de backup como NAKIVO Backup & Replication que proporcionan backups eficientes de entornos VMware sin carga adicional en los hosts.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Artículos recomendados