Exemplos de implementações de metas de disponibilidade
Nesta seção, vamos analisar designs da carga de trabalho usando a implantação de um aplicativo web típico que consiste em um proxy reverso, conteúdo estático no Amazon S3, um servidor de aplicativo e um banco de dados SQL para o armazenamento persistente de dados. Para cada objetivo de disponibilidade, mostramos um exemplo de implementação. Essa carga de trabalho poderia usar contêineres ou o AWS Lambda para computação e NoSQL (como o Amazon DynamoDB) para o banco de dados, mas as abordagens são semelhantes. Em cada cenário, demonstramos como atender às metas de disponibilidade por meio do design da carga de trabalho para estes tópicos:
Tópico | Para obter mais informações, consulte esta seção |
---|---|
Monitorar recursos | Monitorar os recursos da workload |
Adaptar-se às mudanças de demanda | Projetar a workload de modo que ela se adapte às alterações na demanda |
Implementar alterações | Implementar alterações |
Fazer o backup de dados | Fazer o backup de dados |
Arquitetar para resiliência |
Use o isolamento de falhas para proteger a carga de trabalho |
Testar a resiliência | Testar a confiabilidade |
Planejar para a recuperação de desastres (DR) | Planejar para a recuperação de desastres (DR) |
Seleção de dependência
Escolhemos usar o Amazon EC2 para nossos aplicativos. Vamos mostrar como usar o Amazon RDS e várias zonas de disponibilidade melhora a disponibilidade de nossos aplicativos. Usaremos o Amazon Route 53 para DNS. Quando usarmos várias Zonas de disponibilidade, usaremos o Elastic Load Balancing. O Amazon S3 é usado para backups e conteúdo estático. Uma vez que projetamos para maior confiabilidade, devemos usar serviços que tenham uma disponibilidade maior. Perceber Apêndice A: Projetado para disponibilidade de serviços selecionados da AWS para as metas de design dos respectivos serviços da AWS.