Usa el almacenamiento en bloque de los volúmenes de NetApp de Google Cloud para configurar grupos de disponibilidad Always On de SQL Server

En este instructivo, se explica cómo implementar un grupo de disponibilidad Always On de Microsoft SQL Server en instancias de máquina virtual (VM) de Compute Engine con el almacenamiento en bloque de Google Cloud NetApp Volumes y el protocolo de interfaz de sistema de computadora pequeña por Internet (iSCSI). Usar NetApp Volumes para el almacenamiento de SQL Server proporciona acceso a un servicio de almacenamiento completamente administrado y de alto rendimiento con funciones avanzadas de administración de datos, como instantáneas y clonación.

Objetivos

En este instructivo, se te guiará por las siguientes tareas:

Costos

En este instructivo, se usan los siguientes componentes facturables de Google Cloud:

Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios.

Antes de comenzar

Antes de comenzar, asegúrate de tener lo siguiente:

  1. En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .

    Roles necesarios para seleccionar o crear un proyecto

    • Selecciona un proyecto: Para seleccionar un proyecto, no se requiere un rol de IAM específico. Puedes seleccionar cualquier proyecto en el que se te haya otorgado un rol.
    • Crear un proyecto: Para crear un proyecto, necesitas el rol de Creador de proyectos (roles/resourcemanager.projectCreator), que contiene el permiso resourcemanager.projects.create. Obtén más información para otorgar roles.

    Ir al selector de proyectos

  2. Verifica que la facturación esté habilitada para tu proyecto de Google Cloud .

  3. Un proyecto Google Cloud con permisos de administrador para Compute Engine, redes, Identity and Access Management y Cloud Storage
  4. Una red de VPC con una subred en tu región de destino
  5. Se establecieron los servicios de Active Directory y DNS dentro de la región.
  6. Un usuario de Active Directory con permisos para unir computadoras al dominio y acceder a las VMs con RDP.
  7. Asegúrate de que las reglas de firewall de VPC permitan el tráfico entre nodos para iSCSI (TCP 3260), WSFC (UDP/TCP 3343), SQL Server (TCP 1433), extremos de AG de SQL Server (TCP 5022), SMB (TCP 445) y RPC (TCP 135, TCP 49152-65535).
  8. Habilita la API de NetApp Volumes.
  9. En la consola de Google Cloud , activa Cloud Shell.

    Activa Cloud Shell

Configura cuentas de dominio

Configura dos cuentas de Active Directory para SQL Server:

  • Cuenta de instalación: Es una cuenta con privilegios de administrador de dominio (por ejemplo, DOMAIN\DomainAdmin) para acceder a las VMs y configurar el clúster y el grupo de disponibilidad.
  • Cuenta de servicio: Es una cuenta (por ejemplo, DOMAIN\sqlsvc) para el servicio de SQL Server y el servicio de agente de SQL en ambas VMs de SQL Server.

Crea VMs de Compute Engine para SQL Server

Crea dos instancias de Compute Engine (sqlnode1 y sqlnode2) que ejecuten SQL Server 2022 Enterprise en Windows Server 2025:

  1. En la consola de Google Cloud , ve a la página Crear una instancia.

    Ir a Crear una instancia

  2. En Nombre, ingresa sqlnode1.

  3. En la sección Configuración de la máquina, selecciona Uso general y, luego, haz lo siguiente:

    1. En la lista Series, selecciona N4.
    2. En la lista Tipo de máquina, selecciona n4-highmem-8 (8 CPU virtuales, 64 GB de memoria).
  4. Selecciona la región y la zona en las que configuraste tu VPC.

  5. En la sección Disco de arranque, haz clic en Cambiar y, luego, haz lo siguiente:

    1. En la pestaña Imágenes públicas, selecciona SQL Server en Windows Server en la lista Sistema operativo.
    2. En la lista Versión, selecciona SQL Server 2022 Enterprise on Windows Server 2025 Datacenter.
    3. En la lista Tipo de disco de arranque, selecciona Hyperdisk Balanced.
    4. Establece el Tamaño (GB) en 50.
    5. Para guardar la configuración del disco de arranque, haz clic en Seleccionar.
  6. Expande la sección Opciones avanzadas y, luego, Herramientas de redes.

  7. En Interfaces de red, selecciona la VPC y la subred de tu proyecto.

  8. En la lista Tipo de tarjeta de interfaz de red, selecciona gVNIC.

  9. En Nivel de servicio de red, selecciona Premium.

  10. Haz clic en Crear.

  11. Repite estos pasos para crear una segunda instancia llamada sqlnode2.

