Configuración de un grupo de disponibilidad entre regiones de Azure: SQL Server en máquinas virtuales de Azure

Se aplica a:SQL Server en VM de Azure

En este tutorial se explica cómo configurar una réplica de grupo de disponibilidad Always On para SQL Server en máquinas virtuales (VM) de Azure en una región de Azure remota con respecto a la réplica principal. Puede usar esta configuración para la recuperación ante desastres (DR).

Puede seguir los mismos pasos de este artículo para ampliar el grupo de disponibilidad local a Azure.

Este tutorial se basa en el tutorial para implementar manualmente un grupo de disponibilidad en una sola subred en una sola región. Las menciones a la región local en este artículo se refieren a las máquinas virtuales y al grupo de disponibilidad configurados en la primera región. La región remota es la nueva infraestructura que se va a agregar en este tutorial.

Información general

La siguiente imagen muestra una implementación común de un grupo de disponibilidad en Azure Virtual Machines:

Diagram that shows an Azure load balancer and an availability set with a Windows Server failover cluster and Always On availability group.

En la implementación que se muestra en el diagrama, todas las máquinas virtuales se encuentran en una región de Azure. Las réplicas del grupo de disponibilidad pueden tener confirmación sincrónica con conmutación por error automática en SQL-1 y SQL-2. Para crear esta arquitectura, consulte la plantilla o tutorial del grupo de disponibilidad.

Esta arquitectura es vulnerable al tiempo de inactividad si la región de Azure deja de estar accesible. Para superar esta vulnerabilidad, agregue una réplica en una región distinta de Azure. El diagrama siguiente muestra el aspecto que tiene la nueva arquitectura:

Diagram of a disaster recovery scenario for an availability group.

El diagrama muestra una nueva máquina virtual denominada SQL-3. SQL-3 está en una región distinta de Azure. Se agrega al clúster de conmutación por error de Windows Server y puede hospedar una réplica de grupo de disponibilidad.

La región de Azure para SQL-3 tiene un nuevo equilibrador de carga de Azure. En esta arquitectura, la réplica en la región remota se suele configurar con el modo de disponibilidad de confirmación asincrónica y el modo de conmutación por error manual.

Nota:

Se requiere un conjunto de disponibilidad de Azure cuando haya más de una máquina virtual en la misma región. Si solo hay una máquina virtual en la región, el conjunto de disponibilidad no es necesario.

Solo puede colocar una máquina virtual en un conjunto de disponibilidad en el momento de la creación. Si la máquina virtual ya está en un conjunto de disponibilidad, puede agregar una máquina virtual para una réplica adicional más adelante.

Cuando las réplicas del grupo de disponibilidad están en máquinas virtuales de Azure en distintas regiones de Azure, puede conectar las redes virtuales mediante la opción Emparejamiento de red virtual o una puerta de enlace de VPN de sitio a sitio.

Importante

Esta arquitectura incurre en cargos por datos de salida para datos replicados entre regiones de Azure. Consulte Detalles de precios de ancho de banda.

Creación de la red y la subred

Antes de crear una red virtual y una subred en una nueva región, decida el espacio de direcciones, la red de la subred, la dirección IP del clúster y las direcciones IP de escucha de grupo de disponibilidad que usará para la región remota.

En la tabla siguiente se indican los detalles sobre la región local (actual) y qué se configurará en la nueva región remota.

Tipo Local Región remota
Espacio de direcciones 192.168.0.0/16 10.36.0.0/16
Red de subred 192.168.15.0/24 10.36.1.0/24
IP del clúster 192.168.15.200 10.36.1.200
Dirección IP de escucha de grupo de disponibilidad 192.168.15.201 10.36.1.201

Para crear una red virtual y una subred en la nueva región en Azure Portal:

  1. Vaya al grupo de recursos en Azure Portal y seleccione + Crear.

  2. Busque red virtual en el cuadro de búsqueda de Marketplace y seleccione el icono Red virtual de Microsoft.

  3. En la página Crear red virtual, seleccione Crear. A continuación, introduzca la siguiente información en la pestaña Aspectos básicos:

    1. En Detalles del proyecto, en Suscripción, seleccione la suscripción de Azure adecuada. En Grupo de recursos, seleccione el grupo de recursos que ha creado anteriormente, como SQL-HA-RG.
    2. En Detalles de la instancia, proporcione un nombre para la red virtual, como remote_HAVNET. A continuación, elija una nueva región remota.

    Screenshot of the Azure portal that shows selections for creating a virtual network in a remote region.

  4. En la pestaña Direcciones IP, seleccione los puntos suspensivos (...) junto a + Agregar una subred. Seleccione Eliminar espacio de direcciones para quitar el espacio de direcciones existente, en caso de necesitar un intervalo de direcciones diferente.

    Screenshot of the Azure portal that shows selections for deleting the existing address space in a virtual network.

  5. Seleccione Agregar un espacio de direcciones IP para abrir el panel a fin de crear el espacio de direcciones que necesita. En este tutorial se usa el espacio de direcciones de la región remota: 10.36.0.0/16. Seleccione Agregar.

    Screenshot of the Azure portal that shows selections for adding an address space for a virtual network.

  6. Seleccione + Agregar una subred y, a continuación, haga lo siguiente:

    1. Proporcione un valor para Nombre de subred, como admin.

    2. Proporcione un intervalo de direcciones de subred único dentro del espacio de direcciones de la red virtual.

      Por ejemplo, si el intervalo de direcciones es 10.36.0.0/16, escriba estos valores para la subred admin: 10.36.1.0 para Dirección inicial y /24 para Tamaño de subred.

    3. Seleccione Agregar para agregar la nueva subred.

    Screenshot of the Azure portal that shows selections for adding a subnet to a virtual network.

