Incorporación de servidores de hospedaje para el proveedor de recursos de SQL

Importante

Los proveedores de recursos de SQL y MySQL para Azure Stack Hub están en desuso y no están disponibles para incorporar nuevos clientes. En su lugar, implemente SQL o MySQL directamente en máquinas virtuales y los administre mediante herramientas y prácticas estándar. Las implementaciones existentes de los proveedores de recursos siguen siendo compatibles, pero no se planea ningún nuevo desarrollo o incorporación de características.

Puede crear servidores que hospeden una base de datos de SQL Server en una máquina virtual en Azure Stack Hub o en una máquina virtual fuera del entorno de Azure Stack Hub, siempre y cuando el proveedor de recursos de SQL pueda conectarse a la instancia.

Nota:

El proveedor de recursos SQL debe crearse en la suscripción de proveedor predeterminada, mientras que los servidores de hospedaje de SQL deben crearse en una suscripción de usuario facturable. El servidor del proveedor de recursos no debe usarse para hospedar bases de datos de usuario.

Información general

Antes de agregar un servidor de hospedaje SQL, revise los siguientes requisitos obligatorios y generales.

Requisitos obligatorios

  • Habilite la autenticación de SQL en la instancia de SQL Server. Dado que la máquina virtual del proveedor de recursos de SQL no está unida a ningún dominio, solo se puede conectar a un servidor de hospedaje mediante la autenticación de SQL.
  • Configure las direcciones IP para las instancias de SQL como Públicas cuando se instalen en Azure Stack Hub. El proveedor de recursos y los usuarios como, por ejemplo, las aplicaciones web, se comunican a través de la red del usuario, por lo que se requiere conectividad a la instancia de SQL en esta red.

Requisitos generales

  • Dedique la instancia de SQL para que la use el proveedor de recursos y las cargas de trabajo de usuario. No se puede utilizar una instancia de SQL que esté siendo utilizada por otro consumidor. Esta restricción también se aplica a App Services.
  • Si tiene varias instancias de SQL Server en una única VM que desea configurar como servidores de hospedaje, cada una de las instancias de SQL Server debe tener una dirección IP o FQDN únicos. No se admite la configuración de varias instancias de SQL Server que compartan la misma dirección IP o FQDN que los servidores de hospedaje.
  • Configure una cuenta con los niveles de privilegios adecuados para que la use el proveedor de recursos (descrito a continuación).
  • Usted es responsable de administrar las instancias de SQL y sus hosts. Por ejemplo, el proveedor de recursos no aplica actualizaciones, administra copias de seguridad ni controla la rotación de credenciales.

Imágenes de las VM con SQL Server

Las imágenes de VM de IaaS de SQL están disponibles a través de la funcionalidad Marketplace Management. Estas imágenes son las mismas que las máquinas virtuales de SQL disponibles en Azure.

Asegúrese de descargar siempre la versión más reciente de la extensión IaaS de SQL antes de implementar una máquina virtual de SQL mediante un elemento de Marketplace. La extensión de IaaS y las correspondientes mejoras del portal proporcionan funcionalidades adicionales, como la aplicación automática de revisiones y la copia de seguridad. Para más información acerca de esta extensión, consulte Automatizar las tareas de administración en Azure Virtual Machines con la extensión del Agente SQL Server.

Nota:

La extensión SQL IaaS es obligatoria para todas las imágenes de SQL en Windows del marketplace; la máquina virtual no se podrá implementar si no ha descargado la extensión. No se usa con imágenes de máquina virtual de SQL basadas en Linux.

Hay otras opciones para implementar máquinas virtuales de SQL, incluidas las plantillas de la Galería de inicio rápido de Azure Stack Hub.

Nota:

Cualquier servidor de hospedaje instalado en una instancia de Azure Stack Hub de varios nodos se tiene que crear desde una suscripción de usuario que no sea la suscripción de proveedor predeterminada. Se deben crear desde el portal de usuario o desde una sesión de PowerShell con un inicio de sesión adecuado. Todos los servidores de hospedaje son máquinas virtuales facturables y deben tener las licencias de SQL adecuadas. El administrador del servicio puede ser el propietario de esa suscripción.

Privilegios requeridos

Puede crear un usuario administrador con menos privilegios que un administrador del sistema de SQL. El usuario solo necesita permisos para las operaciones siguientes:

  • Base de datos: Crear, modificar, con contención (solo para Always On), eliminar, hacer copia de seguridad
  • Grupo de disponibilidad: modificar, combinar, agregar o quitar base de datos
  • Inicio de sesión: crear, seleccionar, modificar, eliminar, revocar
  • Operaciones SELECT: [master].[sys].[availability_group_listeners] (AlwaysOn), sys.availability_replicas (AlwaysOn), sys.databases, [master].[sys].[dm_os_sys_memory], SERVERPROPERTY, [master].[sys].[availability_groups] (AlwaysOn), sys.master_files

