SQL Server na arquitetura de nó único do Amazon EC2 - Recomendações da AWS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

SQL Server na arquitetura de nó único do Amazon EC2

O diagrama a seguir ilustra uma arquitetura recomendada para um SQL Server de nó único no Amazon Elastic Compute Cloud (Amazon EC2) antes de adicionar suporte para alta disponibilidade (HA) e recuperação de desastres (DR).

Nessa arquitetura, o banco de dados SQL Server é implantado em uma instância do EC2, usando uma imagem de máquina da Amazon (AMIs) para SQL Server e volumes separados para OS, DATA, LOG e backups. O armazenamento expresso de memória não volátil (NVMe) é associado diretamente à instância do EC2 e usado para o banco de dados tempdb do SQL Server. AWS Directory Service é usado para configurar a autenticação do Windows para o banco de dados do SQL Server. Você também pode usar AWS Systems Manager para detectar e instalar patches e atualizações do SQL Server.


      Arquitetura SQL Server de nó único no Amazon EC2 antes do HA/DR

A tabela a seguir resume as recomendações para configurar essa arquitetura. Essas recomendações são discutidas em detalhes nas seções a seguir.

AMI/Tipo de instância
Edição do SQL Server
  • Edição do SQL Server Developer (não produção)

  • Edições Standard e Enterprise do SQL Server (produção)

Tipo de armazenamento
Volumes
  • SO

  • DATA

  • LOG

  • tempdb

  • Espaço de rascunho para armazenar e baixar backups

Opções de DR
  • Amazon EC2

  • Snapshots do Amazon EBS

  • Backups nativos do SQL Server

Tipos de instância

A AWS oferece uma seleção de classes de instância para suas workloads do SQL Server. Você pode escolher entre otimizado para computação, otimizado para memória, otimizado para armazenamento, uso geral e outros tipos, dependendo do workload esperado no servidor de banco de dados, da versão, das opções de HA/DR, dos núcleos necessários e das considerações de licenciamento. Recomendamos que você escolha os tipos de instância otimizados para Amazon EBS para o SQL Server. Eles oferecem o melhor throughput com volumes do EBS anexados em uma rede dedicada, o que é essencial para workloads do SQL Server que podem ter requisitos pesados de acesso a dados. Para workloads de banco de dados padrão, você pode executar classes de instância otimizada para memória, como R5, R5b, R5d e R5n. Você também pode incluir armazenamento de instância ou armazenamento NVMe. Ambos são ideais para tempdb e oferecem desempenho equilibrado para workloads de banco de dados.

Para workloads críticas, a instância z1d de alto desempenho é otimizada para workloads que acarretam altos custos de licenciamento, como o SQL Server. A instância z1d é criada com um processador escalável Intel Xeon personalizado que fornece uma frequência turbo sustentada de todos os núcleos de até 4,0 GHz, o que é significativamente mais rápido do que outras instâncias. Para workloads que precisam de processamento sequencial mais rápido, você pode executar menos núcleos com uma instância z1d e obter o mesmo desempenho ou melhor do que outras instâncias com mais núcleos.

A Amazon também fornece AMIs dedicadas para o SQL Server no Microsoft Windows Server para ajudá-lo a hospedar as edições mais recentes do SQL Server no Amazon EC2.

Armazenamento

Alguns tipos de instância oferecem volumes de armazenamento de instância NVMe. O NVMe é uma opção de armazenamento temporário (efêmero). Esse armazenamento é anexado diretamente à instância do EC2. Embora o armazenamento NVMe seja temporário e os dados sejam perdidos na reinicialização, ele oferece o melhor desempenho. Portanto, é adequado para o banco de dados tempdb do SQL Server, que tem altos padrões de E/S e acesso a dados aleatório. Não há cobrança adicional pelo uso do em uma instância de um armazenamento de instância NVMe para tempdb. Para obter orientação adicional, consulte a seção Adicionar tempdb em um armazenamento de instâncias no guia Práticas recomendadas para implantação do SQL Server no Amazon EC2.

O Amazon EBS é uma solução de armazenamento durável que atende aos requisitos do SQL Server para armazenamento rápido e disponível. A Microsoft recomenda manter os volumes de dados e logs separados para um desempenho ideal. Os motivos para essa separação incluem:

  • Diferentes métodos de acesso aos dados. Os volumes de dados usam acesso aleatório aos dados de processamento de transações on-line (OLTP), enquanto os volumes de log usam acesso serial.

  • Opções de recuperação de desastres. A perda de um volume não afeta o outro volume e ajuda na recuperação dos dados.

  • Diferentes tipos de workloads. Os volumes de dados são para workloads OLTP, enquanto os volumes de log se destinam aos workloads de processamento analítico on-line (OLAP).

  • Diferentes requisitos de desempenho. Os volumes de dados e logs têm diferentes requisitos de IOPS e latência, taxas mínimas de throughput e benchmarks de desempenho semelhantes.