Conexión de las redes virtuales en las dos regiones de Azure

Una vez que haya creado la nueva red virtual y la subred, estará listo para conectar las dos regiones de modo que puedan comunicarse entre sí. Hay dos métodos para hacerlo:

En este tutorial se usa el emparejamiento de red virtual. Para configurar el emparejamiento de red virtual:

  1. En el cuadro de búsqueda de la parte superior de Azure Portal, escriba autoHAVNET, que es la red virtual de la región local. Seleccione autoHAVNET cuando aparezca en los resultados de búsqueda.

  2. En Configuración seleccione Emparejamientos y, después, seleccione + Agregar.

    Screenshot of the Azure portal that shows selections for adding a virtual network peering.

  3. Escriba o seleccione la siguiente información, acepte los valores predeterminados para el resto de la configuración y, luego, seleccione Agregar.

    Configuración Valor
    Esta red virtual
    Nombre del vínculo de emparejamiento Escriba autoHAVNET-remote_HAVNET como nombre del emparejamiento de autoHAVNET a la red virtual remota.
    Red virtual remota
    Nombre del vínculo de emparejamiento Escriba remote_HAVNET-autoHAVNET como nombre del emparejamiento de la red virtual remota a autoHAVNET.
    Suscripción Seleccione la suscripción de la red virtual remota.
    Red virtual Seleccione remote_HAVNET como nombre de la red virtual remota. La red virtual remota puede estar en la misma región de autoHAVNET o en otra región.

    Screenshot of the Azure portal that shows peering settings.

  4. En la página Emparejamientos, el Estado de emparejamiento es Conectado.

    Screenshot of the Azure portal that shows a Connected status for virtual network peering.

    Si no ve un estado Conectado, seleccione el botón Actualizar.

Creación de un controlador de dominio

Un controlador de dominio en la nueva región es necesario para proporcionar autenticación si el sitio principal no está disponible. Para crear un controlador de dominio en la nueva región, haga lo siguiente:

  1. Vuelva al grupo de recursos SQL-HA-RG.
  2. Seleccione + Create (+ Crear).
  3. Escriba Windows Server 2016 Datacenter y, a continuación, seleccione el resultado Windows Server 2016 Datacenter.
  4. En Windows Server 2016 Datacenter, compruebe que el modelo de implementación sea Resource Manager y seleccione Crear.

La siguiente tabla muestra la configuración de las dos máquinas:

Configuración Value
Nombre Controlador de dominio remoto: ad-remote-dc
Tipo de disco de máquina virtual SSD
Nombre de usuario DomainAdmin
Contraseña Contoso!0000
Suscripción Su suscripción
Grupos de recursos SQL-HA-RG
Ubicación Su ubicación
Tamaño DS1_V2
Storage Uso de discos administrados:
Red virtual remote_HAVNET
Subred admin
Dirección IP pública Mismo nombre que la máquina virtual
Grupo de seguridad de red Mismo nombre que la máquina virtual
Diagnóstico habilitado
Cuenta de almacenamiento de información de diagnóstico Se crea automáticamente

Azure crea las máquinas virtuales.

Configuración del controlador de dominio

En los pasos siguientes, configurará la máquina ad-remote-dc como controlador de dominio para corp.contoso.com:

Establecimiento de la dirección del servidor DNS preferido

La dirección del servidor DNS preferida no debe actualizarse directamente dentro de una máquina virtual, sino que se debe modificar desde Azure Portal, PowerShell o la CLI de Azure. Los pasos siguientes son para realizar el cambio dentro de Azure Portal:

  1. Inicie sesión en el Portal de Azure.

  2. En el cuadro de búsqueda que aparece en la parte superior del portal, escriba Interfaz de red. En los resultados de búsqueda, seleccione Interfaces de red.

  3. En la lista, seleccione la interfaz de red del segundo controlador de dominio para el que quiere ver o cambiar la configuración.

  4. En Configuración, seleccione Servidores DNS.

  5. Dado que este controlador de dominio no está en la misma red virtual que el controlador de dominio principal, seleccione Personalizado y escriba la dirección IP del controlador de dominio principal, como 192.168.15.4. La dirección del servidor DNS especificado se asigna solo a esta interfaz de red y reemplaza cualquier configuración DNS de la red virtual a la que está asignada la interfaz de red.

  6. Seleccione Guardar.

  7. Vuelva a la máquina virtual en Azure Portal y reinicie la VM. Una vez reiniciada la máquina virtual, puede unir la VM al dominio.

Unir al dominio

A continuación, únase al dominio corp.contoso.com. Para ello, siga estos pasos:

  1. Conéctese de forma remota a la máquina virtual con la cuenta BUILTIN\DomainAdmin.
  2. Abra Administrador del servidor y seleccione Servidor local.
  3. Seleccione WORKGROUP.
  4. En la sección Nombre de equipo, seleccione Cambiar.
  5. Seleccione la casilla Dominio y escriba corp.contoso.com en el cuadro de texto. Seleccione Aceptar.
  6. En el cuadro de diálogo emergente Seguridad de Windows, especifique las credenciales de la cuenta de administrador del dominio predeterminado (CORP\DomainAdmin) y la contraseña (Contoso!0000).
  7. Cuando vea el mensaje "Bienvenida al dominio corp.contoso.com", seleccione Aceptar.
  8. Seleccione Cerrar y luego Reiniciar ahora en el cuadro de diálogo emergente.

Configuración del controlador de dominio

