Orquestração de Contêineres
medium

Orquestração de Contêineres Question #019e3a4f

Question Statement
Orquestração de Contêineres
#kubernetes
#deployment
#rolling-update
Medium

Qual é a estratégia de deployment padrão no Kubernetes?

A

Rolling update

Correct
B

Blue/Green deployment

C

Canary deployment

D

Recreate deployment

Official Explanation / Community Explanations

A estratégia de deployment padrão no Kubernetes é a Rolling Update. Essa estratégia garante que os pods sejam gradualmente substituídos por novos, minimizando o tempo de inatividade e mantendo a disponibilidade da aplicação durante as atualizações.

Como Funciona

Quando um Deployment é atualizado (por exemplo, uma nova versão da imagem do contêiner), o Kubernetes cria um novo ReplicaSet e o escala gradualmente enquanto reduz o ReplicaSet antigo. Os parâmetros maxSurge e maxUnavailable controlam o ritmo da atualização. Por padrão, maxSurge é 25% (permite até 25% de pods extras acima da contagem desejada) e maxUnavailable é 25% (permite que até 25% dos pods fiquem indisponíveis durante a atualização). Esse comportamento de rolling é definido no campo spec.strategy.type do Deployment, que por padrão é RollingUpdate.

Por que o Valor Correto está Certo

A estratégia Rolling Update é o padrão porque oferece um equilíbrio entre velocidade e segurança. Ela atualiza os pods incrementalmente, garantindo que um certo número de pods permaneça disponível para atender ao tráfego. Isso é adequado para a maioria das aplicações que exigem deployments com zero downtime.

Por que os Valores Incorretos estão Errados

  • Blue/Green deployment: Essa estratégia envolve executar dois ambientes idênticos (blue e green) e alternar o tráfego de uma só vez. Não é o padrão; requer configuração manual ou ferramentas adicionais (por exemplo, usando Services com seletores de label).
  • Canary deployment: Essa estratégia libera uma nova versão para um pequeno subconjunto de usuários antes de distribuir para todos. Não é incorporada como estratégia padrão; requer configurações personalizadas ou recursos de service mesh.
  • Recreate deployment: Essa estratégia encerra todos os pods antigos antes de criar novos. Não é o padrão porque causa tempo de inatividade. Pode ser definida explicitamente alterando spec.strategy.type para Recreate.

Em resumo, o Kubernetes usa por padrão o Rolling Update para fornecer um processo de atualização seguro e gradual com o mínimo de interrupção.