Une los servidores al dominio y prepáralos para el agrupamiento en clústeres

Sigue estos pasos en sqlnode1 y sqlnode2:

  1. Conéctate a la VM con una cuenta de administrador local.
  2. En el Administrador del servidor, selecciona Servidor local.
  3. Selecciona el vínculo WORKGROUP.
  4. En la sección Nombre de la computadora, selecciona Cambiar.
  5. Selecciona la casilla de verificación Dominio, ingresa el nombre de tu dominio (por ejemplo, cvsdemo.internal) y haz clic en Aceptar.
  6. En el diálogo Seguridad de Windows, ingresa las credenciales de tu cuenta de administrador de dominio y haz clic en Aceptar.
  7. Cuando aparezca el mensaje de bienvenida para el dominio, completa los siguientes pasos: a. Haz clic en Aceptar. b. Haz clic en Cerrar y, luego, selecciona Reiniciar ahora.
  8. Después de reiniciar la VM, conéctate a ella con tu cuenta de administrador de dominio.
  9. Agrega la cuenta DOMAIN\sqlsvc al grupo local Administrators en la VM. Puedes usar el siguiente comando de PowerShell:
    Add-LocalGroupMember -Group "Administrators" -Member "DOMAIN\sqlsvc"
    
  10. Abre PowerShell como administrador y ejecuta los siguientes comandos para instalar las funciones de Windows requeridas:

    # Install Failover Clustering and tools
    Install-WindowsFeature Failover-Clustering, RSAT-Clustering-PowerShell, RSAT-Clustering-CmdInterface -IncludeAllSubFeature -IncludeManagementTools
    # Install and enable MPIO for iSCSI
    Install-WindowsFeature -Name Multipath-IO
    Enable-MSDSMAutomaticClaim -BusType "iSCSI"
    # Install .NET and other SQL prereqs
    Install-WindowsFeature NET-Framework-45-Core, NET-Framework-45-Features
    Install-WindowsFeature RSAT-AD-PowerShell
    
  11. Para obtener el nombre calificado de iSCSI (IQN) de la VM, ejecuta iscsicpl.exe, ve a la pestaña Configuration y copia el Initiator Name. Como alternativa, ejecuta el siguiente comando de PowerShell:

    Get-InitiatorPort | Select-Object NodeAddress
    

    Registra el IQN para sqlnode1 y sqlnode2. Los necesitarás en la siguiente sección. Ejemplo: iqn.1991-05.com.microsoft:sqlnode1.cvsdemo.internal.

Crea volúmenes de almacenamiento en bloque de NetApp Volumes

Sigue estos pasos para crear un grupo de hosts, un grupo de almacenamiento y volúmenes iSCSI.

Crea un grupo de host

Un grupo de hosts garantiza que solo los hosts especificados (tus VMs de SQL Server) puedan acceder a los volúmenes que crees.

  • En Cloud Shell, crea un grupo de hosts que contenga los IQN de sqlnode1 y sqlnode2:

    gcloud netapp host-groups create HOST_GROUP_NAME 
    --location=LOCATION
    --type=ISCSI_INITIATOR
    --hosts=SQLNODE1_IQN,SQLNODE2_IQN
    --os-type=WINDOWS
    --description="SQL Server AG nodes"

    Reemplaza la siguiente información:

    • HOST_GROUP_NAME: Es el nombre del grupo de hosts, por ejemplo, sql-ag-hosts.
    • LOCATION: Es la región de tu grupo de hosts, por ejemplo, us-west1.
    • SQLNODE1_IQN: Es el IQN de sqlnode1.
    • SQLNODE2_IQN: Es el IQN de sqlnode2.

