Always On Availability Group

La función de grupos de disponibilidad Always On es una solución de alta disponibilidad y recuperación ante desastres que proporciona una alternativa de nivel empresarial a la creación de reflejo de la base de datos. Introducidos en SQL Server 2012 (11.x), los grupos de disponibilidad AlwaysOn maximizan la disponibilidad de un conjunto de bases de datos de usuarios para una empresa.

Un grupo de disponibilidad admite un entorno de conmutación por error para un conjunto discreto de bases de datos de usuario, conocidas como bases de datos de disponibilidad, que se conmutan por error juntas. Un grupo de disponibilidad admite un conjunto de bases de datos principales de lectura y escritura y de uno a ocho conjuntos de bases de datos secundarias correspondientes. Opcionalmente, las bases de datos secundarias pueden estar disponibles para acceso de solo lectura y/o algunas operaciones de respaldo.

 

¿Qué es?

Un grupo de disponibilidad conmuta por error en el nivel de una réplica de disponibilidad. Las conmutaciones por error no son causadas por problemas de la base de datos, como que una base de datos se vuelva sospechosa debido a la pérdida de un archivo de datos, la eliminación de una base de datos o la corrupción de un registro de transacciones.

Cada conjunto de base de datos de disponibilidad está alojado en una réplica de disponibilidad. Existen dos tipos de réplicas de disponibilidad: una única réplica principal, que hospeda las bases de datos principales y de una a ocho réplicas secundarias, cada una de las cuales hospeda un conjunto de bases de datos secundarias y sirve como posibles destinos de conmutación por error para el grupo de disponibilidad.

La réplica principal hace que las bases de datos principales estén disponibles para las conexiones de lectura y escritura de los clientes. La réplica principal envía registros de transacciones de cada base de datos principal a cada base de datos secundaria.

Este proceso, conocido como sincronización de datos, ocurre en el nivel de la base de datos. Cada réplica secundaria almacena en caché los registros del registro de transacciones (refuerza el registro) y luego los aplica a su base de datos secundaria correspondiente.

 

La sincronización

La sincronización de datos se produce entre la base de datos principal y cada base de datos secundaria conectada, independientemente de las demás bases de datos. Por lo tanto, una base de datos secundaria puede suspenderse o fallar sin afectar a otras bases de datos secundarias, y una base de datos primaria puede suspenderse o fallar sin afectar a otras bases de datos primarias.

Opcionalmente, puede configurar una o más réplicas secundarias para admitir el acceso de solo lectura a las bases de datos secundarias y puede configurar cualquier réplica secundaria para permitir copias de seguridad en bases de datos secundarias.

SQL Server 2017 introdujo dos arquitecturas diferentes para los grupos de disponibilidad. Los grupos de disponibilidad Always On proporcionan alta disponibilidad, recuperación ante desastres y equilibrio de escala de lectura. Estos grupos de disponibilidad requieren un administrador de clústeres. En Windows, la función de agrupación en clústeres de conmutación por error proporciona el administrador de clústeres.

En Linux, puede usar Pacemaker. La otra arquitectura es un grupo de disponibilidad de escala de lectura. Un grupo de disponibilidad de escala de lectura proporciona réplicas para cargas de trabajo de solo lectura, pero no para alta disponibilidad. En un grupo de disponibilidad de escala de lectura, no hay un administrador de clústeres, ya que la conmutación por error no puede ser automática.

La implementación de grupos de disponibilidad AlwaysOn para HA en Windows requiere un clúster de conmutación por error de Windows Server (WSFC). Cada réplica de disponibilidad de un grupo de disponibilidad determinado debe residir en un nodo diferente del mismo WSFC. La única excepción es que, mientras se migra a otro clúster de WSFC, un grupo de disponibilidad puede abarcar temporalmente dos clústeres.

 

¿Qué beneficios aporta?

