Recomendaciones para el diseño de varias regiones de alta disponibilidad

Se aplica a esta recomendación de lista de comprobación de confiabilidad del marco de trabajo bien diseñado de Azure:

RE:05 Agregue redundancia en distintos niveles, especialmente para los flujos críticos. Aplique redundancia al proceso, los datos, la red y otros niveles de infraestructura de acuerdo con los objetivos de confiabilidad identificados.

Guías relacionadas: Redundancia | mediante zonas de disponibilidad y regiones

En esta guía se describen las recomendaciones para diseñar un entorno de nube de varias regiones de alta disponibilidad. La alta disponibilidad es una red básica de diseño para la confiabilidad. Una arquitectura de alta disponibilidad puede ayudarle a evitar el tiempo de inactividad tanto como sea posible y recuperarse de forma eficaz si se produce un tiempo de inactividad.

Active-active y active-passive son tipos de arquitectura generales que se pueden aplicar de diferentes maneras, en función de la plataforma en la que implemente el entorno. Esta guía se centra en un diseño de entorno de nube de varias regiones. En Azure, también puede diseñar una arquitectura activa-activa o activa-pasiva dentro de una sola región mediante zonas de disponibilidad. Para obtener instrucciones detalladas sobre cómo diseñar una arquitectura de alta disponibilidad mediante zonas de disponibilidad, consulte la guía de Azure Well-Architected Framework.

Estrategias de diseño principales

Activo-activo y activo-pasivo son los dos enfoques fundamentales para diseñar un entorno de nube de alta disponibilidad. Los entornos activos y activos están diseñados para controlar las cargas de producción en cada región en la que implemente la carga de trabajo. Los entornos activos-pasivos están diseñados para controlar las cargas de producción solo en la región primaria, pero conmutan por error a la región secundaria (pasiva) cuando sea necesario. La selección de las mejores regiones de Azure para la carga de trabajo es una parte clave del diseño de un entorno de varias regiones de alta disponibilidad. Para obtener instrucciones sobre cómo seleccionar regiones de Azure, consulte la guía Seleccionar regiones de Azure.

En esta sección se describen las opciones de diseño que debe tener en cuenta al evaluar cada patrón y refinar la arquitectura para satisfacer los requisitos empresariales.

Consulte Patrón de stamps de implementación para obtener instrucciones sobre cómo diseñar la carga de trabajo de forma repetible y escalable. Este patrón de diseño puede ayudarle a optimizar el diseño de alta disponibilidad para una administración eficaz.

En las secciones siguientes se describen las opciones de diseño de los dos patrones.

Implementación en activo-activo para un tiempo de inactividad cero

  • Activo-activo a la capacidad: marcas de implementación reflejadas en dos o más regiones de Azure, cada una configurada para controlar las cargas de trabajo de producción de la región o regiones que sirven y escalables para controlar las cargas de otras regiones en caso de una interrupción regional.

    • Redes: use la latencia o el enrutamiento global ponderado para distribuir el tráfico entre regiones.

    • Replicación y coherencia de datos: use un almacén de datos distribuido globalmente como Azure Cosmos DB para funcionalidades de lectura y escritura en varias regiones. Para las bases de datos relacionales, use réplicas legibles con cadena de conexión de solo lectura.

    • Ventaja de este diseño: menor costo operativo que un diseño sobreaprovisionado.

    • Desventaja de este diseño: posible degradación de la experiencia del usuario al escalar verticalmente para satisfacer las demandas de una carga completa si otra región experimenta una interrupción.

  • Sobreaprovisionado activo-activo: marcas de implementación reflejadas en dos o más regiones de Azure, cada una de ellas sobreaprovisionada para controlar las cargas de trabajo de producción de la región o regiones que sirven y controlar las cargas de otras regiones en caso de una interrupción regional.

    • Redes: use la latencia o el enrutamiento global ponderado para distribuir el tráfico entre regiones.

    • Replicación y coherencia de datos: use un almacén de datos distribuido globalmente como Azure Cosmos DB para funcionalidades de lectura y escritura en varias regiones. Para las bases de datos relacionales, use réplicas legibles con cadena de conexión de solo lectura.

    • Ventaja de este diseño: el diseño más resistente posible.

    • Desventaja de este diseño: mayores costos operativos que un diseño escalable.

  • Ventajas comunes de ambos diseños: alta resistencia y bajo riesgo de interrupción completa de la carga de trabajo.

  • Desventajas comunes de ambos diseños: mayores costos operativos y carga de administración debido a diversos factores, incluida la necesidad de administrar la sincronización del estado de la aplicación y los datos.