Una vez que el servidor se haya unido al dominio, puede configurarlo como el segundo controlador de dominio. Para ello, siga estos pasos:

  1. Si aún no está conectado, abra una sesión RDP en el controlador de dominio secundario y abra el panel Administrador del servidor (que puede estar abierto de manera predeterminada).

  2. Seleccione el vínculo Agregar roles y características en el panel.

    Server Manager - Add roles

  3. Seleccione Siguiente hasta llegar a la sección Roles de servidor.

  4. Seleccione los roles Active Directory Domain Services y Servidor DNS. Cuando se le pida, agregue características adicionales que son necesarias para estos roles.

  5. Cuando terminen de instalarse las características, vuelva al panel Administrador del servidor .

  6. Seleccione la nueva opción AD DS en el panel izquierdo.

  7. Seleccione el vínculo Más en la barra de advertencia amarilla.

  8. En la columna Acción del cuadro de diálogo Todos los detalles de la tarea del servidor, seleccione Promover este servidor a controlador de dominio.

  9. En Configuración de implementación, seleccione Agregar un controlador de dominio a un dominio existente.

  10. Haga clic en Seleccionar.

  11. Conéctese con la cuenta de administrador (CORP.CONTOSO.COM\domainadmin) y la contraseña (Contoso!0000).

  12. En Seleccionar un dominio del bosque, elija el dominio y, después, seleccione Aceptar.

  13. En Opciones del controlador de dominio, utilice los valores predeterminados y establezca una contraseña de DSRM.

    Nota:

    La página Opciones de DNS puede avisarle de que no se puede crear una delegación de este servidor DNS. Puede pasar por alto esta advertencia en entornos de no producción.

  14. Seleccione Siguiente hasta que se muestre la casilla Requisitos previos. A continuación, seleccione Instalar.

Después de que el servidor complete los cambios de configuración, reinícielo.

Creación de una máquina virtual con SQL Server

Tras el reinicio del controlador de dominio, el siguiente paso consiste en crear una máquina virtual de SQL Server en la nueva región.

Tenga en cuenta las siguientes decisiones de diseño antes de continuar:

  • Almacenamiento: discos administrados de Azure

    Para el almacenamiento de máquina virtual, use discos administrados de Azure. Se recomiendan discos administrados para máquinas virtuales de SQL Server. Los discos administrados controlan el almacenamiento en segundo plano. Además, cuando las máquinas virtuales con discos administrados están en el mismo conjunto de disponibilidad, Azure distribuye los recursos de almacenamiento para proporcionar la redundancia adecuada.

    Para más información, consulte Introducción a Azure Managed Disks. Para obtener información específica acerca de los discos administrados en un conjunto de disponibilidad, consulte Uso de discos administrados para las máquinas virtuales de un conjunto de disponibilidad.

  • Red: direcciones IP privadas en producción

    Para las máquinas virtuales, este tutorial usa direcciones IP públicas. Una dirección IP pública permite conectarse de forma remota directamente a la máquina virtual a través de Internet y facilita los pasos de configuración. En entornos de producción, solo se recomiendan direcciones IP privadas. Las direcciones IP privadas reducen la superficie de vulnerabilidad de la VM con SQL Server.

  • Red: NIC única por servidor

    Use una tarjeta de interfaz de red (NIC) única por servidor (nodo de clúster) y una sola subred. La red de Azure tiene redundancia física, que hace que las NIC y subredes adicionales sean innecesarias en un clúster invitado de VM de Azure. El informe de validación de clúster le avisará de que solo se puede tener acceso a los nodos en una sola red. Puede omitir esta advertencia en los clústeres de conmutación por error invitados de máquinas virtuales de Azure.

Creación y configuración de VM con SQL Server

Para crear VM con SQL Server, vuelva al grupo de recursos SQL-HA-RG y, después, seleccione Agregar. Busque el elemento de la galería adecuado, seleccione Máquina virtual y, después, seleccione De la galería. Use la información de la tabla siguiente para ayudarlo a crear las máquinas virtuales:

Página Configuración
Selección del elemento adecuado de la galería SQL Server 2016 SP1 Enterprise en Windows Server 2016
Configuración de máquina virtual: Datos básicos Nombre = sqlserver-2

Nombre de usuario = DomainAdmin

Contraseña = Contoso!0000

Suscripción = su suscripción

Grupo de recursos = SQL-HA-RG

Ubicación = su región remota
Configuración de máquina virtual: Tamaño Tamaño = DS2_V2 (2 vCPU, 7 GB)

El tamaño debe admitir el almacenamiento SSD (soporte de disco premium).
Configuración de máquina virtual: Configuración Almacenamiento: Usar discos administrados

Red virtual = remote-HAVNET

Subred = admin (10.36.1.0/24)

Dirección IP pública = generada automáticamente

Grupo de seguridad de red = Ninguno

Diagnósticos de supervisión = habilitado

Cuenta de almacenamiento de diagnósticos = Usar una cuenta de almacenamiento generada automáticamente

Configuración de máquina virtual: Configuración de SQL Server Conectividad de SQL = privado (dentro de la red virtual)

Puerto = 1433

Autenticación SQL = deshabilitada

Configuración de almacenamiento = General

Aplicación de revisiones automatizada = domingo a las 2:00

Copia de seguridad automatizada = deshabilitada

Integración de Azure Key Vault = Deshabilitada

Nota

El tamaño de máquina que se sugiere aquí está diseñado para probar los grupos de disponibilidad en máquinas virtuales de Azure. Para optimizar el rendimiento de las cargas de trabajo de producción, consulte las recomendaciones de tamaños de máquina y la configuración de SQL Server en Lista de comprobación: Procedimientos recomendados de SQL Server en máquinas virtuales de Azure.

Una vez que la máquina virtual esté totalmente aprovisionada, tendrá que unirla al dominio corp.contoso.com y conceder a CORP\Install los derechos administrativos sobre las máquinas.

Unión del servidor al dominio

