Olá, pessoal. Tudo bem?
Neste primeiro post, na minha nova casa, gostaria de apresentar à vocês o AWS Well-Architected Framework.
O Well-Architected Framework é um guia composto por uma série de boas práticas definidas por especialistas da AWS, com base na experiência obtida por eles ao auxiliar clientes na construção de arquiteturas seguras, confiáveis e performáticas.
Como ele foi desenhado para ambientes de nuvem, ele aponta alguns princípios de design gerais, que são difíceis ou impossíveis de atingirmos em ambientes tradicionais:
- Parar de tentar adivinhar a capacidade: Diferentemente de data centers locais, ambientes de nuvem proporcionam ferramentas como o auto-scaling, que permitem que os recursos se ajustem automaticamente à demanda;
- Teste sistemas em escala de produção: Como em ambientes de nuvem pagamos apenas enquanto estamos utilizando recursos, podemos criar ambientes idênticos ao de produção, efetuar testes e destruir todos os recursos destes ambientes, otimizando custos;
- Permitir arquitetura evolucionária: A natureza dinâmica de ambientes de nuvem permite que evoluamos a arquitetura rapidamente com o passar do tempo, ajustando tecnologias melhores e mais novas às necessidades do negócio;
- Direcionar a arquitetura usando dados: Coletar dados do workload possibilita que possamos avaliar as decisões arquiteturais tomadas e evoluir com o passar do tempo;
- Melhorar em “Dias de jogo (Game days)”: Ambientes de nuvem permitem que simulemos falhas no ambiente de produção para ajudar a detectar e corrigir problemas, identificar melhorias e treinar o time de operações em situações de emergência.
Pilares

O Well-Architected Framework é separado em 5 pilares principais, cada um definindo um aspecto a ser otimizado da arquitetura:
- Operational Excelence: Define as melhores práticas para preparar, executar e monitorar workloads, bem como gerir a evolução do mesmo;
- Security: Define as melhores práticas relacionadas a segurança do seu workload, como gerenciamento de identidade, controle de acessos e criptografia de dados;
- Reliability: Define as melhores práticas para tornar o seu workload resiliente e confiável, como a aplicação de auto escala para garantir disponibilidade do sistema e atender às alterações de demanda.
- Performance Efficiency: Define as melhores práticas para garantir a utilização de recursos de forma eficiente, como a seleção apropriada dos mesmos e monitoramento de performance;
- Cost Optimization: Define as melhores práticas relacionadas à otimização de custos, como a utilização de instâncias reservadas e a eliminação de recursos subutilizados.
Review
O review nada mais é do que uma forma de avaliarmos o quão próximo está o nosso workload, em relação as melhores práticas da AWS. Ele é composto por uma série de perguntas relativas a cada um dos pilares, que tem por objetivo efetuar esta avaliação. Para termos uma ideia, seguem algumas perguntas que aparecem no review:
- Como você configura sua solução de rede?
- Como você faz o backup seus dados?
- Como você testa a resiliência do seu workload?
O processo pode ser feito juntamente com um arquiteto de soluções da AWS, ou colocando a mão na massa, utilizando algumas documentações e/ou ferramentas. Vale salientar que ele não é uma auditoria, bem pelo contrário, é um trabalho conjunto, com o intuito de atingir essa aproximação às melhores práticas. É importante citar que quanto antes a review for aplicada, melhor.
Um ponto interessante é que o processo interno da AWS é feito de maneira similar.
Tool
A própria AWS disponibilizou o AWS Well-Architected Tool que possibilita fazer o review citado acima, diretamente no console.

Primeiramente, basta definirmos o workload e responder as perguntas relacionadas a cada pilar. Não é necessário responder todos de uma vez, e podemos dar prioridade aos pilares que mais impactam no nosso negócio.

Em seguida é possível gerar relatórios, verificar o plano de melhorias sugerido e definir milestones permitindo o acompanhamento da aplicação destas melhorias de forma incremental.

Conclusões
O Well-Architected Framework é uma excelente ferramenta que podemos utilizar para tornar a nossa arquitetura mais robusta. Apesar de ter sido pensado para a AWS, a grande maioria dos conceitos existentes nele podem ser aplicados a outros provedores de nuvem, como o Microsoft Azure ou o Google Cloud Platform.
Nos próximos posts, irei falar com mais detalhes sobre os 5 pilares que o compõem, para termos uma visão mais abrangente das boas práticas sugeridas.
Para quem quiser saber mais sobre o este excelente framework, basta acessar a documentação clicando aqui.
Um grande abraço a todos, e boa semana.
11 comentários sobre “AWS Well-Architected Framework”