Los requisitos de ancho de banda de red y almacenamiento pueden aumentar cuando se utilizan los comandos del sistema operativo invitado trim/unmap con vSphere Replication. También es posible que observe infracciones de RPO.

Sincronización incremental después de usar los comandos trim/unmap del sistema operativo invitado

Llamar a los comandos trim/unmap puede aumentar el consumo de almacenamiento en el sitio de destino.

Después de utilizar los comandos trim/unmap en el disco del sitio de origen, el espacio libre disponible en el disco se agrega a los bloques de datos que vSphere Replication transfiere al sitio de destino durante el siguiente ciclo de RPO. Como resultado, cuando el disco del sitio de origen está menos lleno, el tamaño de los bloques modificados que se transfieren al sitio de destino es mayor.

Por ejemplo, si el disco del sitio de origen tiene 10 TB y solo se asigna 1 TB, llamar a los comandos trim/unmap da como resultado una transferencia de al menos 9 TB al sitio de destino.

Si el disco del sitio de origen tiene 10 TB, de los cuales se asignan 9 TB, y si elimina 2 TB de datos, llamar a los comandos trim/unmap da como resultado una transferencia de al menos 3 TB de datos al sitio de destino.

Debido a la sincronización incremental y según la configuración de RAID definida por la directiva de almacenamiento de máquina virtual en el sitio de destino, el consumo de almacenamiento por parte de la máquina virtual replicada puede ser más de dos veces mayor que el consumo de la máquina virtual de origen.

Nota: Si utiliza los comandos trim/unmap en el sitio de origen, se recomienda configurar la replicación con una compresión de red activada para reducir el ancho de banda de red. Consulte Compresión de datos de replicación y Configurar una replicación.
Nota: Si utiliza los comandos trim/unmap y el almacén de datos de destino es vSAN, para reducir el consumo real de espacio de almacenamiento físico, debe activar la desduplicación y compresión de vSAN. Si no utiliza la desduplicación y compresión, no se recuperará espacio de almacenamiento en el sitio de destino. Incluso después de la desduplicación y compresión, es posible que aún se observen picos de consumo de almacenamiento en la ubicación de destino, pero después de la sincronización y la reconciliación, el espacio de almacenamiento se libera. Para obtener más información sobre la desduplicación y la compresión, consulte Uso de la desduplicación y compresión.

No se puede ver el consumo de almacenamiento por parte de la máquina virtual replicada en el sitio de destino. Solo puede ver el consumo general de todo el almacén de datos de vSAN. Por lo tanto, no puede realizar un seguimiento del espacio de almacenamiento recuperado en el nivel de disco de la máquina virtual, pero sí puede hacerlo observando el espacio libre total que queda en el almacén de datos de vSAN.

Infracciones de objetivos de punto de recuperación después de utilizar los comandos trim/unmap en la máquina virtual de origen

Puede llamar a los comandos trim/unmap manualmente, o bien el sistema operativo invitado puede llamarlos a determinados intervalos de tiempo. En ambos casos, la sincronización después del comando puede tardar una cantidad de tiempo considerable.

El uso de los comandos trim/unmap para recuperar el espacio sin utilizar en la máquina virtual de origen puede generar un gran número de bloques de disco modificados. La sincronización de estos cambios puede tardar más que el RPO configurado y vSphere Replication comienza a informar de infracciones de RPO.

Dado que la replicación está detrás de la programación de RPO, para sincronizar los bloques de disco modificados, se inicia una nueva sincronización incremental tan pronto como se completa la sincronización de la instancia anterior. Este proceso de sincronizaciones incrementales posteriores inmediatas continúa hasta que vSphere Replication crea una instancia de réplica que satisface la programación de RPO y no informa de una infracción de RPO. El estado de replicación pasa a ser Correcto.

Usar el modo de control de cancelación de asignación del controlador de filtro de vSphere Replication

En ESXi 7.0 Update 3 o versiones posteriores, de forma predeterminada, el controlador de filtro vSphere Replication produce un error en los comandos de desasignación (Unmap) de SCSI durante una operación de sincronización si estos comandos anulan el contenido que se transfiere al sitio de destino. El sistema operativo invitado volverá a intentar ejecutar el comando más adelante sin que ello afecte a las aplicaciones que se ejecutan en la máquina virtual. A algunos sistemas operativos invitados no les gusta este comportamiento del controlador de filtro y es posible que no respondan mientras la operación de sincronización está en curso.

En ESXi 7.0 Update 2 o versiones anteriores, existe un modo diferente de procesar la desasignación de hbr_filter donde los comandos Unmap se acomodan preservando el contenido que se transfiere. Algunos sistemas operativos invitados se comportan mejor en este modo, aunque ese método tiene algunas desventajas:

  • Operaciones de lectura y escritura adicionales para preservar las regiones que se superponen, que en un almacenamiento lento podrían provocar retrasos inesperados. Estos retrasos pueden provocar que algunos sistemas operativos invitados emitan restablecimientos de dispositivos durante la operación de sincronización.
  • Aumento temporal del uso de espacio de almacenamiento por parte del contenido del disco conservado.

Requisitos previos

  • En ESXi 7.0 Update 3 o versiones posteriores, puede retornar el comportamiento anterior usando la configuración avanzada de ESXi

Procedimiento

  1. Para permitir trim/unmap durante las operaciones de sincronización, ejecute el siguiente comando en el host ESXi en el que está funcionando la máquina virtual:
    $ esxcli system settings advanced set -o /HBR/DemandlogFailCollidingUnmap -i 0
  2. Para no permitir trim/unmap durante las operaciones de sincronización, utilice el siguiente comando que se ejecuta en el host ESXi en el que está funcionando la máquina virtual:
    $ esxcli system settings advanced set -o /HBR/DemandlogFailCollidingUnmap -i 1