Para unir la máquina virtual a corp.contoso.com, siga los pasos siguientes para la VM con SQL Server:

  1. Conéctese de forma remota a la máquina virtual mediante BUILTIN\DomainAdmin.
  2. En el Administrador del servidor, seleccione Servidor local.
  3. Seleccione el vínculo GRUPO DE TRABAJO.
  4. En la sección Nombre de equipo, seleccione Cambiar.
  5. Active la casilla Dominio y escriba corp.contoso.com en el cuadro de texto. Después, seleccione Aceptar.
  6. En el cuadro de diálogo emergente Seguridad de Windows, especifique las credenciales de la cuenta de administrador del dominio predeterminado (CORP\DomainAdmin) y la contraseña (Contoso!0000).
  7. Cuando vea el mensaje "Bienvenida al dominio corp.contoso.com", seleccione Aceptar.
  8. Seleccione Cerrar y luego Reiniciar ahora en el cuadro de diálogo emergente.

Adición de cuentas

La siguiente tarea consiste en agregar la cuenta de instalación como administrador en la VM con SQL Server y, a continuación, conceder permiso a esa cuenta y a las cuentas locales dentro de SQL Server. A continuación, puede actualizar la cuenta de servicio de SQL Server.

Agregue el usuario CORP\Install como administrador en cada máquina virtual del clúster.

Después de que la máquina virtual de SQL Server se reinicie como un miembro del dominio, agregue CORP\Install como miembro del grupo de administradores local:

  1. Espere a hasta que se haya reiniciado la VM y, después, abra de nuevo el archivo RDP desde el controlador de dominio principal. Inicie sesión en sqlserver-2 con la cuenta CORP\DomainAdmin.

    Sugerencia

    En los pasos anteriores, hemos utilizado la cuenta de administrador BUILTIN. Ahora que el servidor está en el dominio, asegúrese de iniciar sesión con la cuenta de administrador del dominio. En la sesión RDP, especifique DOMINIO\nombre de usuario.

  2. En Administrador del servidor, seleccione Herramientas y, después, Administración de equipos.

  3. En la ventana Administración de equipos, expanda Usuarios y grupos locales y luego seleccione Grupos.

  4. Haga doble clic en el grupo Administradores .

  5. En el cuadro de diálogo Propiedades de administrador, seleccione el botón Agregar.

  6. Introduzca el usuario como CORP\Install y seleccione Aceptar.

  7. Seleccione Aceptar para cerrar el cuadro de diálogo Propiedades de administradores.

Creación de un inicio de sesión en cada máquina virtual con SQL Server para la cuenta de instalación

Use la cuenta de instalación (CORP\Install) para configurar el grupo de disponibilidad. Esta cuenta debe ser miembro del rol de servidor fijo sysadmin en cada máquina virtual con SQL Server. Con los pasos siguientes se crea un inicio de sesión para la cuenta de instalación. Complételos en ambas VM con SQL Server.

  1. Conéctese al servidor mediante RDP utilizando la cuenta <MachineName>\DomainAdmin.

  2. Abra SQL Server Management Studio y conéctese a la instancia local de SQL Server.

  3. En el Explorador de objetos, seleccione Seguridad.

  4. Haga clic con el botón derecho en Inicios de sesión. Seleccione Nuevo inicio de sesión.

  5. En Inicio de sesión: Nuevo, seleccione Buscar.

  6. Seleccione Ubicaciones.

  7. Escriba las credenciales de red del administrador de dominio. Utilice la cuenta de instalación (CORP\Install).

  8. Establezca el inicio de sesión como un miembro del rol de servidor fijo sysadmin.

  9. Seleccione Aceptar.

Configuración de permisos de cuenta del sistema

Para crear una cuenta del sistema y conceder los permisos adecuados, complete estos pasos en cada instancia de SQL Server:

  1. Use el siguiente script para crear una cuenta para [NT AUTHORITY\SYSTEM]:

    USE [master]
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
    GO 
    
  2. Conceda los permisos siguientes a [NT AUTHORITY\SYSTEM]:

    • ALTER ANY AVAILABILITY GROUP
    • CONNECT SQL
    • VIEW SERVER STATE

    El script siguiente concede estos permisos:

    GRANT ALTER ANY AVAILABILITY GROUP TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT VIEW SERVER STATE TO [NT AUTHORITY\SYSTEM]
    GO 
    

Configuración de las cuentas de servicio de SQL Server

En cada VM con SQL Server, complete estos pasos para establecer la cuenta de servicio de SQL Server. Utilice las cuentas que creó cuando configuró las cuentas de dominio.

  1. Abra el Administrador de configuración de SQL Server.
  2. Haga clic con el botón derecho en el servicio SQL Server y seleccione Propiedades.
  3. Establezca la cuenta y contraseña.

En lo que respecta a los grupos de disponibilidad de SQL Server, cada máquina virtual con SQL Server debe ejecutarse como una cuenta de dominio.

Creación de un equilibrador de carga de Azure

Se requiere un equilibrador de carga en la región remota para admitir el grupo de disponibilidad de SQL Server. El equilibrador de carga almacena las direcciones IP de los clientes de escucha del grupo de disponibilidad y del clúster de conmutación por error de Windows Server. En esta sección se resume cómo crear el equilibrador de carga en Azure Portal.

El equilibrador de carga debe:

  • Estar en la misma red y subred que la nueva máquina virtual.
  • Tener una dirección IP estática para el agente de escucha del grupo de disponibilidad.
  • Incluir un grupo de back-end que conste solo de las máquinas virtuales de la misma región que el equilibrador de carga.
  • Usar un sondeo de puerto TCP específico para la dirección IP.
  • Tener una regla de equilibrio de carga específica de la instancia de SQL Server en la misma región.
  • Ser un equilibrador de carga estándar si las máquinas virtuales del grupo de back-end no forman parte de un único conjunto de disponibilidad o conjunto de escalado de máquinas virtuales. Para obtener más información, revise ¿Qué es Azure Load Balancer?.
  • Ser un equilibrador de carga estándar si las dos redes virtuales en dos regiones diferentes están emparejadas a través del emparejamiento de red virtual global. Para más información, consulte Preguntas más frecuentes (P+F) acerca de Azure Virtual Network.