Aprovisiona un grupo de almacenamiento

  • En Cloud Shell, crea un grupo de almacenamiento para tus volúmenes:

    gcloud netapp storage-pools create POOL_NAME 
    --project=PROJECT_ID
    --location=ZONE
    --service-level=Flex
    --type=Unified
    --capacity=1024
    --total-throughput=64
    --total-iops=1024
    --network=name=VPC_NAME,psa-range=PSA_RANGE_NAME

    Reemplaza la siguiente información:

    • POOL_NAME: Es el nombre del grupo de almacenamiento, por ejemplo, sql-pool.
    • PROJECT_ID: Es el ID del proyecto de Google Cloud .
    • ZONE: Es la zona de tu grupo de almacenamiento, que debe coincidir con la zona de tus VMs, por ejemplo, us-west1-b.
    • VPC_NAME: Es el nombre de tu red de VPC.
    • PSA_RANGE_NAME: Es el nombre del rango asignado de tu conexión de acceso privado a servicios.

Crea volúmenes

Crea volúmenes separados para los datos, los registros, tempdb y las copias de seguridad de SQL Server para cada nodo.

  • En Cloud Shell, ejecuta el siguiente comando para cada volumen que necesites crear:

    gcloud netapp volumes create VOLUME_NAME 
    --project=PROJECT_ID
    --location=ZONE
    --storage-pool=POOL_NAME
    --capacity=200
    --protocols=ISCSI
    --block-devices="name=VOLUME_NAME,host-groups=projects/PROJECT_ID/locations/LOCATION/hostGroups/HOST_GROUP_NAME,os-type=WINDOWS"
    --snapshot-directory=false

    Reemplaza VOLUME_NAME por un nombre único para cada volumen. Para este instructivo de dos nodos, debes ejecutar el comando ocho veces para crear volúmenes para los datos, los registros, tempdb y las copias de seguridad de cada nodo (por ejemplo, sqlnode1-data, sqlnode1-log, sqlnode1-temp, sqlnode1-backup, sqlnode2-data, sqlnode2-log, sqlnode2-temp y sqlnode2-backup).

Activa volúmenes iSCSI en cada VM de SQL