Para selecionar o tipo de volume do Amazon EBS certo, você deve analisar seus métodos de acesso ao banco de dados, IOPS e throughput. Colete métricas durante o horário de trabalho padrão e durante o pico de uso. O SQL Server usa extensões para armazenar dados. A unidade atômica de armazenamento no SQL Server é uma página com tamanho de 8 KB. Oito páginas fisicamente contíguas formam uma extensão de 64 KB. Portanto, em uma máquina SQL Server, o tamanho da unidade de alocação NTFS para hospedar arquivos de banco de dados SQL (incluindo tempdb) deve ser 64 KB. Para obter informações sobre como verificar o tamanho da alocação de NTFS de suas unidades, consulte o guia Práticas recomendadas para implantar o SQL Server no Amazon EC2.

A escolha do volume do EBS depende do workload, ou seja, se o banco de dados exige muita leitura ou gravação, exige alto IOPS, armazenamento de arquivos e considerações semelhantes. A tabela a seguir mostra uma amostra de configuração.

Recurso do Amazon EBS Type Descrição
Disco OS

gp3

Armazenamento de uso geral.

Disco DATA

io1/io2

Armazenamento intensivo de gravação.

Disco LOG

gp3 ou io2

Armazenamento de uso geral para workloads intensivos.

Disco de backup

st1

Armazenamento de arquivos mais barato. Para melhorar o desempenho, os backups também podem ser armazenados em um disco mais rápido se forem copiados regularmente para o Amazon Simple Storage Service (Amazon S3).

Considerações sobre o Amazon EBS e o Amazon S3

A tabela a seguir mostra uma comparação entre o Amazon EBS e o Amazon S3 para armazenamento. Use essas informações para entender as diferenças entre os dois serviços e escolher a melhor abordagem para seu caso de uso.

Serviço Disponibilidade Durabilidade Observações
Amazon EBS
  • Todos os tipos de volume EBS oferecem capacidades de snapshots duráveis e foram projetados para disponibilidade de 99,999%.

  • Você pode usar snapshots para provisionar novas instâncias em diferentes regiões da AWS em caso de desastre.

  • Os dados dos volumes do EBS são replicados em vários servidores em uma única zona de disponibilidade para evitar perdas de dados causadas por falha em qualquer componente único.

  • Os volumes do EBS são projetados para uma taxa de falha anual (AFR) entre 0,1 e 0,2%, em que a falha se refere a uma perda total ou parcial do volume, dependendo do tamanho e do desempenho do volume.

  • Uma instância otimizada para o Amazon EBS usa uma pilha de configuração otimizada e fornece largura de banda adicional dedicada para E/S do Amazon EBS. Essa otimização proporciona a melhor performance para seus volumes do EBS ao minimizar a contenção entre a E/S do Amazon EBS e outro tráfego de sua instância.

  • As restaurações rápidas de snapshots são suportadas para até 50 snapshots ao mesmo tempo. Você deve habilitar esse atributo explicitamente por snapshot.

  • Uma instância otimizada para Amazon EBS oferece desempenho provisionado completo na inicialização, portanto, nenhum tempo de aquecimento está envolvido.

Amazon S3
  • Altamente disponível.

  • Projetado para 99,99% de disponibilidade em um determinado ano.

  • Várias classes de armazenamento estão disponíveis, como S3 Standard e S3 Standard — Infrequent Access ((S3 Standard — IA)). Você pode mover arquivos de backup para uma classe de armazenamento com base em um período de retenção.

  • O Amazon S3, o Amazon S3 Glacier e o S3 Glacier Deep Archive foram projetados para oferecer 99,999999999% (11 noves) de durabilidade. As plataformas Amazon S3 e S3 Glacier oferecem backup de dados confiável, com replicação de objetos em pelo menos três zonas de disponibilidade geograficamente dispersas.

  • Você pode usar o Amazon S3 para backups de longo prazo em nível de arquivo do SQL Server (incluindo backups completos e logs de transações).

  • Suporte ao Amazon S3:

  • O Amazon S3 fornece o armazenamento mais barato. Aplica-se taxas de transferência de dados entre regiões.

SQL Server no Amazon FSx para Windows File Server

O Amazon FSx para Windows File Server fornece desempenho rápido com taxa de throughput básica de até 2 GB/segundo por sistema de arquivos, centenas de milhares de IOPS e latências consistentes de menos de um milissegundo. Para fornecer o desempenho certo para suas instâncias do SQL Server, você pode escolher um nível de taxa de throughput que seja independente do tamanho do seu sistema de arquivos. Níveis mais altos de capacidade de throughput também vêm com níveis mais altos de IOPS que o servidor de arquivos pode fornecer às instâncias do SQL Server que o acessam. A capacidade de armazenamento determina não apenas a quantidade de dados que você pode armazenar, mas também quantas operações de E/S por segunto (IOPS) você pode realizar no armazenamento - cada GB de armazenamento fornece 3 IOPS. Você pode provisionar cada sistema de arquivos para ter até 64 TiB de tamanho (em comparação com 16 TiB para o Amazon EBS). Você também pode usar os sistemas Amazon FSx como testemunha de compartilhamento de arquivos para implantações do Windows Server Failover Cluster (WSFC).