Implementación en activo-pasivo para la recuperación ante desastres

  • Reserva activa: una región primaria y una o varias regiones secundarias. La región secundaria se implementa con el tamaño mínimo posible de proceso y datos y se ejecuta sin carga. Esta región se conoce como una región de reserva cálida. Tras la conmutación por error, los recursos de proceso y de datos se escalan para controlar la carga desde la región primaria.

    • Redes: use el enrutamiento global prioritario .

    • Replicación y coherencia de datos: replique la base de datos en la región pasiva y use las funcionalidades de conmutación automática por error de soluciones de plataforma como servicio (PaaS), como Azure Cosmos DB y Azure SQL Database.

    • Ventaja de este diseño: menor tiempo de recuperación entre los diseños activos-pasivos.

    • Desventaja de este diseño: mayor costo operativo entre los diseños activos-pasivos.

  • Reserva en frío: una región primaria y una o varias regiones secundarias. La región secundaria se escala para controlar la carga completa, pero se detienen todos los recursos de proceso. Esta región se conoce como región de reserva fría. Debe iniciar los recursos antes de la conmutación por error.

    • Redes: use el enrutamiento global prioritario .

    • Replicación y coherencia de datos: replique la base de datos en la región pasiva y use las funcionalidades de conmutación automática por error de las soluciones PaaS, como Azure Cosmos DB y Azure SQL Database.

    • Ventaja de este diseño: menores costos operativos que el diseño de reserva caliente.

    • Desventaja de este diseño: tiempo de recuperación más largo que el diseño de reserva caliente.

  • Reimplementación en caso de desastre: una región primaria y una o varias regiones secundarias. Solo se implementan las redes necesarias en la región secundaria. Los operadores deben ejecutar scripts de aprovisionamiento en la región secundaria para conmutar por error las cargas de trabajo. Este diseño se conoce como reimplementación en caso de desastre.

    • Redes: use el enrutamiento global prioritario .

    • Replicación y coherencia de datos: implemente nuevas instancias de base de datos y rehidrata los datos de las copias de seguridad.

    • Ventaja de este diseño: menores costos operativos.

    • Desventaja de este diseño: tiempo de recuperación más largo.

  • Ventajas comunes de los diseños activos-pasivos: menores costos operativos y menos carga de administración diaria que los diseños activos-activos. No es necesario sincronizar el estado de la aplicación.

  • Desventajas comunes de los diseños activos-pasivos: proceso de recuperación más largo y complejo. Mayor probabilidad de necesitar intervención manual para una conmutación por error correcta.

Nota:

Independientemente del diseño de alta disponibilidad, recuerde configurar la redundancia para los servicios auxiliares, como la infraestructura de Azure DevOps, los jump boxes, la supervisión y cualquier otro servicio crítico necesario para administrar la carga de trabajo.

Facilitación de Azure

  • Azure Front Door combina la funcionalidad de enrutamiento global de Azure Traffic Manager con un sistema de entrega de contenido y un firewall de aplicaciones web para ayudarle a administrar la carga de trabajo de alta disponibilidad.

  • Azure Cosmos DB es una plataforma de base de datos NoSQL distribuida globalmente que puede ayudarle a ejecutar un entorno activo-activo y minimizar la posibilidad de tiempo de inactividad cuando se produce una interrupción regional.

Lista de comprobación de confiabilidad

Consulte el conjunto completo de recomendaciones.