Arquitectura de un solo nodo de SQL Server en Amazon EC2 - 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.

Arquitectura de un solo nodo de SQL Server en Amazon EC2

El siguiente diagrama ilustra una arquitectura recomendada para un servidor SQL Server de nodo único en Amazon Elastic Compute Cloud (Amazon EC2) antes de añadir soporte para alta disponibilidad (HA) y recuperación de desastres (DR).

En esta arquitectura, la base de datos de SQL Server se implementa en una instancia EC2, mediante una imagen de máquina de Amazon (AMI) para SQL Server y volúmenes separados para OS, DATA, LOG y copias de seguridad. El almacenamiento rápido de memoria no volátil (NVMe) se adjunta directamente a la instancia EC2 y se utiliza para la base de datos tempdb de SQL Server. AWS Directory Service se utiliza para configurar la autenticación de Windows para la base de datos de SQL Server. También puede utilizar AWS Systems Manager para detectar e instalar parches y actualizaciones de SQL Server.

Arquitectura de SQL Server de nodo único en Amazon EC2 antes de HA/DR

En la tabla siguiente se resumen las recomendaciones para configurar esta arquitectura. Estas recomendaciones se analizan en detalle en las secciones siguientes.

Tipos de instancia/AMI
Edición de SQL Server
  • Edición Developer de SQL Server (sin producción)

  • SQL Server Standard y Enterprise Editions (producción)

Tipo de almacenamiento
Volúmenes
  • SO

  • DATA

  • LOG

  • tempdb

  • Espacio de Scratch para almacenar y descargar copias de seguridad

Opciones de DR
  • Amazon EC2

  • Instantáneas de Amazon EBS

  • Copias de seguridad nativas de SQL Server

Tipos de instancias

AWS ofrece una selección de clases de instancias para sus cargas de trabajo de SQL Server. Puede elegir entre optimizadas para computación, optimizadas para memoria, optimizadas para almacenamiento, de uso general y de otros tipos, según la carga de trabajo esperada en el servidor de bases de datos, la versión, las opciones de HA/DR, los núcleos necesarios y las consideraciones de licencia. Le recomendamos que elija tipos de instancias optimizadas para Amazon EBS para SQL Server. Estas ofrecen el mejor rendimiento con volúmenes de EBS asociados en una red dedicada, lo cual es crítico para las cargas de trabajo de SQL Server que pueden tener requisitos de acceso a datos exigentes. Para las cargas de trabajo de bases de datos estándar, puede ejecutar clases de instancias optimizadas para memoria, como R5, R5b, R5d y R5n. También puede incluir el almacenamiento de instancias o el almacenamiento de NVMe. Ambos son perfectos para tempdb y ofrecen un rendimiento equilibrado para las cargas de trabajo de bases de datos.

Para cargas de trabajo críticas, la instancia z1d de alto rendimiento está optimizada para cargas de trabajo que conllevan altos costos de licencia, como SQL Server. La instancia z1d es compatible con un procesador escalable Intel Xeon personalizado que ofrece una frecuencia turbo de núcleo sostenida de hasta 4 GHz, que es considerablemente más rápida que otras instancias. Para las cargas de trabajo que necesitan un procesamiento secuencial más rápido, puede ejecutar menos núcleos con una instancia z1d y obtener un rendimiento igual o mejor que el de otras instancias con más núcleos.

Amazon también proporciona AMI dedicadas para SQL Server en Microsoft Windows Server para ayudarle a alojar las ediciones más recientes de SQL Server en Amazon EC2.

Almacenamiento

Algunos tipos de instancias ofrecen volúmenes de almacén de instancias NVMe. NVMe es una opción de almacenamiento temporal (efímero). Este almacenamiento está asociado directamente a la instancia EC2. Aunque el almacenamiento de NVMe es temporal y los datos se pierden al reiniciar, ofrece el rendimiento más óptimo. Por lo tanto, es adecuado para la base de datos tempdb de SQL Server, que tiene un alto nivel de E/S y patrones de acceso aleatorio a los datos. No se aplican cargos adicionales por el uso del en un almacén de instancias NVMe. Para obtener orientación, consulte la sección Colocar tempdb en un almacén de instancias en la guía Prácticas recomendadas para implementar SQL Server en Amazon EC2.

Amazon EBS es una solución de almacenamiento duradera que cumple los requisitos de SQL Server para un almacenamiento rápido y disponible. Microsoft recomienda mantener separados los volúmenes de datos y de registros para obtener un rendimiento óptimo. Algunos motivos para esta separación incluyen los siguientes:

  • Diferentes métodos de acceso a los datos. Los volúmenes de datos utilizan el acceso aleatorio a los datos de procesamiento de transacciones en línea (OLTP), mientras que los volúmenes de registro utilizan el acceso en serie.

  • Mejores opciones de recuperación. La pérdida de un volumen no afecta al otro y contribuye a la recuperación de los datos.

  • Diferentes tipos de carga de trabajo. Los volúmenes de datos son para cargas de trabajo de OLTP, mientras que los volúmenes de registro se destinan a cargas de trabajo de procesamiento analítico en línea (OLAP).

  • Diferentes requisitos de rendimiento. Los volúmenes de datos y de registro tienen diferentes requisitos de IOPS y de latencia, tasas de rendimiento mínimas y puntos de referencia de rendimiento similares.