Los pasos para crear el equilibrador de carga son:

  1. En Azure Portal, vaya al grupo de recursos donde está la instancia de SQL Server y seleccione +Agregar.

  2. Busque Load Balancer. Elija el equilibrador de carga que Microsoft publica.

  3. Seleccione Crear.

  4. Configure los parámetros siguientes para el equilibrador de carga:

    Configuración Value
    Suscripción Utilice la misma suscripción que la de la máquina virtual.
    Grupos de recursos Utilice el mismo grupo de recursos que la máquina virtual.
    Nombre Use un nombre de texto para el equilibrador de carga (por ejemplo, remoteLB).
    Región Use la misma región que la máquina virtual.
    SKU Seleccione Estándar.
    Tipo seleccione Interno.

    El panel de Azure Portal debe tener el siguiente aspecto:

    Screenshot of the Azure portal that shows basic information for creating a load balancer.

  5. Seleccione Siguiente: Configuración de la dirección IP de front-end.

  6. Seleccione Agregar una configuración de IP de front-end.

    Screenshot of the Azure portal that shows the button for adding a frontend IP configuration.

  7. Configure la dirección IP de front-end con los valores siguientes:

    • Nombre: use un nombre que identifique la configuración de la dirección IP de front-end.
    • Red virtual: use la misma red que la de las máquinas virtuales.
    • Subred: use la misma subred que la de las máquinas virtuales.
    • Asignación: seleccione Estática.
    • Dirección IP: use una dirección disponible en la subred. Use esta dirección para la escucha de grupo de disponibilidad. Esta dirección es distinta de la dirección IP del clúster.
    • Zona de disponibilidad: opcionalmente, elija una zona de disponibilidad en la que se implementará la dirección IP.

    Screenshot of the Azure portal that shows the dialog for adding a frontend IP configuration.

  8. Seleccione Agregar.

  9. Seleccione Revisar y crear para validar la configuración y, a continuación, seleccione Crear para crear el equilibrador de carga y la dirección IP de front-end.

Para configurar el equilibrador de carga, debe crear un grupo de back-end y un sondeo y establecer las reglas de equilibrio de carga.

Incorporación del grupo de back-end para el cliente de escucha del grupo de disponibilidad

  1. En Azure Portal, vaya a su grupo de disponibilidad. Es posible que deba actualizar la vista para ver el equilibrador de carga recién creado.

  2. Seleccione el equilibrador de carga, seleccione Grupos de back-end y, a continuación, seleccione +Agregar.

  3. En Nombre, escriba un nombre para el grupo de back-end.

  4. En Configuración del grupo de back-end, seleccione NIC.

  5. Seleccione Agregar para asociar el grupo de back-end con la instancia de VM con SQL Server recién creada.

  6. En Máquina virtual, elija la máquina virtual que hospedará la réplica del grupo de disponibilidad.

  7. Seleccione Agregar para agregar la máquina virtual al grupo de back-end.

  8. Seleccione Guardar.

Configuración del sondeo

  1. En Azure Portal, seleccione el equilibrador de carga, seleccione Sondeos de estado y luego seleccione +Agregar.

  2. Establezca el sondeo de estado del agente de escucha de la manera siguiente:

    Configuración Descripción Ejemplo
    Nombre Texto SQLAlwaysOnEndPointProbe
    Protocolo Elija TCP TCP
    Puerto Cualquier puerto no utilizado 59999
    Intervalo La cantidad de tiempo entre los intentos de sondeo, en segundos 5
  3. Seleccione Agregar.

Establecimiento de las reglas de equilibrio de carga

  1. En Azure Portal, seleccione el equilibrador de carga, seleccione Reglas de equilibrio de carga y, a continuación, seleccione +Agregar.

  2. Establezca las reglas de equilibrio de carga del cliente de escucha según se indica a continuación:

    Configuración Descripción Ejemplo
    Nombre Texto SQLAlwaysOnEndPointListener
    Frontend IP address (Dirección IP de front-end) Elija una dirección Use la dirección que creó al crear el equilibrador de carga.
    Grupo de back-end Elegir el grupo de back-end Seleccione el grupo de back-end que contiene las máquinas virtuales destinadas al equilibrador de carga.
    Protocolo Elija TCP TCP
    Puerto Uso del puerto del agente de escucha de grupo de disponibilidad 1433
    Puerto back-end Este campo no se utiliza cuando se establece una IP flotante para Direct Server Return 1433
    Sondeo de estado Nombre especificado para el sondeo SQLAlwaysOnEndPointProbe
    Persistencia de la sesión Lista desplegable None
    Tiempo de espera de inactividad Minutos para mantener abierta una conexión TCP 4
    IP flotante (Direct Server Return) Habilite esta opción.

    Advertencia

    Direct Server Return se establece durante la creación. No puede cambiarlo.

  3. Seleccione Guardar.

Adición de clústeres de conmutación por error a VM con SQL Server

Para agregar características de clústeres de conmutación por error, complete los pasos siguientes en ambas VM con SQL Server:

  1. Conéctese a la máquina virtual con SQL Server mediante RDP utilizando la cuenta CORP\Install. Abra el panel Administrador del servidor.

  2. Seleccione el vínculo Agregar roles y características en el panel.

    Screenshot of the Server Manager dashboard that shows the link for adding roles and features.

  3. Seleccione Siguiente hasta llegar a la sección Características de servidor.

  4. En Características, seleccione Clúster de conmutación por error.

  5. Agregue las características necesarias.

  6. Seleccione Instalar.

