Amazon RDS para SQL Server - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Amazon RDS para SQL Server

Amazon RDS para SQL Server es un servicio de base de datos gestionado que simplifica el aprovisionamiento y la administración de la base de datos de SQL Server en AWS. Amazon RDS facilita la configuración, el funcionamiento y el escalado de implementaciones de SQL Server en la nube. Con Amazon RDS, puede implementar varias versiones de SQL Server (2014, 2016, 2017, 2019 y 2022) y ediciones (incluidas Express, Web, Standard y Enterprise) en cuestión de minutos, con una capacidad informática rentable y de tamaño variable. Puede aprovisionar instancias de base de datos de Amazon RDS para SQL Server con almacenamiento de SSD de uso general o SSD de IOPS aprovisionadas. (Para obtener más información, consulte los tipos de almacenamiento de Amazon RDS en la AWS documentación). SSD de IOPS aprovisionadas está diseñado para ofrecer un rendimiento de E/S rápido, predecible y uniforme, y está optimizado para cargas de trabajo de bases de datos transaccionales (OLTP) con un uso intensivo de E/S.

Amazon RDS le permite centrarse en el desarrollo de aplicaciones, ya que gestiona las tediosas tareas de administración de bases de datos, como el aprovisionamiento, las copias de seguridad, la aplicación de parches de software, la supervisión y el escalado del hardware. Amazon RDS para SQL Server también ofrece implementaciones multi-AZ y réplicas de lectura (para la edición SQL Server Enterprise) para proporcionar alta disponibilidad, rendimiento, escalabilidad y fiabilidad para las cargas de trabajo de producción.

Para obtener más información sobre la migración de SQL Server a Amazon RDS, consulte los patrones de replataforma en el sitio web de la Guía AWS prescriptiva.

Cuándo elegir Amazon RDS

Amazon RDS para SQL Server es una buena opción de migración cuando:

  • Desea centrarse en su empresa y sus aplicaciones, y dedicarse AWS a tareas pesadas e indiferenciadas, como el aprovisionamiento de la base de datos, la gestión de las tareas de copia de seguridad y recuperación, la gestión de los parches de seguridad, las actualizaciones menores de las versiones de SQL Server y la gestión del almacenamiento.

  • Necesita una solución de base de datos de alta disponibilidad y quiere aprovechar la replicación multi-AZ sincrónica y con solo pulsar un botón que ofrece Amazon RDS, sin tener que configurar y mantener manualmente una duplicación de base de datos, clústeres de conmutación por error o grupos de disponibilidad Always On.

  • Desea pagar la licencia de SQL Server como parte del costo de la instancia por hora, en lugar de realizar una gran inversión inicial.

  • El tamaño de su base de datos y sus necesidades de IOPS están cubiertos por Amazon RDS para SQL Server. Consulte Amazon RDS DB Instance Storage en la AWS documentación para conocer los límites máximos actuales.

  • No desea gestionar las copias de seguridad ni las point-in-time recuperaciones de su base de datos.

  • Prefiere centrarse en tareas de alto nivel, como el ajuste del rendimiento y la optimización de esquemas, en lugar de en la administración diaria de la base de datos.

  • Desea escalar el tipo de instancia en función de sus patrones de carga de trabajo sin preocuparse por las complejidades de las licencias.

Tras evaluar los requisitos de la base de datos y del proyecto, si decide migrar a Amazon RDS para SQL Server, consulte los detalles que se proporcionan en las siguientes secciones y revise las prácticas recomendadas de migración que analizamos más adelante en esta guía.

Para conocer las funciones, versiones y opciones de SQL Server compatibles actualmente, consulte las características de Amazon RDS for SQL Server en AWS el sitio web, Cómo elegir entre Amazon EC2 y Amazon RDS más adelante en esta guía y Microsoft SQL Server en Amazon AWS RDS en la documentación. Si va a pasarse a Amazon RDS Custom, asegúrese de revisar los requisitos y limitaciones de Amazon RDS Custom para SQL Server.

Alta disponibilidad