Información adicional de seguridad

La siguiente información proporciona una guía de seguridad adicional:

  • Todo el almacenamiento de Azure Stack Hub está cifrado con BitLocker, por lo que cualquier instancia de SQL en Azure Stack Hub utilizará almacenamiento de blobs cifrado.
  • El proveedor de recursos de SQL es totalmente compatible con TLS 1.2. Asegúrese de que cualquier instancia de SQL Server administrada mediante el proveedor de recursos de SQL esté configurada para usar únicamente TLS 1.2 y de que el proveedor de recursos use esa configuración de forma predeterminada. Todas las versiones compatibles de SQL Server admiten TLS 1.2.
  • Use Administrador de configuración de SQL Server para establecer la opción ForceEncryption para garantizar que todas las comunicaciones con SQL server están siempre cifradas. Para más información, consulte Para configurar el servidor para forzar conexiones cifradas.
  • Asegúrese de que cualquier aplicación cliente también se comunica a través de una conexión cifrada.
  • RP está configurado para confiar en los certificados utilizados por las instancias de SQL Server.

Agregar capacidad a través de la conexión a un servidor SQL de hospedaje independiente

Puede usar servidores SQL (que no sean de alta disponibilidad) independientes con cualquier edición de SQL Server 2014, SQL Server 2016 o SQL Server 2019. Asegúrese de que tiene las credenciales de una cuenta con privilegios de administrador del sistema.

Para agregar un servidor de hospedaje independiente que ya se haya configurado, siga estos pasos:

  1. Inicie sesión en el portal del administrador de Azure Stack Hub como administrador de servicios.

  2. Seleccione Todos los servicios>RECURSOS ADMINISTRATIVOS>SQL Hosting Servers (Servidores de hospedaje SQL).

    Servidores de hospedaje de SQL en el portal del administrador de Azure Stack Hub

    En SQL Hosting Servers (Servidores de hospedaje SQL), puede conectar el proveedor de recursos de SQL a instancias de SQL Server que actuarán como back-end del proveedor de recursos.

    Panel del adaptador de SQL en el portal del administrador de Azure Stack Hub

  3. Haga clic en Agregar y, a continuación, proporcione los detalles de conexión de la instancia de SQL Server en el panel Agregar un servidor de hospedaje de SQL.

    Importante

    No elija el grupo de recursossystem.<region>.sqladapter que creó el instalador del proveedor de recursos de SQL durante la implementación. Debe proporcionar un grupo de recursos diferente para el servidor de hospedaje independiente.

    Adición de un servidor de hospedaje de SQL en el portal del administrador de Azure Stack Hub

    Tiene la opción de incluir un nombre de instancia y un número de puerto si la instancia no está asignada al puerto predeterminado 1433.

    Nota:

    Siempre y cuando el usuario y el administrador en Azure Resource Manager puedan acceder a la instancia de SQL, esta puede ponerse bajo el control del proveedor de recursos. La instancia de SQL debe asignarse exclusivamente al proveedor de recursos.

  4. A medida que agregue servidores, debe asignarlos a una SKU existente o crear una nueva. En Add a Hosting Server (Agregar un servidor de hospedaje), seleccione SKU.

    • Para usar una SKU existente, elija una SKU disponible y, a continuación, seleccione Crear.

    • Para crear una SKU, seleccione + Create new SKU (Crear nueva SKU). En Create SKU (Crear SKU), introduzca la información necesaria y seleccione Aceptar.

      Creación de una SKU en el portal del administrador de Azure Stack Hub

Proporcione alta disponibilidad mediante grupos de disponibilidad de Always On de SQL

La configuración de instancias alwaysOn de SQL requiere pasos adicionales y requiere tres máquinas virtuales (o máquinas físicas). En este artículo se da por supuesto que ya tiene un conocimiento sólido de los grupos de disponibilidad AlwaysOn. Vea los siguientes artículos para más información:

Nota:

El proveedor de recursos del adaptador SQL solo admite instancias de SQL 2016 SP1 Enterprise o versiones posteriores para grupos de disponibilidad AlwaysOn. Esta configuración del adaptador requiere nuevas funcionalidades de SQL, como automatic seeding.

Propagación automática

Tiene que habilitar la opción Propagación automática en cada grupo de disponibilidad para cada instancia de SQL Server.

