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á.
Configure a infraestrutura Multi-AZ para um SQL Server Always On FCI usando o Amazon FSx
Criado por Manish Garg (AWS), T.V.R.L.Phani Kumar Dadi (AWS), Nishad Mankar (AWS) e RAJNEESH TYAGI (AWS)
Repositório de código: aws-windows-failover-cluster -automation | Ambiente: PoC ou piloto | Origem: banco de dados do SQL Server on-premises |
Destino: Microsoft SQL Server on EC2 | Tipo R: redefinir a hospedagem | Workload: Microsoft |
Tecnologias: Migração; Infraestrutura; DevOps | Serviços da AWS: AWS Managed Microsoft AD; Amazon EC2; Amazon FSx; AWS Systems Manager |
Resumo
Se precisar migrar rapidamente um grande número de instâncias de cluster de failover (FCIs) do Microsoft SQL Server Always On, esse padrão pode ajudá-lo a minimizar o tempo de provisionamento. Ao usar a automação e o Amazon FSx para Windows File Server, ele reduz os esforços manuais, os erros cometidos por humanos e o tempo necessário para implantar um grande número de clusters.
Esse padrão configura a infraestrutura para FCIs do SQL Server em uma implantação (Multi-AZ) de Zona de Multidisponibilidade na Amazon Web Services (AWS). O provisionamento dos serviços da AWS necessários para essa infraestrutura é automatizado usando modelos da AWS CloudFormation. A instalação do SQL Server e a criação de nós de cluster em uma instância do Amazon Elastic Compute Cloud (Amazon EC2) são realizadas usando comandos. PowerShell
Esta solução usa um sistema de arquivos Multi-AZ do Amazon FSx para Windows altamente disponível como testemunha compartilhada para armazenar os arquivos de banco de dados do SQL Server. O sistema de arquivos do Amazon FSx e as instâncias do EC2 Windows que hospedam o SQL Server são unidas ao mesmo domínio do AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD).
Pré-requisitos e limitações
Pré-requisitos
Uma conta AWS ativa
Um usuário da AWS com permissões suficientes para provisionar recursos usando CloudFormation modelos da AWS
AWS Directory Service para Microsoft Active Directory
Credenciais no AWS Secrets Manager para autenticação no AWS Managed Microsoft AD em um par de valores-chave:
ADDomainName
: <Nome do domínio>ADDomainJoinUserName
: <Nome de usuário do domínio>ADDomainJoinPassword
: <Senha do usuário do domínio>TargetOU
: <Valor OU Alvo>
Observação: você usará o mesmo nome de chave na AWS Systems Manager Automation para a atividade de junção do AWS Managed Microsoft AD.
Arquivos de mídia do SQL Server para instalação do SQL Server e contas de serviço ou domínio do Windows criadas, que serão usados durante a criação do cluster
Uma nuvem privada virtual (VPC), com duas sub-redes públicas em zonas de disponibilidade separadas, duas sub-redes privadas nas zonas de disponibilidade, um gateway da internet, gateways NAT, associações de tabelas de rotas e um servidor de salto
Versões do produto
Windows Server 2012 R2 e Microsoft SQL Server 2016
Arquitetura
Pilha de tecnologia de origem
SQL Server com FCIs on-premises usando um drive compartilhado
Pilha de tecnologias de destino
Instâncias AWS EC2
Amazon FSx para Windows File Server
Runbook do AWS Systems Manager Automation
Configurações de rede (VPC, sub-redes, gateway da internet, gateways NAT, servidor de salto, grupos de segurança)
AWS Secrets Manager
AWS Managed Microsoft AD
Amazon EventBridge
AWS Identity and Access Management (IAM)
Arquitetura de destino
O diagrama a seguir mostra uma conta da AWS em uma única região da AWS, com uma VPC que inclui duas zonas de disponibilidade, duas sub-redes públicas com gateways NAT, um servidor de salto na primeira sub-rede pública, duas sub-redes privadas, cada uma com uma instância do EC2 para um nó do SQL Server em um grupo de segurança de nós e um sistema de arquivos do Amazon FSx conectado a cada um dos nós do SQL Server. O AWS Directory Service, o Amazon EventBridge, o AWS Secrets Manager e o AWS Systems Manager também estão incluídos.
![Arquitetura Multi-AZ com recursos em sub-redes públicas e privadas, com grupos de segurança de nós.](images/pattern-img/f09c0164-be2d-4665-a574-7ec29fd25082/images/543829a9-e130-4542-9c4e-7518c6cbe967.png)
Automação e escala
Você pode usar o AWS Systems Manager para se juntar ao AWS Managed Microsoft AD e realizar a instalação do SQL Server.
Ferramentas
Serviços da AWS
CloudFormationA AWS ajuda você a configurar recursos da AWS, provisioná-los de forma rápida e consistente e gerenciá-los durante todo o ciclo de vida em todas as contas e regiões da AWS.
O AWS Directory Service fornece várias maneiras de usar o Microsoft Active Directory (AD) com outros serviços da AWS, como o Amazon Elastic Compute Cloud (Amazon EC2), o Amazon Relational Database Service (Amazon RDS) para SQL Server e o Amazon FSx para Windows File Server.
O Amazon Elastic Compute Cloud (Amazon EC2) oferece capacidade computacional escalável na Nuvem AWS. Você poderá iniciar quantos servidores virtuais precisar e escalá-los na vertical rapidamente.
EventBridgeA Amazon é um serviço de ônibus de eventos sem servidor que ajuda você a conectar seus aplicativos com dados em tempo real de várias fontes. Por exemplo, funções do Lambda, endpoints de invocação HTTP usando destinos de API ou barramentos de eventos em outras contas da AWS.
O AWS Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus recursos da AWS, controlando quem está autenticado e autorizado a usá-los.
O AWS Secrets Manager ajuda você a substituir credenciais codificadas em seu código, incluindo senhas, por uma chamada de API ao Secrets Manager para recuperar o segredo programaticamente.
O AWS Systems Manager ajuda você a gerenciar seus aplicativos e infraestrutura em execução na nuvem AWS. Isso simplifica o gerenciamento de aplicações e recursos, diminui o tempo para detectar e resolver problemas operacionais e ajuda você a gerenciar seus recursos da AWS de modo seguro e em grande escala.
Outras ferramentas
PowerShell
é um programa de gerenciamento de automação e configuração da Microsoft executado em Windows, Linux e macOS. Esse padrão usa PowerShell scripts.
Repositório de código
O código desse padrão está disponível no repositório GitHub aws-windows-failover-cluster-automation
Práticas recomendadas
Os perfis do IAM usados para implantar essa solução devem seguir o princípio do privilégio mínimo. Para ter mais informações, consulte a documentação do IAM.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Implante a CloudFormation pilha do Systems Manager. |
| AWS DevOps, DevOps engenheiro |
Implante a pilha de infraestrutura. | Após a implantação bem-sucedida da pilha do Systems Manager, crie a pilha
| AWS DevOps, DevOps engenheiro |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Instale as ferramentas do Windows. |
| AWS DevOps, DevOps engenheiro, DBA |
Pré-configure os objetos do computador do cluster nos serviços de domínio do Active Directory. | Para pré-configurar o objeto de nome de cluster (CNO) nos serviços de domínio do Active Directory (AD DS) e pré-configurar um objeto de computador virtual (VCO) para um perfil em cluster, siga as instruções na documentação do Windows Server | AWS DevOps, DBA, engenheiro DevOps |
Crie o WSFC. | Para criar o cluster do Windows Server Failover Clustering (WSFC), faça o seguinte:
| AWS DevOps, DBA, engenheiro DevOps |
Instale o cluster de failover do SQL Server. | Depois que o cluster do WSFC estiver configurado, instale o cluster do SQL Server na instância primária (node1).
| AWS DevOps, DBA, engenheiro DevOps |
Adicione um nó secundário ao cluster. | Para adicionar o SQL Server ao nó secundário (nó 2), execute o PowerShell comando a seguir.
| AWS DevOps, DBA, engenheiro DevOps |
Teste a FCI do SQL Server. |
| DBA, engenheiro DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Limpar os recursos | Para limpar os recursos, use o processo de exclusão de CloudFormation pilhas da AWS:
Após a conclusão da exclusão da pilha, as pilhas estarão no estado Se houver falha na exclusão, uma pilha estará no estado | AWS DevOps, DBA, engenheiro DevOps |
Solução de problemas
Problema | Solução |
---|---|
Falha no CloudFormation modelo da AWS | Se o CloudFormation modelo falhar durante a implantação, faça o seguinte:
|
Falha na junção do AWS Managed Microsoft AD | Para solucionar os problemas de junção, siga estas etapas:
|