Voltar ao portfólio
EN PT ES
Estudo de caso · Migração de plataforma

Migração sem downtime para novos clusters Kubernetes

Mover uma plataforma inteira para novos clusters é o tipo de mudança que dá errado às 2 da manhã. Veja como fiz isso sem downtime: uma virada blue-green no nível do cluster, uma troca de DNS interno e scale-to-zero como rollback de um comando só.

Por Vitor Schiavo Atualizado em outubro de 2026 ~6 min de leitura
A solução em resumoMova workloads com um caminho de volta.
Cluster de origemInventariar apps e dados
Cluster de destinoRestaurar e validar
Virada de tráfegoTrocar o DNS com rollback

Prepare a migração de aplicações e dados antes da virada de DNS e, então, valide o destino.

Contribuição em resumo

Minha responsabilidade
Movimentação faseada de workloads/dados, validação do destino e virada de DNS com rollback.
Escopo
Migração no nível do cluster, mantendo os workloads legados durante a transição.
Colaboração & limites
Coordenei a mudança de infraestrutura em torno das dependências de workloads e dados; cada serviço exige sua própria aceitação da virada.
Resultado
Uma estratégia de migração faseada e repetível, com um caminho de rollback. Nenhuma garantia universal de tempo de recuperação ou disponibilidade é inferida.

Reconstruir clusters é só metade do trabalho. Depois que os novos clusters existem, cada workload ainda precisa ser movido para eles, e "mover a produção para um cluster diferente" é exatamente a frase que faz as pessoas agendarem uma janela de manutenção à meia-noite. Eu não queria janela nem downtime, então tratei tudo como um deployment blue-green, só que no nível do cluster, em vez de um único serviço.

A estratégia: blue-green no nível do cluster

Os novos clusters rodaram em paralelo com os legados. Nada foi apagado até que o novo lado estivesse comprovado. A sequência:

O que de fato precisou ser movido

Uma plataforma é mais do que seus pods sem estado. A migração cobriu toda a superfície:

0downtime
DNSvirada na camada
scale-to-0rollback a quente
stack completaapps · funções · dados

Escale a zero, não apague

A jogada mais valiosa em uma migração de cluster é manter os workloads antigos com zero réplicas em vez de apagá-los. Custa quase nada deixar um deployment ocioso estacionado, e isso transforma o rollback de uma reconstrução em um comando de escala de uma linha mais uma troca de DNS. Apague somente depois que o novo lado tiver conquistado sua confiança.

As partes que as pessoas esquecem

A migração não termina quando o tráfego flui. Duas limpezas foram importantes:

O que eu diria a quem está começando isso

Decisões e próximos passos

Uma visão retrospectiva da abordagem e seus limites. A próxima melhoria é uma proposta, não um resultado entregue.

Alternativa e justificativa

Uma migração in-place reduz a capacidade paralela; clusters paralelos permitem a validação do destino antes de desviar o tráfego.

Trade-off

A operação em paralelo adiciona custo temporário, além de riscos de comportamento de DNS/cache e de sincronização de estado.

O que eu melhoraria em seguida

Próxima melhoria: registrar a aceitação por serviço, o tempo de rollback e as condições para remover a capacidade legada com segurança.