Descripción de las características de alta disponibilidad y recuperación ante desastres de Azure de Azure Virtual Machines
Azure proporciona tres opciones principales para mejorar la disponibilidad de las implementaciones de IaaS:
Conjuntos de disponibilidad
Zonas de disponibilidad
Azure Site Recovery
Las tres opciones son externas a la máquina virtual (VM) y desconocen el tipo de carga de trabajo que se ejecuta dentro de ella.
Conjuntos de disponibilidad
Los conjuntos de disponibilidad proporcionan tiempo de actividad frente al mantenimiento relacionado con Azure y puntos únicos de error en un solo centro de datos. Fue una de las primeras características de disponibilidad introducidas en la plataforma Azure y, de hecho, se puede considerar como reglas antiafinidad para las máquinas virtuales. Esto significa que si tuviera dos máquinas virtuales con SQL Server en un par de conjunto de disponibilidad o trasvase de registros, nunca se ejecutarían en el mismo servidor físico.
Los conjuntos de disponibilidad se separan en dominios de error y de actualización para admitir los dos tipos de actualización en la infraestructura subyacente de Azure. Los dominios de error son conjuntos de servidores dentro de un centro de datos, que usan la misma fuente de alimentación y la misma red; puede haber hasta tres dominios de error en un centro de datos, como se muestra en la imagen siguiente (FD 0, 1 y 2). Los dominios de actualización (UD en la imagen siguiente) indican grupos de máquinas virtuales y hardware físico subyacente que se pueden reiniciar al mismo tiempo. Los diferentes dominios de actualización garantizan la separación.
Los conjuntos de disponibilidad y las zonas no protegen frente a errores en el invitado, como un bloqueo del sistema operativo o RDBMS; por este motivo es necesario implementar soluciones adicionales, como GD o FCI, para asegurarse de cumplir los RTO y RPO. Los conjuntos de disponibilidad y las zonas están diseñados para limitar el impacto de los problemas del entorno en el nivel de Azure, como los errores de centro de datos o de hardware físico, y las interrupciones de la red y la alimentación.
En el caso de una aplicación de varios niveles, debe colocar cada nivel en un conjunto de disponibilidad propio. Por ejemplo, si va a crear una aplicación web que tiene un back-end de SQL Server junto con Active Directory Domain Services (AD DS), tendrá que crear un conjunto de disponibilidad para cada nivel (web, base de datos y AD DS).
Los conjuntos de disponibilidad no son la única manera de separar las VM de IaaS. Azure también proporciona zonas de disponibilidad, pero no se pueden combinar los dos. Tendrá que elegir una de las dos opciones.
Zonas de disponibilidad
Las zonas de disponibilidad tienen en cuenta los errores de nivel de centro de datos en Azure. Cada región de Azure se compone de muchos centros de datos con conexiones de red de baja latencia entre ellos. Al implementar recursos de máquina virtual en una región que admite Availability Zones, tiene la opción de implementarlos en la zona 1, 2 o 3. Una zona es una ubicación física única, es decir, un centro de datos, dentro de una región de Azure.
Los números de zona son representaciones lógicas. Por ejemplo, si dos suscriptores de Azure implementan una VM en la Zona 1 de sus propias suscripciones, eso no significa que esas VM existan en el mismo centro de datos físico de Azure. Además, debido a la distancia, puede haber cierta latencia adicional introducida en las implementaciones de las zonas. Debe probar la latencia entre las máquinas virtuales para asegurarse de que cumpla los objetivos de rendimiento. En la mayoría de los casos, la latencia de ida y vuelta será inferior a 1 milisegundo, lo que admite el movimiento de datos sincrónico en características como los grupos de disponibilidad. También puede implementar Azure SQL Database en Availability Zones.
Azure Site Recovery
Azure Site Recovery proporciona disponibilidad mejorada para las máquinas virtuales en el nivel de Azure y puede funcionar con máquinas virtuales en las que se hospeda SQL Server. Azure Site Recovery replica una máquina virtual de una región de Azure en otra para crear una solución de recuperación ante desastres para esa máquina virtual. Como se ha indicado antes, esta característica desconoce que SQL Server se ejecuta en la máquina virtual y tampoco sabe nada de las transacciones. Si bien Azure Site Recovery puede cumplir el RTO, es posible que no cumpla el RPO, ya que no tiene en cuenta dónde se encuentran los datos dentro de SQL Server. Azure Site Recovery tiene un RTO mensual determinado de dos horas. Aunque la mayoría de los profesionales de base de datos pueden preferir usar un método basado en la base de datos para la recuperación ante desastres, Azure Site Recovery funciona bien si satisface las necesidades de RTO y RPO.