Implantações azul/verde
Configure estratégias de implantação azul/verde com GitHub Actions para minimizar o tempo de indisponibilidade e facilitar reversões rápidas.
Implantações azul/verde é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que é implantação azul/verde?
Bem-vindo! Nesta lição, vamos explorar as implantações azul/verde, uma estratégia poderosa para lançar novos softwares.
Ela foi projetada para minimizar o tempo de indisponibilidade e os riscos durante as implantações, garantindo que seus usuários tenham sempre uma experiência tranquila.
Entendendo o azul e o verde
Imagine que você tenha dois ambientes de produção idênticos: um chamado "Azul" e outro chamado "Verde".
- Azul: é o ambiente ativo atual, que atende a todo o tráfego dos usuários.
- Verde: é um ambiente inativo e idêntico, usado para implantar e testar novas versões.
Como funciona o azul/verde
O processo é simples, mas eficaz:
- Implante a nova versão do aplicativo no ambiente Verde (inativo).
- Teste cuidadosamente a nova versão no Verde.
- Quando estiver confiante, transfira todo o tráfego dos usuários do Azul para o Verde.
- O antigo ambiente Azul agora está inativo e pode ser mantido para reversões rápidas ou atualizações.
Por que usar o azul/verde?
Essa estratégia oferece vantagens significativas:
- Tempo de inatividade zero: os usuários passam para a nova versão de forma contínua, sem qualquer interrupção.
- Reversão instantânea: se surgirem problemas, basta transferir o tráfego de volta para o ambiente Azul estável.
- Risco reduzido: teste novas versões em um ambiente semelhante ao de produção antes de colocá-las no ar.
O que você precisará
Para implementar o azul/verde, normalmente você precisará de:
- Balanceador de carga: para direcionar o tráfego para o ambiente Azul ou Verde.
- Dois ambientes idênticos: geralmente baseados na nuvem, garantindo consistência.
- Ferramenta de automação: como o GitHub Actions, para gerenciar as implantações e a troca de tráfego.
Orquestrando com o GitHub Actions
O GitHub Actions pode automatizar cada etapa da sua implantação azul/verde.
Você pode definir fluxos de trabalho para:
- Compilar e implantar no ambiente inativo.
- Executar testes automatizados na nova implantação.
- Acionar a troca de tráfego por meio da API do balanceador de carga ou de um script.
Implantando a nova versão
Este é um trecho simplificado do GitHub Actions para implantar a nova versão do aplicativo no ambiente "Verde". Observe o uso de um nome de environment.
name: Deploy to Green
on:
push:
branches:
- main
jobs:
deploy-green:
runs-on: ubuntu-latest
environment: Green # Target the Green environment
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Deploy app to Green
run: |
echo "Deploying application version ${{ github.sha }} to Green environment..."
# Your actual deployment commands go here
# e.g., deploy to a specific AWS EC2 instance or Kubernetes namespaceTrocando o tráfego
Após uma implantação e testes bem-sucedidos, a etapa final é trocar o tráfego. Isso geralmente envolve atualizar um balanceador de carga ou um registro DNS.
Veja uma etapa conceitual do GitHub Actions que acionaria essa troca:
name: Switch Traffic to Green
on:
workflow_dispatch: # Manual trigger for traffic switch
jobs:
switch-traffic:
runs-on: ubuntu-latest
steps:
- name: Update Load Balancer to Green
run: |
echo "Switching load balancer traffic to Green environment..."
# Call your load balancer's API or a script here
# e.g., aws elbv2 modify-target-group-attributes ...
# or kubectl apply -f green-ingress.yamlReversões instantâneas
E se você transferir o tráfego para o Verde e surgir um erro crítico?
Com o azul/verde, a reversão é instantânea! Basta transferir o tráfego do balanceador de carga de volta para o ambiente Azul original e estável.
Isso reduz significativamente o impacto do incidente e o tempo de recuperação.
Considerações importantes
Embora seja poderoso, o azul/verde exige algumas considerações:
- Duplicação de recursos: você executa dois ambientes completos, o que pode dobrar os custos de infraestrutura.
- Migrações de banco de dados: lidar com alterações no banco de dados pode ser complexo, pois tanto o Azul quanto o Verde podem precisar acessar o mesmo armazenamento de dados.
- Aplicativos com estado: aplicativos com estado persistente exigem planejamento cuidadoso.
Questionário sobre implantação azul/verde
Vamos verificar sua compreensão das implantações azul/verde.
Resumo da lição
Parabéns! Você aprendeu sobre implantações azul/verde.
- Elas usam dois ambientes idênticos (Azul e Verde) para implantar novas versões.
- Oferecem tempo de inatividade zero e reversões instantâneas.
- O GitHub Actions pode automatizar a implantação e a troca de tráfego.
- Lembre-se de planejar os custos dos recursos e as alterações no banco de dados!
Perguntas Frequentes
A aula “Implantações azul/verde” é grátis?
Sim — o texto completo de “Implantações azul/verde” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Implantações azul/verde”?
Configure estratégias de implantação azul/verde com GitHub Actions para minimizar o tempo de indisponibilidade e facilitar reversões rápidas. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Implantações azul/verde”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Implantações azul/verde
- Lançamentos canário com Actions
- Reversões e recuperação de desastres
- Sinalizadores de recursos e lançamentos progressivos