Para cada VM (sqlnode1 y sqlnode2), une los volúmenes que creaste para ese nodo específico.

  1. En la consola de Google Cloud , ve a la página Volúmenes de NetApp Volumes.

    Ir a Volúmenes

    Selecciona un volumen asignado al nodo que estás configurando. Anota las direcciones IP del portal de destino que se indican en la sección Detalles del destino de iSCSI. Necesitas estas direcciones para conectarte al volumen.

  2. En la VM, abre PowerShell como administrador y ejecuta el siguiente comando, reemplazando las IPs de ejemplo por las IPs del portal de destino para tu volumen:

    "10.165.128.216","10.165.128.217" | ForEach-Object { New-IscsiTargetPortal -TargetPortalAddress $_ }
    

  3. Ejecuta iscsicpl.exe para abrir iSCSI Initiator Properties.

  4. Ve a la pestaña Objetivos, selecciona uno de tus objetivos de volumen de la lista y haz clic en Conectar.

  5. En el diálogo Connect to Target, selecciona Enable multi-path y haz clic en Advanced.

  6. En el diálogo Advanced Settings, haz lo siguiente:

    1. Adaptador local: Selecciona Iniciador iSCSI de Microsoft.
    2. IP del iniciador: Selecciona una dirección IP en la VM.
    3. IP del portal de destino: Selecciona una de las IPs del portal que descubriste.
    4. Haz clic en Aceptar.
  7. En el diálogo Connect to Target, haz clic en OK.

  8. Repite los pasos de conexión para todos los destinos asociados a la VM.

  9. Para configurar MPIO para dispositivos iSCSI, abre Propiedades de MPIO desde Panel de control o Administrador de servidores.

  10. Haz clic en la pestaña Descubre rutas múltiples.

  11. Selecciona Add support for iSCSI devices y haz clic en Add. Reinicia la VM si se te solicita.

  12. Después de reiniciar, abre el Administrador de dispositivos y expande Unidades de disco. Tu disco iSCSI aparecerá como un dispositivo de múltiples rutas.

  13. Abre Administración de discos (compmgmt.msc). Para cada disco nuevo, haz lo siguiente:

    1. Pon el disco en línea.
    2. Inicializa el disco (GPT).
    3. Crea un volumen nuevo, asígnale una letra de unidad (por ejemplo, D para datos, E para registros, F para copias de seguridad y G para tempdb) y formatéalo con NTFS con un tamaño de unidad de asignación de 64 KB.
  14. Crea la estructura de directorios para SQL Server en las unidades recién formateadas. Por ejemplo:

    $paths = "D:\MSSQL\DATA","E:\MSSQL\Log","F:\MSSQL\Backup","G:\MSSQL\Temp"
    $paths | ForEach-Object { New-Item -ItemType Directory -Path $_ -Force }
    

Configura SQL Server

Realiza estos pasos en sqlnode1 y sqlnode2 después de activar sus respectivos volúmenes.

  1. Abre el Administrador de configuración de SQL Server.
  2. En el panel izquierdo, selecciona SQL Server Services.
  3. En el panel derecho, haz clic con el botón derecho en SQL Server (MSSQLSERVER), selecciona Propiedades, ve a la pestaña Iniciar sesión y cambia el Nombre de cuenta a tu cuenta de servicio (DOMAIN\sqlsvc). Ingresa la contraseña y haz clic en Aceptar.
  4. Repite el paso anterior para SQL Server Agent (MSSQLSERVER).
  5. Conéctate a la instancia de SQL Server con SQL Server Management Studio (SSMS) con tu cuenta de administrador de dominio.
  6. Crea accesos para la cuenta de servicio y otórgale los permisos necesarios:
    USE [master];
    GO
    CREATE LOGIN [DOMAIN\sqlsvc] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english];
    GO
    ALTER SERVER ROLE [sysadmin] ADD MEMBER [DOMAIN\sqlsvc];
    GO
    
  7. Ejecuta la siguiente secuencia de comandos en SSMS para redireccionar las rutas de acceso predeterminadas de la base de datos, el registro, la copia de seguridad y tempdb a los volúmenes iSCSI que montaste:
    USE [master];
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'BackupDirectory', REG_SZ, N'F:\MSSQL\Backup';
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'DefaultData', REG_SZ, N'D:\MSSQL\DATA';
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'DefaultLog', REG_SZ, N'E:\MSSQL\Log';
    GO
    -- Modify model and msdb paths
    ALTER DATABASE model MODIFY FILE (NAME = modeldev, FILENAME = 'D:\MSSQL\DATA\model.mdf');
    ALTER DATABASE model MODIFY FILE (NAME = modellog, FILENAME = 'E:\MSSQL\Log\modellog.ldf');
    ALTER DATABASE msdb  MODIFY FILE (NAME = MSDBData, FILENAME = 'D:\MSSQL\DATA\MSDBData.mdf');
    ALTER DATABASE msdb  MODIFY FILE (NAME = MSDBLog,  FILENAME = 'E:\MSSQL\Log\MSDBLog.ldf');
    GO
    -- Modify tempdb paths
    ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = 'G:\MSSQL\Temp\tempdb.mdf');
    ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = 'G:\MSSQL\Temp\templog.ldf');
    GO
    
  8. Detén el servicio SQL Server (MSSQLSERVER).
  9. Mueve los archivos existentes model, msdb y tempdb de sus ubicaciones anteriores (por ejemplo, C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA) a sus nuevas ubicaciones en las unidades D:, E: y G:.
  10. Para mover la base de datos master y ERRORLOG, haz lo siguiente:
    1. Abre el Administrador de configuración de SQL Server.
    2. Haz clic con el botón derecho en SQL Server (MSSQLSERVER), selecciona Propiedades y ve a la pestaña Parámetros de inicio.
    3. Para cada parámetro existente -d, -e y -l que apunte a la unidad C:, selecciónalo y haz clic en Quitar.
    4. Agrega los siguientes parámetros y haz clic en Agregar para cada uno:
      • -dD:\MSSQL\DATA\master.mdf
      • -lE:\MSSQL\Log\mastlog.ldf
      • -eE:\MSSQL\Log\ERRORLOG
    5. Haz clic en Aceptar.
    6. Mueve manualmente master.mdf y mastlog.ldf de C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA a D:\MSSQL\DATA\` andE:\MSSQL\Log` respectivamente.
    7. Mueve el archivo ERRORLOG de su ubicación anterior a `E:\MSSQL\Log`.
  11. Inicia el servicio SQL Server (MSSQLSERVER).