Los grupos de disponibilidad Always On proporcionan un amplio conjunto de opciones que mejoran la disponibilidad de la base de datos y permiten un mejor uso de los recursos. Los componentes clave son los siguientes:

  1. Admite hasta nueve réplicas de disponibilidad. Una réplica de disponibilidad es una instanciación de un grupo de disponibilidad hospedado por una instancia específica de SQL Server y mantiene una copia local de cada base de datos de disponibilidad que pertenece al grupo de disponibilidad. Cada grupo de disponibilidad admite una réplica principal y hasta ocho réplicas secundarias. Para obtener más información, consulte Información general sobre los grupos de disponibilidad AlwaysOn (SQL Server)
  2. Admite modos de disponibilidad alternativos, de la siguiente manera:
  • Modo de confirmación asíncrona. Este modo de disponibilidad es una solución de recuperación ante desastres que funciona bien cuando las réplicas de disponibilidad se distribuyen a distancias considerables.
  • Modo de confirmación síncrona. Este modo de disponibilidad enfatiza la alta disponibilidad y la protección de datos sobre el rendimiento, a costa de una mayor latencia de transacciones. Un grupo de disponibilidad determinado puede admitir hasta cinco réplicas de disponibilidad de confirmación sincrónica, incluida la réplica principal actual.
  • SQL Server 2019 (15.x) aumenta la cantidad máxima de réplicas síncronas a 5, frente a las 3 de SQL Server 2017 (14.x). Puede configurar este grupo de cinco réplicas para tener una conmutación por error automática dentro del grupo. Hay una réplica principal, más cuatro réplicas secundarias sincrónicas.

 

  1. Admite varias formas de conmutación por error del grupo de disponibilidad: conmutación por error automática, conmutación por error manual planificada (generalmente denominada simplemente «conmutación por error manual») y conmutación por error manual forzada (generalmente denominada simplemente «conmutación por error forzada»). Para obtener más información, consulte Conmutación por error y Modos de conmutación por error (grupos de disponibilidad siempre activos)

Le permite configurar una réplica de disponibilidad dada para admitir una o ambas de las siguientes capacidades secundarias activas:

  • Acceso de conexión de solo lectura que permite conexiones de solo lectura a la réplica para acceder y leer sus bases de datos cuando se ejecuta como una réplica secundaria. Para obtener más información, consulte Secundarios activos: réplicas secundarias legibles (grupos de disponibilidad siempre activos)
  • Realizar operaciones de respaldo en sus bases de datos cuando se ejecuta como una réplica secundaria. Para obtener más información, consulte Secundarios activos: copia de seguridad en réplicas secundarias (grupos de disponibilidad siempre activos).
  • El uso de capacidades secundarias activas mejora la eficiencia de TI y reduce los costos a través de una mejor utilización de los recursos del hardware secundario. Además, la descarga de aplicaciones de intención de lectura y trabajos de copia de seguridad en réplicas secundarias ayuda a mejorar el rendimiento en la réplica principal.
  1. Admite un agente de escucha de grupo de disponibilidad para cada grupo de disponibilidad. Un agente de escucha de grupo de disponibilidad es un nombre de servidor al que los clientes pueden conectarse para acceder a una base de datos en una réplica principal o secundaria de un grupo de disponibilidad AlwaysOn.

Los agentes de escucha del grupo de disponibilidad dirigen las conexiones entrantes a la réplica principal o a una réplica secundaria de solo lectura. El agente de escucha proporciona una conmutación por error rápida de la aplicación después de que un grupo de disponibilidad conmuta por error. Para obtener más información, consulte Agentes de escucha del grupo de disponibilidad, conectividad del cliente y conmutación por error de la aplicación (SQL Server).

  1. Admite una política de conmutación por error flexible para un mayor control sobre la conmutación por error del grupo de disponibilidad. Para obtener más información, consulte Conmutación por error y Modos de conmutación por error (grupos de disponibilidad siempre activos).
  2. Admite la reparación automática de páginas para la protección contra la corrupción de páginas. Para obtener más información, consulte Reparación automática de páginas (Grupos de disponibilidad: creación de reflejo de la base de datos).