Nota

Ahora puede automatizar esta tarea, junto con la unión de las VM con SQL Server al clúster de conmutación por error, con la CLI de Azure y las plantillas de inicio rápido de Azure.

Ajuste de los umbrales de red de un clúster de conmutación por error

Al ejecutar nodos del clúster de conmutación por error Windows en máquinas virtuales de Azure con grupos de disponibilidad de SQL Server, cambie la configuración del clúster a un estado de supervisión más flexible. Este cambio hará que el clúster sea más estable y confiable. Para obtener más información al respecto, consulte IaaS con SQL Server: optimización de umbrales de red de clústeres de conmutación por error.

Configuración del firewall en cada máquina virtual con SQL Server

La solución requiere que los siguientes puertos TCP estén abiertos en el firewall:

  • Máquina virtual con SQL Server: Puerto 1433 para una instancia predeterminada de SQL Server.
  • Sondeo del equilibrador de carga de Azure: cualquier puerto disponible. A menudo, los ejemplos utilizan el 59999.
  • Sondeo de estado de la dirección IP del equilibrador de carga del núcleo del clúster: cualquier puerto disponible. A menudo, los ejemplos utilizan el 58888.
  • Punto de conexión de reflejo de la base de datos: cualquier puerto disponible. A menudo, los ejemplos utilizan el 5022.

Los puertos de firewall deben estar abiertos en la nueva instancia de VM con SQL Server. El método de abrir los puertos depende de la solución de firewall que use. En los pasos siguientes se muestra cómo abrir los puertos en Firewall de Windows:

  1. En la pantalla Inicio de SQL Server, abra Firewall de Windows con seguridad avanzada.

  2. En el panel izquierdo, seleccione Reglas de entrada. En el panel derecho, seleccione Nueva regla.

  3. En Tipo de regla, seleccione Puerto.

  4. Para el puerto, especifique TCP y escriba los números de puerto adecuados. En la siguiente captura de pantalla se muestra un ejemplo:

    Screenshot that shows selections for creating a new inbound rule for a firewall.

  5. Seleccione Siguiente.

  6. En la página Acción, mantenga seleccionado Permitir la conexión y seleccione Siguiente.

  7. En la página Perfiles, acepte la configuración predeterminada y seleccione Siguiente.

  8. En la página Nombre, especifique un nombre de regla (como Sondeo de Azure Load Balancer) en el cuadro de texto Nombre y, a continuación, seleccione Finalizar.

Adición de SQL Server al clúster de conmutación por error de Windows Server

La nueva VM con SQL Server debe agregarse al clúster de conmutación por error de Windows Server que existe en la región local.

Para agregar la VM con SQL Server al clúster:

  1. Use RDP para conectarse a una VM con SQL Server en el clúster existente. Utilice una cuenta de dominio que sea administrador de ambas VM con SQL Server y el servidor testigo.

  2. En el panel Administrador del servidor, seleccione Herramientas y, después, Administrador de clústeres de conmutación por error.

  3. En el panel izquierdo, haga clic con el botón derecho en Administrador de clústeres de conmutación por error y, a continuación, seleccione Conectar al clúster.

  4. En la ventana Seleccionar clúster en Nombre del clúster, elija <Clúster en este servidor>. Después, seleccione Aceptar.

  5. En el árbol del explorador, haga clic con el botón derecho en el clúster y seleccione Agregar nodo.

  6. En el Asistente para agregar nodo, seleccione Siguiente.

  7. En la página Seleccionar servidores, agregue el nombre de la nueva instancia de SQL Server. Escriba el nombre del servidor en Escriba un nombre de servidor, seleccione Agregar y, después, seleccione Siguiente.

  8. En la página Advertencia de validación, seleccione No. (En un escenario de producción debería realizar las pruebas de validación). Después, seleccione Siguiente.

  9. En la página Confirmación, si usa Espacios de almacenamiento, desactive la casilla Agregar todo el almacenamiento apto al clúster.

    Advertencia

    Si no desactiva la opción Agregar todo el almacenamiento apto al clúster, Windows desasocia los discos virtuales durante el proceso de agrupación en clústeres. Como resultado, no aparecen en el Administrador de discos ni en el Explorador hasta que se quita el almacenamiento del clúster y se vuelve a asociar mediante PowerShell.

  10. Seleccione Next (Siguiente).

  11. Seleccione Finalizar.

    El Administrador de clústeres de conmutación por error indica que el clúster tiene un nuevo nodo y lo muestra en el contenedor Nodos.

Adición de la dirección IP del clúster de conmutación por error de Windows Server

Nota

En Windows Server 2019, el clúster crea un nombre del servidor distribuido en lugar del nombre de la red en clúster. Si usa Windows Server 2019, vaya a Adición de una dirección IP para la escucha de grupo de disponibilidad. Puede crear un nombre de red en clúster mediante PowerShell. Para obtener más información, revise la entrada de blog Clúster de conmutación por error: objeto de red del clúster.

A continuación, cree el recurso de dirección IP y agréguelo al clúster para la nueva VM con SQL Server:

  1. En Administrador de clústeres de conmutación por error, seleccione el nombre del clúster. Haga clic con el botón derecho en el nombre del clúster en Recursos principales de clúster y, a continuación, seleccione Propiedades:

    Screenshot of Failover Cluster Manager that shows selections for opening cluster properties.

  2. En el cuadro de diálogo Propiedades del clúster, seleccione Agregar en Direcciones IP y, después, agregue la dirección IP del nombre de clúster de la región de red remota. Seleccione Aceptar en el cuadro de diálogo Dirección IP y, después, seleccione Aceptar en el cuadro de diálogo Propiedades del clúster para guardar la nueva dirección IP.

    Screenshot that shows the dialogs for creating a cluster IP address.

  3. Agregue la dirección IP como una dependencia al nombre principal del clúster.

    Abra el cuadro de diálogo Propiedades del clúster una vez más y seleccione la pestaña Dependencias. Configure una dependencia OR para las dos direcciones IP.

    Screenshot of the Cluster Properties dialog that shows selections for adding a dependency.