Configura el clúster de conmutación por error de Windows Server

Sigue estos pasos para crear el clúster y configurar un testigo de quórum.

Configura el Firewall de Windows

Antes de crear el clúster, asegúrate de que el Firewall de Windows en cada nodo permita el tráfico para WSFC, SQL Server y iSCSI.

En sqlnode1 y sqlnode2, abre PowerShell como administrador y ejecuta los siguientes comandos:

New-NetFirewallRule -DisplayName 'Failover Clusters (UDP-In)' -Direction Inbound -Protocol UDP -LocalPort 3343 -Action Allow
New-NetFirewallRule -DisplayName 'Failover Clusters (TCP-In)' -Direction Inbound -Protocol TCP -LocalPort 3343 -Action Allow
New-NetFirewallRule -DisplayName 'RPC Endpoint Mapper' -Direction Inbound -Protocol TCP -LocalPort 135 -Action Allow
New-NetFirewallRule -DisplayName 'File and Printer Sharing (SMB-In)' -Direction Inbound -Protocol TCP -LocalPort 445 -Action Allow
New-NetFirewallRule -DisplayName 'Failover Cluster Manager RPC' -Direction Inbound -Protocol TCP -LocalPort 49152-65535 -Action Allow
New-NetFirewallRule -DisplayName 'iSCSI' -Direction Inbound -Protocol TCP -LocalPort 3260 -Action Allow
New-NetFirewallRule -DisplayName 'SQL Server' -Direction Inbound -Protocol TCP -LocalPort 1433 -Action Allow
New-NetFirewallRule -DisplayName 'SQL Server AG Endpoint' -Direction Inbound -Protocol TCP -LocalPort 5022 -Action Allow

Crea el clúster

  1. En sqlnode1, abre Administrador de clústeres de conmutación por error (cluadmin.msc).
  2. En la sección Administración, selecciona Validar configuración. Sigue el asistente para validar sqlnode1 y sqlnode2. Asegúrate de que todas las pruebas se aprueben antes de continuar.
  3. Después de la validación, selecciona Crear clúster.
  4. En el asistente para crear clústeres, agrega sqlnode1 y sqlnode2 como nodos del clúster.
  5. En Access Point for Administering the Cluster, ingresa un Cluster Name (por ejemplo, sqlcluster) y proporciona una dirección IP estática para el clúster.
  6. Sigue las indicaciones para crear el clúster.

Crea un recurso compartido de archivos para el quórum del clúster

Te recomendamos que crees un recurso compartido de archivos en una tercera VM, de preferencia en una zona diferente, para que actúe como testigo del quórum del clúster.

  1. Conéctate a la VM que deseas usar como testigo de archivos compartidos.
  2. En la ventana Administrador del servidor, selecciona Herramientas > Administración de equipos.
  3. Expande Herramientas del sistema > Carpetas compartidas, haz clic con el botón derecho en Recursos compartidos y selecciona Nuevo recurso compartido.
  4. Sigue el Asistente para crear una carpeta compartida. En la página Ruta de la carpeta, busca o crea una carpeta para el recurso compartido.
  5. En la página Permisos, selecciona Personalizar permisos.
  6. Haz clic en Agregar y otorga Control total a la cuenta del objeto de nombre del clúster (CNO) (por ejemplo, sqlcluster$).
  7. Completa el asistente para crear el recurso compartido.

Configura el quórum del clúster

  1. En sqlnode1, abre Administrador de clústeres de conmutación por error.
  2. Haz clic con el botón derecho en el nombre del clúster y selecciona Más acciones > Establecer ajustes de quórum de clúster.
  3. En el Asistente para configurar el quórum del clúster, selecciona Siguiente.
  4. En la página Seleccionar la opción de configuración del quórum, elige Seleccionar el testigo del quórum y haz clic en Siguiente.
  5. En la página Seleccionar testigo de quórum, elige Configurar un testigo de archivos compartidos y haz clic en Siguiente.
  6. En Ruta de acceso de archivos compartidos, ingresa la ruta de acceso al recurso compartido que creaste (por ejemplo, \\witness-server\quorum) y haz clic en Siguiente.
  7. Confirma la configuración, haz clic en Siguiente y, luego, en Finalizar.

Configura grupos de disponibilidad Always On

Aplica los pasos de esta sección a ambas VMs de SQL Server para habilitar y configurar el grupo de disponibilidad.

Habilita los grupos de disponibilidad en SQL Server

  1. Abre el Administrador de configuración de SQL Server.
  2. En el árbol del navegador, selecciona SQL Server Services.
  3. Haz clic con el botón derecho en SQL Server (MSSQLSERVER) y, luego, selecciona Propiedades.
  4. Selecciona la pestaña Alta disponibilidad de Always On y, luego, Habilitar grupos de disponibilidad de Always On.
  5. Haz clic en Apply y, luego, en OK. Reinicia el servicio de SQL Server.

Crea una base de datos para el grupo de disponibilidad

  1. Conéctate a sqlnode1 con SSMS.
  2. En el panel Explorador de objetos, haz clic con el botón derecho en Bases de datos y selecciona Base de datos nueva.
  3. Ingresa MyDB1 en Database name y haz clic en OK.
  4. Haz clic con el botón derecho en MyDB1 y selecciona Tareas > Hacer una copia de seguridad. Realiza una copia de seguridad completa. Asegúrate de que el modelo de recuperación de la base de datos sea Completo.
  5. Haz clic con el botón derecho en MyDB1 y selecciona Tareas > Hacer una copia de seguridad. Realiza una copia de seguridad del registro de transacciones.
  6. Copia los archivos de copia de seguridad completos y del registro de transacciones en sqlnode2.
  7. Conéctate a sqlnode2 con SSMS. Haz clic con el botón derecho en Bases de datos y selecciona Restaurar base de datos.
  8. Restablece la copia de seguridad completa de MyDB1 desde sqlnode1 y especifica RESTORE WITH NORECOVERY en la página Opciones.
  9. Haz clic con el botón derecho en MyDB1 en sqlnode2, selecciona Tareas > Restaurar > Registro de transacciones. Restablece la copia de seguridad del registro de transacciones y especifica también RESTORE WITH NORECOVERY.