Para seleccionar el tipo de volumen de Amazon EBS correcto, debe analizar los métodos de acceso a la base de datos, las IOPS y el rendimiento. Recopile métricas tanto durante las horas de trabajo estándar como durante el uso máximo. El servidor de SQL usa extensiones para almacenar datos. La unidad atómica de almacenamiento del servidor de SQL es una página, que tiene un tamaño de 8 KB. Ocho páginas contiguas físicamente forman una extensión (que tiene un tamaño de 64 KB). Por lo tanto, en un equipo con el servidor de SQL, el tamaño de la unidad de asignación de NTFS para alojar los archivos de bases de datos SQL (incluido el tempdb) debe ser de 64 KB. Para obtener información sobre cómo comprobar el tamaño de asignación de NTFS de sus unidades, consulte la guía Prácticas recomendadas para implementar SQL Server en Amazon EC2.

La elección del volumen de EBS depende de la carga de trabajo, es decir, de si la base de datos tiene una gran intensidad de lectura o de escritura, si requiere altas IOPS, almacenamiento de archivos y consideraciones similares. En la siguiente tabla, se muestra un ejemplo de configuración.

Recurso de Amazon EBS Tipo Descripción
Disco de SO

gp3

Almacenamiento de uso general.

Disco DATA

io1/io2

Almacenamiento de gran intensidad de escritura.

Disco de registro

gp3 or io2

Almacenamiento de uso general para cargas de trabajo intensivas.

Disco de copia de seguridad

st1

Almacenamiento de archivos menos caro. Para un mejor rendimiento, las copias de seguridad también se pueden almacenar en un disco más rápido si se copian a Amazon Simple Storage Service (Amazon S3) con regularidad.

Consideraciones sobre Amazon EBS y Amazon S3

En la siguiente tabla se muestra una comparación de Amazon EBS y Amazon S3 en cuanto al almacenamiento. Utilice esta información para comprender las diferencias entre los dos servicios y elegir el mejor enfoque para su caso de uso.

Servicio Disponibilidad Durabilidad Notas
Amazon EBS
  • Todos los tipos de volumen de EBS ofrecen funcionalidad de instantáneas y están diseñados para tener una disponibilidad del 99,999 %.

  • Puede usar instantáneas para aprovisionar nuevas instancias en diferentes regiones de AWS en caso de que se produzca un desastre.

  • Los datos de los volúmenes de EBS se replican en varios servidores de una zona de disponibilidad para evitar la pérdida de datos debido a un error de alguno de los componentes únicos.

  • Los volúmenes de EBS están diseñados para una tasa de errores anual (AFR) de entre el 0,1 y el 0,2 por ciento, donde el error se refiere a la pérdida total o parcial del volumen, según el tamaño y el rendimiento del volumen.

  • Una instancia optimizada para Amazon EBS utiliza una pila de configuración optimizada y proporciona ancho de banda adicional y dedicado para las E/S de Amazon EBS. Esta optimización proporciona el mejor rendimiento para sus volúmenes de EBS, ya que reduce al mínimo la contención entre las E/S de Amazon EBS y otro tráfico procedente de la instancia.

  • Se admiten restauraciones rápidas de instantáneas para un máximo de 50 instantáneas al mismo tiempo. Debe habilitar esta característica de forma explícita para cada instantánea.

  • Una instancia optimizada para Amazon EBS ofrece un rendimiento aprovisionado máximo en el momento de la inicialización, por lo que no implica tiempo de preparación.

Amazon S3
  • Altamente disponibles.

  • Diseñado para una disponibilidad del 99,99 % durante un año concreto.

  • Hay varias clases de almacenamiento disponibles, como S3 Standard y S3 Standard-Infrequent Access (Estándar - Acceso poco frecuente de S3). Puede mover los archivos de copia de seguridad a una clase de almacenamiento en función de un periodo de retención.

  • Amazon S3, Amazon Glacier y S3 Glacier Deep Archive están diseñados para una durabilidad del 99,999999999 por ciento (11 nueves). Tanto Amazon S3 y Amazon Glacier ofrecen copias de seguridad fiables de los datos, con la replicación de objetos en al menos tres zonas de disponibilidad dispersas geográficamente.

  • Puede utilizar Amazon S3 para realizar copias de seguridad a nivel de archivo de SQL Server a largo plazo (incluidas copias de seguridad completas y registros de transacciones).

  • Amazon S3 admite:

  • Amazon S3 proporciona el almacenamiento menos caro. Se aplican tarifas de transferencia de datos entre regiones.

SQL Server en Amazon FSx para Windows File Server

Amazon FSx para Windows File Server ofrece un rendimiento rápido con un rendimiento de base de referencia de hasta 2 GB/segundo por sistema de archivos, cientos de miles de IOPS y latencias uniformes de menos de un submilisegundo. Para proporcionar el rendimiento adecuado a sus instancias de SQL Server, puede elegir un nivel de rendimiento que sea independiente del tamaño de su sistema de archivos. Los niveles más altos de capacidad de rendimiento también vienen acompañados de niveles más altos de IOPS que el servidor de archivos puede ofrecer a las instancias de SQL Server que acceden a él. La capacidad de almacenamiento determina no solo la cantidad de datos que puede almacenar, sino también la cantidad de operaciones I/O por segundo (IOPS) que puede realizar en el almacenamiento: cada GB de almacenamiento ofrece 3 IOPS. Puede aprovisionar cada sistema de archivos para que tenga un tamaño de hasta 64 TiB (en comparación con los 16 TiB de Amazon EBS). También puede utilizar los sistemas Amazon FSx como testigo de archivos compartidos para las implementaciones del clúster de conmutación por error de Windows Server (WSFC).