Esse conteúdo está desatualizado. Esta versão da Well-Architected Framework agora pode ser encontrada em: https://docs.aws.amazon.com/pt_br/wellarchitected/2022-03-31/framework/operational-excellence.html

OPS 6: Como você reduz os riscos de implantação?

Adote abordagens que forneçam feedback rápido sobre a qualidade e permitam recuperação rápida de alterações que não têm os resultados desejados. O uso dessas práticas reduz o impacto dos problemas introduzidos pela implantação de mudanças.

Recursos

Deep Dive on Advanced Continuous Delivery Techniques Using AWS
AWS Developer Tools
AWS CodeDeploy User Guide
Try a Sample Blue/Green Deployment in AWS CodeDeploy

Melhores práticas:

Plano de melhoria

Planeje-se para eventuais alterações sem êxito

  • Planeje-se para eventuais alterações sem êxito: Planeje reverter para um bom estado anterior (ou seja, reverter a alteração) ou realizar reparos no ambiente de produção (ou seja, converter a alteração) se uma alteração não tiver o resultado desejado. Ao identificar alterações que não podem ser revertidas se mal-sucedidas, aplique a auditoria devida antes de confirmar a alteração.
  • Testar e validar alterações

  • Testar e validar alterações: Teste as alterações e valide os resultados em todas as etapas do ciclo de vida (como produção, teste e desenvolvimento) a fim de confirmar novos recursos e minimizar o risco e o impacto de implementações com falha.
    AWS Cloud9
    What is AWS Cloud9?
    How to test and debug AWS CodeDeploy locally before you ship your code
  • Use sistemas de gerenciamento para implantação

  • Use sistemas de gerenciamento para implantação: Use sistemas de gerenciamento para implantação a fim de rastrear e implementar mudanças. Isso reduzirá os erros causados pelos processos manuais e o nível de esforço para implantar as alterações. Automatize o pipeline de integração e implantação desde o check-in do código até o teste, a implantação e a validação. Isso reduz o tempo de execução, permite maior frequência de mudança e reduz ainda mais o nível de esforço.
    Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
    What is AWS CodeDeploy?
    What is AWS Elastic Beanstalk?
    What is Amazon API Gateway?
  • Teste usando implantações limitadas

  • Teste usando implantações limitadas: Teste implantações limitadas junto com os sistemas existentes para confirmar os resultados desejados antes da implantação em grande escala. Use testes para implantação canário ou implantações individuais, por exemplo.
    Working with deployment configurations in AWS CodeDeploy
    Blue/Green deployments with AWS Elastic Beanstalk
    Set up an API Gateway canary release deployment
  • Implante usando ambientes paralelos

  • Implante usando ambientes paralelos: Implemente alterações em ambientes paralelos e faça a transição ou migração para o novo ambiente. Mantenha o ambiente anterior até que haja confirmação de uma implantação bem-sucedida. Isso minimiza o tempo de recuperação, permitindo assim a reversão para o ambiente anterior. Use infraestruturas imutáveis com implantações azul/verde, por exemplo.
    Working with deployment configurations in AWS CodeDeploy
    Blue/Green deployments with AWS Elastic Beanstalk
    Set up an API Gateway canary release deployment
  • Implante mudanças frequentes, pequenas e reversíveis

  • Implante mudanças frequentes, pequenas e reversíveis: Use alterações frequentes, pequenas e reversíveis para reduzir o escopo de uma alteração. Isso resulta em solução de problemas mais fácil e correção mais rápida, com a opção de reverter uma alteração.
  • Automatize totalmente a integração e a implantação

  • Usar sistemas de gerenciamento de compilação e implantação: Use sistemas de gerenciamento de compilação e implantação para rastrear e implementar alterações, reduzir erros causados por processos manuais e reduzir o nível de esforço. Automatize totalmente o pipeline de integração e implantação desde o check-in do código até a compilação, teste, implantação e validação. Isso reduz o tempo de execução, permite maior frequência de mudança e reduz o nível de esforço.
    What is AWS CodeBuild?
    Continuous integration best practices for software development
    Slalom: CI/CD for serverless applications on AWS
    Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
    What is AWS CodeDeploy?
  • Automatize testes e reversões

  • Automatize testes e reversões: Automatize os testes dos ambientes implantados para confirmar os resultados desejados. Automatize a reversão para o bom estado anterior conhecido quando os resultados não forem alcançados para minimizar o tempo de recuperação e reduzir os erros causados por processos manuais. Por exemplo, faça transações sintéticas e detalhadas do usuário após a implantação, verifique os resultados e reverta a falha.
    Redeploy and roll back a deployment with AWS CodeDeploy