Para habilitar la propagación automática en todas las instancias, edite y ejecute el siguiente comando SQL en la réplica principal para cada instancia secundaria:

ALTER AVAILABILITY GROUP [<availability_group_name>]
    MODIFY REPLICA ON '<secondary_node>'
    WITH (SEEDING_MODE = AUTOMATIC)
GO

El grupo de disponibilidad tiene que estar entre corchetes.

En los nodos secundarios, ejecute el siguiente comando SQL:

ALTER AVAILABILITY GROUP [<availability_group_name>] GRANT CREATE ANY DATABASE
GO

Configuración de autenticación de base de datos independiente

Antes de agregar una base de datos contenida a un grupo de disponibilidad, asegúrese de que la opción de servidor de autenticación de base de datos contenida esté establecida en 1 en cada instancia de servidor que alberga una réplica de disponibilidad para el grupo de disponibilidad. Para más información, consulte la opción de configuración del servidor de autenticación de base de datos independiente.

Use estos comandos para establecer la opción del servidor de autenticación de base de datos independiente para cada instancia:

EXEC sp_configure 'contained database authentication', 1
GO
RECONFIGURE
GO

Para agregar servidores de hospedaje SQL Always On

  1. Inicie sesión en el portal del administrador de Azure Stack Hub como administrador de servicios.

  2. Seleccione Examinar>RECURSOS ADMINISTRATIVOS>SQL Hosting Servers (Servidores de hospedaje SQL) >+Agregar.

    En SQL Hosting Servers (Servidores de hospedaje SQL), puede conectar el proveedor de recursos de SQL Server a instancias reales de SQL Server que actúan como back-end del proveedor de recursos.

  3. Rellene el formulario con los detalles de conexión de la instancia de SQL Server. Asegúrese de utilizar la dirección FQDN del listener de Always On (y, opcionalmente, el número de puerto y el nombre de instancia). Proporcione la información de la cuenta que ha configurado con privilegios de administrador del sistema.

    Importante

    No elija el grupo de recursossystem.<region>.sqladapter que creó el instalador del proveedor de recursos de SQL durante la implementación. Debe proporcionar un grupo de recursos diferente para el servidor de hospedaje independiente.

  4. Marque la casilla Always On Availability Group para habilitar la compatibilidad con instancias de Always On Availability Group de SQL.

    Habilitación de Grupos de disponibilidad AlwaysOn en el portal del administrador de Azure Stack Hub

  5. Agregue la instancia de SQL Always On a una SKU.

    Importante

    No puede mezclar servidores independientes con instancias de Always On en la misma SKU. Intentar mezclar tipos después de agregar el primer servidor de alojamiento produce un error.

Notas del SKU

Use un nombre de SKU que describa las capacidades de los servidores de la SKU, como la capacidad y el rendimiento. El nombre sirve de ayuda para que los usuarios implementen sus bases de datos en la SKU adecuada. Por ejemplo, puede usar nombres de SKU para diferenciar las ofertas de servicio mediante las características siguientes:

  • alta capacidad
  • alto rendimiento
  • alta disponibilidad

Como procedimiento recomendado, todos los servidores de hospedaje de una SKU deben tener las mismas características de rendimiento y recursos.

Las SKU no se pueden ocultar de ciertos inquilinos, ni tampoco pueden estar dedicadas a ciertos inquilinos.

Las SKU pueden tardar hasta una hora en estar visibles en el portal. Los usuarios no pueden crear una base de datos hasta que se cree totalmente la SKU.

Para editar una SKU, vaya a All services>MySQL Adapter>SKUs (Todos los servicios > Adaptador de MySQL > SKU). Seleccione la SKU que quiere modificar, realice los cambios necesarios y haga clic en Guardar para guardar los cambios.

Para eliminar una SKU que ya no es necesaria, vaya a Todos los servicios>Adaptador de SQL>SKU. Haga clic en el nombre de la SKU y seleccione Eliminar para eliminarla.

Importante

Las nuevas SKU pueden tardar hasta cuatro horas en estar disponibles en el portal del usuario.

Bases de datos SQL disponibles para los usuarios

Cree planes y ofertas para poner las bases de datos SQL a disposición de los usuarios. Agregue el servicio Microsoft.SqlAdapter al plan y cree una cuota nueva.

Importante

Pueden pasar hasta dos horas hasta que las nuevas cuotas estén disponibles en el portal del usuario o antes de que se aplique una cuota modificada.

Nota:

Si cualquiera de los planes actuales utiliza alguna cuota, esta no se puede eliminar. Primero debe eliminar el plan al que hace referencia la cuota.

Pasos siguientes

Agregar bases de datos