Adición de una dirección IP para la escucha de grupo de disponibilidad

La dirección IP de la escucha de la región remota debe agregarse al clúster. Para agregar la dirección IP:

  1. En Administrador de clústeres de conmutación por error, haga clic con el botón derecho en el rol del grupo de disponibilidad. Seleccione Agregar recurso, seleccione Más recursos y, a continuación, seleccione Dirección IP.

    Screenshot of Failover Cluster Manager that shows selections for adding an IP address as a resource.

  2. Para configurar esta dirección IP, haga clic con el botón derecho en el recurso en Otros recursos y seleccione Propiedades.

    Screenshot of Failover Cluster Manager that shows selections for opening properties for a resource.

  3. En Nombre, escriba un nombre para el nuevo recurso. En Red, seleccione la red del centro de datos remoto. Seleccione Dirección IP estática y, después, en el cuadro Dirección, asigne la dirección IP estática desde el nuevo equilibrador de carga de Azure.

    Screenshot of the dialog for IP address properties, showing assignment of the listener IP in the cluster.

  4. Seleccione Aplicar y luego Aceptar.

  5. Agregue el recurso de dirección IP como una dependencia para el clúster (nombre de red) de punto de acceso cliente del agente de escucha.

    Haga clic con el botón derecho en el punto de acceso del cliente de escucha y, a continuación, seleccione Propiedades. Vaya a la pestaña Dependencias y agregue el nuevo recurso de dirección IP al punto de acceso cliente de escucha. La pantalla siguiente muestra un recurso de clúster de dirección IP correctamente configurado:

    Screenshot of Failover Cluster Manager that shows configured IP addresses for an availability group.

    Importante

    El grupo de recursos de clúster incluye ambas direcciones IP. Las dos direcciones IP son dependencias para el punto de acceso cliente del agente de escucha. Use el operador OR en la configuración de la dependencia de clúster.

  6. Establecer los parámetros de clúster en PowerShell.

    Ejecute el script de PowerShell con el nombre de red del clúster, la dirección IP y el puerto de sondeo que configuró en el equilibrador de carga de la nueva región:

    $ClusterNetworkName = "<MyClusterNetworkName>" # The cluster name for the network in the new region (Use Get-ClusterNetwork on Windows Server 2012 or later to find the name.)
    $IPResourceName = "<IPResourceName>" # The cluster name for the new IP address resource.
    $ILBIP = "<n.n.n.n>" # The IP address of the internal load balancer in the new region. This is the static IP address for the load balancer that you configured in the Azure portal.
    [int]$ProbePort = <nnnnn> # The probe port that you set on the internal load balancer.
    
    Import-Module FailoverClusters
    
    Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
    

Habilitación de grupos de disponibilidad

A continuación, active la función Grupos de disponibilidad Always On. Complete estos pasos en la nueva VM con SQL Server:

  1. Desde la pantalla Inicio, abra el Administrador de configuración de SQL Server.

  2. En el árbol del explorador, seleccione Servicios de SQL Server. Haga clic con el botón derecho en el servicio SQL Server (MSSQLSERVER) y seleccione Propiedades.

  3. Seleccione la pestaña Alta disponibilidad de Always On y, luego, Habilitar los grupos de disponibilidad Always On.

    Screenshot of selections for enabling Always On availability groups in SQL Server properties.

  4. Seleccione Aplicar. Seleccione Aceptar en el cuadro de diálogo emergente.

  5. Reinicie el servicio SQL Server.

Adición de una réplica al grupo de disponibilidad

Una vez que SQL Server se haya reiniciado en la máquina virtual recién creada, podrá agregarlo como réplica al grupo de disponibilidad:

  1. Abra una sesión de escritorio remoto en la instancia de SQL Server principal del grupo de disponibilidad y, a continuación, abra SQL Server Management Studio (SSMS).

  2. En el Explorador de objetos de SSMS, abra Alta disponibilidad de Always On>Grupos de disponibilidad. Haga clic con el botón derecho en el nombre del grupo de disponibilidad y seleccione Agregar réplica.

  3. Conéctese a la réplica existente y seleccione Siguiente.

  4. Seleccione Agregar réplica y conéctese a la nueva instancia de VM con SQL Server.

    Importante

    Una réplica en una región remota de Azure debe establecerse en replicación asincrónica con conmutación por error manual.

  5. En la página Seleccionar sincronización de datos iniciales, seleccione Completa y especifique una ubicación de red compartida. Para la ubicación, utilice el recurso compartido de copia de seguridad que creó. En el ejemplo, era \\<Primer servidor SQL Server>\Backup\. Luego, seleccione Siguiente.

    Nota:

    La sincronización completa realiza una copia de seguridad completa de la base de datos en la primera instancia de SQL Server y la restaura en la segunda instancia. En el caso de las bases de datos de gran tamaño, no se recomienda la sincronización completa porque puede tardar mucho tiempo.

    Puede reducir este tiempo realizando manualmente una copia de seguridad de la base de datos y restaurándola con NO RECOVERY. Si ya se ha restaurado la base de datos con NO RECOVERY en la segunda instancia de SQL Server antes de configurar el grupo de disponibilidad, seleccione Solo unirse. Si desea realizar la copia de seguridad después de configurar el grupo de disponibilidad, seleccione Omitir la sincronización de datos iniciales.

    Screenshot that shows selection of the option for full data synchronization.

  6. En la página Validación, seleccione Siguiente. Esta página debe tener un aspecto similar a la siguiente imagen:

    Screenshot of the page that displays results of availability group validation in SSMS.

    Nota

    Una advertencia para la configuración del cliente de escucha indica que no ha configurado una escucha de grupo de disponibilidad. Puede omitir esta advertencia porque el cliente de escucha ya está configurado. Se creó después de crear el equilibrador de carga de Azure en la región local.

  7. En la página Resumen, seleccione Finalizar y espere hasta que el asistente configure el nuevo grupo de disponibilidad. En la página Progreso, puede seleccionar Más detalles para ver el progreso detallado.

    Una vez que el asistente haya finalizado la configuración, inspeccione la página Resultados para comprobar que se ha creado correctamente el grupo de disponibilidad.

  8. Seleccione Cerrar para cerrar el asistente.

