Pular para o conteúdo principal

Capítulo 3.7 - Estratégias de Deployment

Objetivos de Aprendizagem​

Ao final deste capítulo, você será capaz de:

  • Compreender as diferentes estratégias de deployment
  • Implementar Rolling Updates
  • Utilizar Blue/Green deployments
  • Configurar Canary deployments

Tipos de Estratégias​

1. Rolling Update (Padrão)​

Atualização progressiva sem interrupção:

Configuração:

strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1 # Pods adicionais permitidos
maxUnavailable: 0 # Máximo de Pods indisponíveis

2. Recreate​

Remove tudo e recria:

Configuração:

strategy:
type: Recreate

Blue/Green Deployment​

Deployment de dois ambientes completos:

Vantagens:

  • Rollback instantâneo
  • Teste completo antes da troca
  • Sem mistura de versões

Implementação:

  • Dois Deployments separados
  • Service que aponta para um ou outro
  • Troca via alteração do selector

Canary Deployment​

Deployment progressivo para uma pequena porcentagem:

Processo:

  1. Deploy da nova versão para 10%
  2. Monitorar as métricas
  3. Aumentar progressivamente se estiver OK
  4. Rollback em caso de problema

Implementação:

  • Dois Deployments com labels diferentes
  • Service com seleção ponderada
  • Ou utilizar Istio para roteamento avançado

Configuração Avançada​

MaxSurge e MaxUnavailable​

strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 2 # Pode criar 2 Pods adicionais
maxUnavailable: 1 # 1 Pod pode ficar indisponível

Exemplo com 3 réplicas:

  • Durante o update: 4-5 Pods possíveis (3 + maxSurge)
  • Mínimo disponível: 2 Pods (3 - maxUnavailable)

Resumo​

Neste capítulo, você aprendeu:

Rolling Update: Atualização progressiva (padrão)
Recreate: Remoção e recriação
Blue/Green: Dois ambientes completos
Canary: Deployment progressivo para pequena porcentagem
Configuração: maxSurge e maxUnavailable para controlar o processo


Próximos Passos​

Agora que você conhece as estratégias:

Capítulo 3.8: Health Checks
Lab 3.3: Deployments e Rolling Updates


Capítulo criado em: Dezembro 2024