Amazon RDS proporciona alta disponibilidad y compatibilidad con la conmutación por error para las bases de datos implementadas con la opción multi-AZ. Cuando provee su base de datos con la opción multi-AZ, Amazon RDS aprovisiona y mantiene automáticamente una instancia en espera sincrónica dentro de una zona de disponibilidad diferente. La instancia de base de datos principal replica sincrónicamente los datos en la instancia en espera. Si se produce algún problema, Amazon RDS reparará automáticamente las instancias de base de datos con problemas y restablecerá la sincronización. En caso de que se produzca un fallo en la infraestructura o se interrumpa la zona de disponibilidad, Amazon RDS realiza una conmutación por error automática a la instancia en espera. La conmutación por error solo ocurre si las instancias de bases de datos en espera y principal están totalmente sincronizadas. Como el punto de conexión permanece igual para las instancias principal y en espera, puede reanudar las operaciones de la base de datos en cuanto se complete la conmutación por error, sin realizar una intervención manual. El tiempo de conmutación por error se ve afectado por el tiempo necesario para completar el proceso de recuperación. Las transacciones grandes aumentan el tiempo de conmutación por error.

El siguiente diagrama ilustra la opción de implementación multi-AZ de Amazon RDS para SQL Server.

Amazon RDS for SQL Server in a Multi-AZ configuration

Al configurar SQL Server en una configuración multi-AZ, Amazon RDS configura automáticamente la instancia de base de datos en espera mediante la duplicación de la base de datos o los grupos de disponibilidad Always On, en función de la versión de SQL Server que implemente. Las versiones y ediciones específicas de SQL Server se enumeran en la documentación de Amazon RDS.

En las implementaciones multi-AZ, las operaciones como el escalado de instancias o las actualizaciones del sistema, como la aplicación de parches de sistema operativo (SO), se aplican primero en la instancia en espera, antes de realizar la conmutación por error automática de la instancia principal, para mejorar la disponibilidad.

Gracias a la optimización de la conmutación por error de SQL Server, determinadas cargas de trabajo pueden generar una mayor carga de E/S en la instancia en espera que en la instancia principal, especialmente en las implementaciones de duplicación de la base de datos. Esta funcionalidad puede provocar mayores IOPS en la instancia en espera. Le recomendamos que tenga en cuenta las necesidades de IOPS máximas de las instancias principal y en espera al aprovisionar el tipo de almacenamiento y las IOPS de su instancia de base de datos de Amazon RDS para SQL Server. También puede especificar MultiSubnetFailover=True, si su controlador de cliente lo admite, para reducir considerablemente el tiempo de conmutación por error.

Limitaciones

  • La opción multi-AZ no está disponible para las ediciones SQL Server Express y Web. Está disponible solo para las ediciones Standard y Enterprise de SQL Server.

  • No puede configurar la instancia de base de datos en espera de modo que acepte la actividad de lectura de bases de datos.

  • No se admite multi-AZ entre regiones.

  • En Amazon RDS, puede emitir un comando de detención en una instancia de base de datos independiente y mantener la instancia detenida para evitar incurrir en gastos computacionales. No puede detener una instancia de base de datos de Amazon RDS para SQL Server que esté en una configuración multi-AZ. En su lugar, puede finalizar la instancia, tomar una instantánea final antes de la finalización y volver a crear una nueva instancia de Amazon RDS a partir de la instantánea cuando la necesite. O bien, puede eliminar primero la configuración multi-AZ y, después, detener la instancia. Transcurridos siete días, la instancia detenida se reiniciará para poder aplicar cualquier mantenimiento pendiente.

Para conocer las limitaciones adicionales, consulte Notas y recomendaciones relativas a las implementaciones multi-AZ de Microsoft SQL Server en la documentación de Amazon RDS.

Réplicas de lectura

Las réplicas de lectura proporcionan escalabilidad y equilibrio de carga. Una réplica de lectura de SQL Server es una copia física de una instancia de base de datos de Amazon RDS para SQL Server que se utiliza con fines de solo lectura. Amazon RDS ayuda a reducir la carga de la instancia de base de datos principal al transferir las cargas de trabajo de solo lectura a la instancia de base de datos de réplica de lectura. Las actualizaciones realizadas en la instancia de base de datos principal se copian de forma asíncrona en la instancia de réplica de lectura.

Cuando solicita una réplica de lectura, Amazon RDS realiza una instantánea de la instancia de base de datos de origen y se convierte en la instantánea a la de la réplica de lectura. No se produce ninguna interrupción al crear y eliminar una réplica de lectura. Amazon RDS para SQL Server actualiza la base de datos primaria inmediatamente después de actualizar las réplicas de lectura, independientemente del periodo de mantenimiento. Cada réplica de lectura viene con un punto de conexión independiente que se utiliza para conectarse a la base de datos de réplica de lectura.