Comprobación del grupo de disponibilidad

En el Explorador de objetos, expanda Alta disponibilidad AlwaysOn y después, expanda Grupos de disponibilidad. Haga clic con el botón derecho en el grupo de disponibilidad y seleccione Mostrar el panel.

Screenshot of Object Explorer in SSMS that shows selections for opening a dashboard for an availability group.

El panel del grupo de disponibilidad debe tener un aspecto similar al de la captura de pantalla siguiente, ahora con otra réplica:

Screenshot of the availability group dashboard in SSMS.

El panel muestra las réplicas, el modo de conmutación por error de cada réplica y el estado de sincronización.

Comprobación de la escucha de grupo de disponibilidad

  1. En el Explorador de objetos, expanda Alta disponibilidad de Always On, Grupos de disponibilidad y, a continuación, Escucha de grupo de disponibilidad.

  2. Haga clic con el botón derecho en el nombre del cliente de escucha y seleccione Propiedades. Ahora, ambas direcciones IP deberían aparecer para el cliente de escucha (una en cada región).

    Screenshot of the Availability Group Listener Properties window in SSMS, showing both IP addresses being used for the listener.

Configuración de la conexión para varias subredes

La réplica en el centro de datos remoto forma parte del grupo de disponibilidad, pero está en una subred diferente. Si esta réplica se convierte en la réplica principal, pueden producirse tiempos de espera de conexión de la aplicación. Este comportamiento es el mismo que el de un grupo de disponibilidad local en una implementación con varias subredes. Para permitir conexiones de aplicaciones de cliente, actualice la conexión de cliente o configure el almacenamiento en caché de la resolución de nombres en el recurso de nombres de red del clúster.

Preferiblemente, actualice la configuración del clúster para establecer RegisterAllProvidersIP=1 y las cadenas de conexión de cliente para establecer MultiSubnetFailover=Yes. Consulte Conexión con MultiSubnetFailover.

Si no puede modificar las cadenas de conexión, puede configurar el almacenamiento en caché de la resolución de nombres. Consulte Se produce un error de agotamiento del tiempo de espera al conectarse a un cliente de escucha de un grupo de disponibilidad Always On en un entorno de varias subredes.

Conmutación por error a la región remota

Para probar la conectividad del cliente de escucha con la región remota, puede conmutar por error la réplica de la región remota. Aunque la réplica sea asincrónica, la conmutación por error es vulnerable a posibles pérdidas de datos. Para conmutar por error sin pérdida de datos, cambie el modo de disponibilidad a sincrónico y establezca el modo de conmutación por error en automático. Siga estos pasos:

  1. En el Explorador de objetos, conéctese a la instancia de SQL Server que hospeda la réplica principal.

  2. En Grupos de disponibilidad Always On, haga clic con el botón derecho en el grupo de disponibilidad y seleccione Propiedades.

  3. En la página General, en Réplicas de disponibilidad, establezca la réplica secundaria en el sitio de recuperación ante desastres (DR) para que utilice el modo de disponibilidad Confirmación sincrónica y el modo de conmutación por error Automático.

    Si tiene una réplica secundaria en el mismo sitio que la réplica principal para alta disponibilidad, establezca esta réplica en Confirmación asincrónica y Manual.

  4. Seleccione Aceptar.

  5. En el Explorador de objetos, haga clic con el botón derecho en el grupo de disponibilidad y luego seleccione Mostrar panel.

  6. En el panel, compruebe que la réplica en el sitio de recuperación ante desastres esté sincronizada.

  7. En el Explorador de objetos, haga clic con el botón derecho en el grupo de disponibilidad y seleccione Conmutación por error. SQL Server Management Studio abre un asistente para conmutar por error a SQL Server.

  8. Seleccione Siguiente y la instancia de SQL Server en el sitio de recuperación ante desastres. Seleccione Siguiente de nuevo.

  9. Conéctese a la instancia de SQL Server en el sitio de recuperación ante desastres y, después, seleccione Siguiente.

  10. En la página Resumen, revise la configuración y seleccione Finalizar.

Después de probar la conectividad, mueva la réplica principal de nuevo a su centro de datos principal y vuelva a establecer el modo de disponibilidad en su configuración de funcionamiento normal. En la tabla siguiente se muestra la configuración de funcionamiento normal de la arquitectura descrita en este artículo:

Ubicación Instancia del servidor Role Modo de disponibilidad Modo de conmutación por error
Centro de datos principal SQL-1 Principal Sincrónica Automático
Centro de datos principal SQL-2 Secundario Sincrónica Automático
Centro de datos remoto o secundario SQL-3 Secundario Asincrónica Manual

Para obtener más información sobre la conmutación por error manual planeada y forzada, consulte los siguientes artículos:

Pasos siguientes

Para obtener más información, consulte: