Prepárese para usar un grupo de disponibilidad de SQL Server Always On con Configuration Manager
Se aplica a: Configuration Manager (rama actual)
Use este artículo para preparar Configuration Manager para usar un grupo de disponibilidad de SQL Server Always On para la base de datos del sitio. Esta característica proporciona una solución de alta disponibilidad y recuperación ante desastres.
Configuration Manager admite el uso de grupos de disponibilidad:
- En los sitios primarios y en el sitio de administración central.
- Local o en Microsoft Azure.
Al usar grupos de disponibilidad en Microsoft Azure, puede aumentar aún más la disponibilidad de la base de datos del sitio mediante conjuntos de disponibilidad de Azure. Para obtener más información sobre los conjuntos de disponibilidad de Azure, consulte Administración de la disponibilidad de máquinas virtuales.
Importante
Antes de continuar, se siente cómodo con la configuración de SQL Server y grupos de disponibilidad. En este artículo se hace referencia a la biblioteca de documentación SQL Server con más información y procedimientos.
Escenarios admitidos
Los siguientes escenarios son compatibles con el uso de grupos de disponibilidad con Configuration Manager. Para obtener más información y procedimientos para cada escenario, consulte Configuración de grupos de disponibilidad para Configuration Manager.
- Creación de un grupo de disponibilidad para su uso con Configuration Manager
- Configuración de un sitio para usar el grupo de disponibilidad
- Agregar o quitar miembros de réplica sincrónica de un grupo de disponibilidad que hospeda una base de datos de sitio
- Configuración o recuperación de un sitio a partir de réplicas de confirmación asincrónicas
- Mover una base de datos de sitio de un grupo de disponibilidad a una instancia predeterminada o con nombre de un SQL Server independiente
Requisitos previos
Los siguientes requisitos previos se aplican a todos los escenarios. Si se aplican requisitos previos adicionales a un escenario específico, se detallan con ese escenario.
Configuration Manager cuentas y permisos
Cuenta de instalación
La cuenta que usa para ejecutar Configuration Manager configuración debe ser:
- Miembro del grupo administradores local en cada equipo que sea miembro del grupo de disponibilidad.
- Sysadmin en cada instancia de SQL Server que hospeda la base de datos del sitio.
Acceso de servidor de sitio a miembro de réplica
La cuenta de equipo del servidor de sitio debe ser miembro del grupo de administradores local en cada equipo que sea miembro del grupo de disponibilidad.
SQL Server
Versión
Cada réplica del grupo de disponibilidad debe ejecutar una versión de SQL Server compatible con la versión de Configuration Manager. Cuando es compatible con SQL Server, los distintos nodos de un grupo de disponibilidad pueden ejecutar diferentes versiones de SQL Server. Para obtener más información, consulte Versiones de SQL Server admitidas para Configuration Manager.
Edición
Use una edición Enterprise de SQL Server.
Cuenta
Cada instancia de SQL Server puede ejecutarse en una cuenta de usuario de dominio (cuenta de servicio) o en una cuenta que no sea de dominio. Cada réplica de un grupo puede tener una configuración diferente.
Use una cuenta con los permisos más bajos posibles. Para obtener más información, consulte Consideraciones de seguridad para una instalación de SQL Server.
Para obtener más información sobre cómo configurar cuentas de servicio y permisos para SQL Server, vea Configurar cuentas de servicio y permisos de Windows.
Para usar una cuenta que no sea de dominio, debe usar certificados. Para obtener más información, vea Uso de certificados para un punto de conexión de creación de reflejo de la base de datos (Transact-SQL).
Para obtener más información general, consulte Creación de un punto de conexión de creación de reflejo de la base de datos para grupos de disponibilidad.
Base de datos
Configuración de la base de datos en una nueva réplica
Realice estas configuraciones solo en una réplica principal. Para configurar una réplica secundaria, primero realice la conmutación por error de la principal a la secundaria. Esta acción convierte a la secundaria en la nueva réplica principal.
Configure la base de datos de cada réplica con los valores siguientes:
Habilitación de la integración clr:
sp_configure 'show advanced options', 1; GO RECONFIGURE; GO sp_configure 'clr enabled', 1; GO RECONFIGURE; GO
Para obtener más información, vea Integración de CLR.
Establezca Tamaño máximo de la repl de texto en
2147483647
:EXECUTE sp_configure 'max text repl size (B)', 2147483647
Establezca el propietario de la base de datos en la cuenta de SA. No es necesario habilitar esta cuenta.
Active la configuración TRUSTWORTHY:
ALTER DATABASE [CM_xxx] SET TRUSTWORTHY ON;
Para obtener más información, vea la propiedad de base de datos TRUSTWORTHY.
Habilite Service Broker:
ALTER DATABASE [CM_xxx] SET ENABLE_BROKER
Nota:
No se puede habilitar la opción Service Broker en una base de datos que ya forma parte de un grupo de disponibilidad. Debe habilitar esa opción antes de agregarla al grupo de disponibilidad.
Configure la prioridad de Service Broker:
ALTER DATABASE [CM_xxx] SET HONOR_BROKER_PRIORITY ON; ALTER DATABASE [CM_xxx] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
Script de comprobación de base de datos
Ejecute el siguiente script SQL para comprobar las configuraciones de base de datos para réplicas principales y secundarias. Antes de corregir un problema en una réplica secundaria, cambie esa réplica secundaria para que sea la réplica principal.
SET NOCOUNT ON
DECLARE @dbname NVARCHAR(128)
SELECT @dbname = sd.name FROM sys.sysdatabases sd WHERE sd.dbid = DB_ID()
IF (@dbname = N'master' OR @dbname = N'model' OR @dbname = N'msdb' OR @dbname = N'tempdb' OR @dbname = N'distribution' ) BEGIN
RAISERROR(N'ERROR: Script is targeting a system database. It should be targeting the DB you created instead.', 0, 1)
GOTO Branch_Exit;
END ELSE
PRINT N'INFO: Targeted database is ' + @dbname + N'.'
PRINT N'INFO: Running verifications....'
IF NOT EXISTS (SELECT * FROM sys.configurations c WHERE c.name = 'clr enabled' AND c.value_in_use = 1)
PRINT N'ERROR: CLR is not enabled!'
ELSE
PRINT N'PASS: CLR is enabled.'
DECLARE @repltable TABLE (
name nvarchar(max),
minimum int,
maximum int,
config_value int,
run_value int )
INSERT INTO @repltable
EXEC sp_configure 'max text repl size (B)'
IF NOT EXISTS(SELECT * from @repltable where config_value = 2147483647 and run_value = 2147483647 )
PRINT N'ERROR: Max text repl size is not correct!'
ELSE
PRINT N'PASS: Max text repl size is correct.'
IF NOT EXISTS (SELECT db.owner_sid FROM sys.databases db WHERE db.database_id = DB_ID() AND db.owner_sid = 0x01)
PRINT N'ERROR: Database owner is not sa account!'
ELSE
PRINT N'PASS: Database owner is sa account.'
IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_trustworthy_on = 1 )
PRINT N'ERROR: Trustworthy bit is not on!'
ELSE
PRINT N'PASS: Trustworthy bit is on.'
IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_broker_enabled = 1 )
PRINT N'ERROR: Service broker is not enabled!'
ELSE
PRINT N'PASS: Service broker is enabled.'
IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_honor_broker_priority_on = 1 )
PRINT N'ERROR: Service broker priority is not set!'
ELSE
PRINT N'PASS: Service broker priority is set.'
PRINT N'Done!'
Branch_Exit:
Configuraciones de grupos de disponibilidad
Miembros de réplica
El grupo de disponibilidad debe tener una réplica principal.
Use el mismo número y tipo de réplicas en un grupo de disponibilidad que admite la versión de SQL Server.
Puede usar una réplica de confirmación asincrónica para recuperar la réplica sincrónica. Para obtener más información, vea Opciones de recuperación de base de datos del sitio.
Advertencia
Configuration Manager no admite la conmutación por error para usar la réplica de confirmación asincrónica como base de datos del sitio. Para obtener más información, vea Modos de conmutación por error y conmutación por error (Always On grupos de disponibilidad).
Configuration Manager no valida el estado de la réplica de confirmación asincrónica para confirmar que es actual. Uso de una réplica de confirmación asincrónica, ya que la base de datos del sitio puede poner en riesgo la integridad del sitio y los datos. Esta réplica puede estar sin sincronización por diseño. Para obtener más información, consulte Introducción a los grupos de disponibilidad de SQL Server Always On.
Cada miembro de réplica debe tener la siguiente configuración:
Use la instancia predeterminada o una instancia con nombre.
Nota:
No tenga un recurso compartido de archivos en el servidor que tenga el mismo nombre que el nombre de instancia de SQL Server.
La configuración Conexiones en rol principal es Permitir todas las conexiones.
La opción Secundaria legible es Sí.
Habilitado para la conmutación por error manual
Nota:
Configuration Manager admite el uso de réplicas sincrónicas del grupo de disponibilidad cuando se establece en Conmutación automática por error. Establezca la conmutación por error manual cuando:
- Ejecute Configuration Manager programa de instalación para especificar el uso de la base de datos de sitio en el grupo de disponibilidad.
- Instale cualquier actualización en Configuration Manager. (No solo las actualizaciones que se aplican a la base de datos del sitio).
Todos los miembros necesitan el mismo modo de propagación. Configuration Manager configuración incluye una comprobación de requisitos previos para comprobar esta configuración al crear una base de datos mediante la instalación o la recuperación.
Nota:
Cuando el programa de instalación crea la base de datos y configura la propagación automática , el grupo de disponibilidad debe tener permisos para crear la base de datos. Este requisito se aplica tanto a una nueva base de datos como a una recuperación. Para obtener más información, vea Propagación automática para réplica secundaria.
Ubicación del miembro de réplica
Hospede todas las réplicas en un grupo de disponibilidad local o hospede todas en Microsoft Azure. No se admite un grupo que incluya un miembro local y un miembro de Azure.
Nota:
Si usa una máquina virtual de Azure para la SQL Server, habilite la dirección IP flotante. Para más información, consulte Configuración de un equilibrador de carga para un grupo de disponibilidad de SQL Server Always On en máquinas virtuales de Azure.
Configuration Manager configuración debe conectarse a cada réplica. Al configurar un grupo de disponibilidad en Azure y el grupo está detrás de un equilibrador de carga interno o externo, abra los siguientes puertos predeterminados:
Asignador de puntos de conexión RPC: TCP 135
SQL Server Service Broker: TCP 4022
SQL a través de TCP: TCP 1433
Una vez completada la instalación, estos puertos deben permanecer abiertos para Configuration Manager y el analizador de vínculos de replicación.
Puede usar puertos personalizados para estas configuraciones. Use los mismos puertos personalizados por el punto de conexión y en todas las réplicas del grupo de disponibilidad.
Para SQL Server replicar datos entre sitios, cree una regla de equilibrio de carga para cada puerto del equilibrador de carga de Azure. Para obtener más información, consulte Configuración de puertos de alta disponibilidad para un equilibrador de carga interno.
Oyente
El grupo de disponibilidad debe tener al menos un agente de escucha del grupo de disponibilidad. Al configurar Configuration Manager para usar la base de datos de sitio en el grupo de disponibilidad, usa el nombre virtual de este agente de escucha. Aunque un grupo de disponibilidad puede contener varios agentes de escucha, Configuration Manager solo puede usar uno. Para obtener más información, consulte Creación o configuración de un agente de escucha de grupo de disponibilidad de SQL Server.
Rutas de acceso de archivo
Al ejecutar Configuration Manager programa de instalación para configurar un sitio para usar la base de datos en un grupo de disponibilidad, cada servidor de réplica secundario debe tener una ruta de acceso de archivo SQL Server idéntica a la ruta de acceso de archivo para los archivos de base de datos del sitio en la réplica principal actual. Si no existe una ruta de acceso idéntica, el programa de instalación no puede agregar la instancia del grupo de disponibilidad como la nueva ubicación de la base de datos del sitio.
La cuenta de servicio de SQL Server local debe tener permiso control total para esta carpeta.
Los servidores de réplica secundarios solo requieren esta ruta de acceso de archivo mientras se usa Configuration Manager configuración para especificar la instancia de base de datos en el grupo de disponibilidad. Una vez completada la configuración de la base de datos de sitio en el grupo de disponibilidad, puede eliminar la ruta de acceso sin usar de losvers de réplica secundaria.
Por ejemplo, imagine la situación siguiente:
Cree un grupo de disponibilidad que use tres servidores SQL Server.
El servidor de réplica principal es una nueva instalación de SQL Server 2014. De forma predeterminada, almacena los archivos MDF y LDF de la base de datos en
C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA
.Ha actualizado ambos servidores de réplica secundaria a SQL Server 2014 de versiones anteriores. Con la actualización, estos servidores mantienen la ruta de acceso del archivo original para almacenar los archivos de base de datos:
C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
.Antes de mover la base de datos del sitio a este grupo de disponibilidad, en cada servidor de réplica secundario, cree la siguiente ruta de acceso de archivo:
C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA
. Esta ruta de acceso es un duplicado de la ruta de acceso en uso en la réplica principal, incluso si las réplicas secundarias no usarán esta ubicación de archivo.A continuación, conceda a la cuenta de servicio SQL Server en cada réplica secundaria acceso de control total a la ubicación de archivo recién creada en ese servidor.
Ahora puede ejecutar correctamente Configuration Manager configuración para configurar el sitio para usar la base de datos del sitio en el grupo de disponibilidad.
Conmutación por error de varias subredes
Puede habilitar la palabra clave de cadena de conexión MultiSubnetFailover en SQL Server. También debe agregar manualmente los siguientes valores al Registro de Windows en el servidor de sitio:
HKLM:\SOFTWARE\Microsoft\SMS\Identification
HKLM:\SOFTWARE\Microsoft\SMS\SQL Server
MSF Enabled : 1 (DWORD)
Advertencia
El uso de la alta disponibilidad del servidor de sitio y los grupos de disponibilidad de SQL Server Always On con conmutación por error de varias subredes no proporciona todas las funcionalidades de la conmutación automática por error para escenarios de recuperación ante desastres.
Si necesita crear un grupo de disponibilidad con un miembro en una ubicación remota, priorice en función de la latencia de red más baja. Una latencia de red alta puede provocar errores de replicación.
Limitaciones y problemas conocidos
Las siguientes limitaciones se aplican a todos los escenarios.
Opciones y configuraciones de SQL Server no compatibles
Grupos de disponibilidad básicos: introducidos con SQL Server edición Standard 2016, los grupos de disponibilidad básicos no admiten el acceso de lectura a réplicas secundarias. La configuración requiere este acceso. Para obtener más información, vea Grupos de disponibilidad de SQL Server básicos.
Instancia del clúster de conmutación por error: las instancias de clúster de conmutación por error no se admiten para una réplica que use con Configuration Manager. Para obtener más información, consulte SQL Server Always On instancias de clúster de conmutación por error.
Servidores SQL Server que hospedan grupos de disponibilidad adicionales
Cuando el SQL Server hospeda uno o varios grupos de disponibilidad además del grupo que se usa para Configuration Manager, necesita una configuración específica en el momento de ejecutar Configuration Manager configuración. Esta configuración también es necesaria para instalar una actualización para Configuration Manager. Cada réplica de cada grupo de disponibilidad debe tener las siguientes configuraciones:
Conmutación por error manual
Permitir cualquier conexión de solo lectura
Nota:
Configuration Manager admite el uso de réplicas sincrónicas del grupo de disponibilidad cuando se establece en Conmutación automática por error. Establezca la conmutación por error manual cuando:
- Ejecute Configuration Manager programa de instalación para especificar el uso de la base de datos de sitio en el grupo de disponibilidad.
- Instale cualquier actualización en Configuration Manager. (No solo las actualizaciones que se aplican a la base de datos del sitio).
Uso de base de datos no compatible
Configuration Manager solo admite la base de datos de sitio en un grupo de disponibilidad
Las bases de datos siguientes no son compatibles con Configuration Manager en un grupo de disponibilidad:
Base de datos de informes
Base de datos WSUS
Base de datos preexistente
No se puede usar una base de datos nueva creada en la réplica. Al configurar un grupo de disponibilidad, restaure una copia de una base de datos de Configuration Manager existente en la réplica principal.
Errores de instalación en ConfigMgrSetup.log
Al ejecutar Configuration Manager programa de instalación para mover una base de datos de sitio a un grupo de disponibilidad, intenta procesar roles de base de datos en las réplicas secundarias del grupo de disponibilidad. El archivo ConfigMgrSetup.log muestra el siguiente error:
ERROR: SQL Server error: [25000][3906][Microsoft][SQL Server Native Client 11.0][SQL Server]Failed to update database "CM_AAA" because the database is read-only. Configuration Manager Setup 1/21/2016 4:54:59 PM 7344 (0x1CB0)
Estos errores son seguros de omitir.
Expansión del sitio
Si configura la base de datos del sitio para que un sitio primario independiente use un grupo de disponibilidad, no puede expandir el sitio para incluir un sitio de administración central. Si prueba este proceso, se produce un error. Para expandir el sitio, quite temporalmente la base de datos del sitio primario del grupo de disponibilidad.
No es necesario realizar ningún cambio en la configuración al agregar un sitio secundario.
Cambios en la copia de seguridad del sitio
Copia de seguridad de archivos de base de datos
Cuando una base de datos de sitio usa un grupo de disponibilidad, ejecute la tarea de mantenimiento del servidor de sitio de copia de seguridad integrada para realizar copias de seguridad de los archivos y la configuración de Configuration Manager comunes. No use los archivos MDF o LDF creados por esa copia de seguridad. En su lugar, realice copias de seguridad directas de estos archivos de base de datos mediante SQL Server.
Todavía puede usar la copia de seguridad de SQL Server, pero no puede restaurarla directamente en un clúster de SQL Server Always On. Debe restaurarlo en un servidor independiente y volver a moverlo a SQL Server Always On.
Registro de transacciones
Establezca el modelo de recuperación de la base de datos del sitio en Completo. Esta configuración es un requisito para Configuration Manager uso en un grupo de disponibilidad. Planee supervisar y mantener el tamaño del registro de transacciones de la base de datos del sitio. En el modelo de recuperación completa, las transacciones no se protegen hasta que realiza una copia de seguridad completa de la base de datos o el registro de transacciones. Para obtener más información, consulte Copia de seguridad y restauración de bases de datos de SQL Server.
Cambios en site recovery
Si al menos un nodo del grupo de disponibilidad sigue funcionando, use la opción site recovery para omitir la recuperación de base de datos (use esta opción si la base de datos del sitio no se vio afectada).
Site recovery puede volver a crear la base de datos en un grupo de disponibilidad. Este proceso funciona con la propagación manual y automática.
Sugerencia
Al ejecutar el asistente para instalación o recuperación, la página Nueva base de datos de grupo de disponibilidad solo se aplica a las configuraciones de propagación manuales. Con la propagación automática, no hay ninguna copia de seguridad de base de datos compartida, por lo que no se muestra la página del asistente.
Para obtener más información, consulte Copia de seguridad y recuperación.
Cambios para la generación de informes
Instalación del punto de servicio de informes
El punto de servicios de informes no admite el uso del nombre virtual del agente de escucha del grupo de disponibilidad. Tampoco admite hospedar su base de datos en un grupo de disponibilidad.
De forma predeterminada, la instalación del punto de servicios de informes establece el nombre del servidor de base de datos del sitio en el nombre virtual especificado como agente de escucha. Cambie esta configuración para especificar un nombre de equipo y una instancia de una réplica en el grupo de disponibilidad.
Para descargar informes y aumentar la disponibilidad cuando un nodo de réplica está sin conexión, considere la posibilidad de instalar puntos adicionales de Reporting Services en cada nodo de réplica. A continuación, configure cada punto de servicios de informes para que use su propio nombre de equipo. Al instalar un punto de servicio de informes en cada réplica del grupo de disponibilidad, los informes siempre se pueden conectar a un servidor de punto de informes activo.
Cambio del punto de servicios de informes que usa la consola
En la consola de Configuration Manager, vaya al área de trabajo Supervisión, expanda Informes y seleccione el nodo Informes.
En la cinta de opciones, seleccione Opciones de informe.
En el cuadro de diálogo Opciones de informe, seleccione el punto de servicios de informes que desea usar.
Pasos siguientes
En este artículo se describen los requisitos previos, las limitaciones y los cambios en las tareas comunes que Configuration Manager requiere cuando se usan grupos de disponibilidad. Para conocer los procedimientos para configurar y configurar el sitio para que use grupos de disponibilidad, consulte Configuración de grupos de disponibilidad.