Amazon RDS para SQL Server facilita la creación de réplicas de lectura mediante la administración de la configuración de los grupos de disponibilidad Always On y el mantenimiento de conexiones de red seguras entre una instancia de base de datos principal y sus réplicas de lectura.

Puede configurar una réplica de lectura en la misma AWS región que su base de datos principal. Amazon RDS para SQL Server es compatible con réplicas de lectura entre regiones. Puede crear hasta cinco réplicas de lectura a partir de una instancia de base de datos de origen.

nota

Las réplicas de lectura solo están disponibles con las siguientes versiones y ediciones de SQL Server:

  • SQL Server 2017: Enterprise Edition 14.00.3049.1 o versiones posteriores

  • SQL Server 2016: Enterprise Edition 13.00.5216.0 o versiones posteriores

Las versiones y ediciones de SQL Server que admiten la duplicación de la base de datos para entornos multi-AZ no ofrecen réplicas de lectura.

El siguiente diagrama ilustra una instancia de base de datos de Amazon RDS for SQL Server en un entorno Multi-AZ con una réplica de lectura en otra zona de disponibilidad de la AWS misma región. No todas AWS las regiones ofrecen más de dos zonas de disponibilidad, por lo que debe comprobar la región que piensa utilizar antes de adoptar esta estrategia.

Amazon RDS for SQL Server with a read replica in another Availability Zone in the same Region

Una réplica de lectura de SQL Server no permite operaciones de escritura. Sin embargo, puede promocionar la réplica de lectura para que sea de escritura. Después de promocionarla, no podrá volver a convertirla en una réplica de lectura. Se convertirá en una instancia de base de datos única e independiente que no tendrá ninguna relación con su instancia de base de datos principal original. Los datos de la réplica de lectura promocionada coincidirán con los datos de la instancia de base de datos de origen hasta el momento en el que se hizo la solicitud para promocionarla. La versión del motor de base de datos de SQL Server de la instancia de base de datos de origen y todas sus réplicas de lectura serán iguales.

Para una replicación eficaz, recomendamos lo siguiente:

  • Configure cada réplica de lectura con los mismos recursos informáticos y de almacenamiento que la instancia de base de datos de origen.

  • Debe habilitar las copias de seguridad automáticas en la instancia de base de datos de origen estableciendo el periodo de retención de copia de seguridad en un valor distinto de 0 (cero).

  • La instancia de base de datos de origen debe ser una implementación multi-AZ con Grupos de disponibilidad Always On.

Para obtener información sobre la compatibilidad, las ediciones y las limitaciones de las versiones de SQL Server, consulte Limitaciones de las réplicas de lectura con SQL Server en la documentación de Amazon RDS.

Para obtener más información sobre el uso de réplicas de lectura, consulte Trabajar con réplicas de lectura y Trabajar con réplicas de lectura de SQL Server para Amazon RDS en la documentación. AWS Para obtener más información acerca de los precios de las transferencias de datos, consulte Precios de Amazon RDS.

Recuperación de desastres

Con Amazon RDS para SQL Server, puede crear una estrategia fiable de recuperación de desastres (DR) entre regiones. Los principales motivos para crear una solución de DR son la continuidad empresarial y la conformidad:

  • Una estrategia de DR eficaz le ayuda a mantener sus sistemas en funcionamiento con interrupciones mínimas o ninguna durante un evento catastrófico. Una estrategia de DR fiable y eficaz para todas las regiones mantiene su empresa en funcionamiento incluso si toda una región deja de funcionar.

  • Una solución de DR entre regiones le ayuda a cumplir los requisitos de auditoría y conformidad.

El objetivo de punto de recuperación (RPO), un objetivo de tiempo de recuperación (RTO) y el costo son tres métricas clave que se deben tener en cuenta al desarrollar una estrategia de DR. Para ver otras opciones para proporcionar réplicas entre regiones, consulte AWS Marketplace. Para obtener más información sobre estos enfoques, consulte la recuperación ante desastres entre regiones de Amazon RDS for SQL Server en AWS el blog de bases de datos.