Crea el grupo de disponibilidad

  1. Conéctate a sqlnode1 con SSMS.
  2. En el Explorador de objetos, haz clic con el botón derecho en Alta disponibilidad de Always On y selecciona Nuevo asistente de grupo de disponibilidad.
  3. Especifica un nombre de grupo de disponibilidad, por ejemplo, sql-ag.
  4. Selecciona MyDB1 como la base de datos que se incluirá.
  5. En la página Especificar réplicas, haz clic en Agregar réplica y conéctate a sqlnode2.
  6. Habilita la conmutación por error automática para ambas réplicas, configura el modo de disponibilidad como confirmación síncrona y la secundaria legible como .
  7. Ve a la pestaña Endpoints y asegúrate de que se use el puerto 5022.
  8. En la página Seleccionar sincronización de datos inicial, selecciona Solo unir.
  9. Completa el asistente para crear el grupo de disponibilidad.

Crea un recurso de DNN para el grupo de disponibilidad

En lugar de un balanceador de cargas, usa un nombre de red distribuida (DNN) para enrutar el tráfico del cliente al objeto de escucha del grupo de disponibilidad.

  1. Abre Administrador de clústeres de conmutación por error, expande Roles y selecciona el rol de tu grupo de disponibilidad.
  2. En Recursos, haz clic con el botón derecho en el recurso del grupo de disponibilidad y selecciona Agregar recurso > Punto de acceso de cliente.
  3. Proporciona un Nombre para el objeto de escucha de DNN y completa el asistente.
  4. Pon en línea el nuevo recurso de DNN.
  5. De forma predeterminada, el clúster vincula el nombre de DNS de la DNN a todos los nodos del clúster. Si tienes nodos en el clúster que no alojan réplicas de SQL Server, debes excluirlos de los posibles propietarios de la DNN:
    1. Haz clic con el botón derecho en el recurso de DNN que creaste y selecciona Propiedades.
    2. Desmarca la casilla de verificación de los nodos que no sean réplicas del grupo de disponibilidad.
    3. Haz clic en Aceptar.
  6. Actualiza las cadenas de conexión de tu aplicación para conectarte al nombre del objeto de escucha de DNN y, luego, incluye MultiSubnetFailover=True.

Prueba la conmutación por error

  1. Conéctate a sqlnode1 o sqlnode2 con SSMS y ejecuta la siguiente consulta para verificar qué réplica es principal y que ambas réplicas estén configuradas para la confirmación síncrona y la conmutación por error automática:

    -- Check primary replica
    SELECT ag.name AS AG_Name, ar.replica_server_name as PrimaryReplica
    FROM sys.dm_hadr_availability_replica_states AS ars
    JOIN sys.availability_groups AS ag ON ag.group_id = ars.group_id
    JOIN sys.availability_replicas ar ON ar.replica_id = ars.replica_id
    WHERE ars.role_desc = 'PRIMARY';

    -- Check replica configuration SELECT replica_server_name, availability_mode_desc, failover_mode_desc FROM sys.availability_replicas WHERE group_id = (SELECT group_id FROM sys.availability_groups WHERE name = N'sql-ag');

  2. Para iniciar una conmutación por error manual, conéctate a la réplica secundaria en SSMS y ejecuta lo siguiente:

    ALTER AVAILABILITY GROUP [sql-ag] FAILOVER;
    

  3. Después de la conmutación por error, verifica el nuevo servidor principal ejecutando SELECT @@SERVERNAME; o volviendo a conectarte al objeto de escucha de DNN y verificando el nombre del servidor.

  4. También puedes ver el estado del grupo de disponibilidad en SSMS haciendo clic con el botón derecho en el grupo de disponibilidad en Alta disponibilidad de Always On y seleccionando Mostrar panel.

Realiza una limpieza

Borra el proyecto

Para evitar que se apliquen cargos a tu proyecto de Google Cloud por los recursos que usaste en este instructivo, borra el proyecto. Para obtener más información, consulta Cierra proyectos.