Kubernetes compra escalonamento declarativo, rescheduling automático, deploys rolling com health gates e definições portáveis de workload. Times com frota grande ou carga multi-tenant com picos tiram proveito. Fora disso, você opera uma plataforma distribuída para rodar três containers.

O custo além da conta de compute

Curva de aprendizado medida em meses. Sprawl de YAML. Esteira de upgrades anual em control planes gerenciados. Debugging migra de logs para estado de sistema distribuído. Salário premium para engenheiros fluentes. Nenhum desses custos aparece na calculadora de pricing da cloud.

Alternativas por estágio

  • PaaS (Render, Railway, Fly.io): carrega produtos pequenos longe, com deploy git-push
  • ECS Fargate: encaixa times AWS querendo containers sem cirurgia de cluster
  • Cloud Run: serve HTTP stateless com escala zero muito bem
  • Uma VM com Docker Compose: ainda sustenta negócios lucrativos inteiros

Gatilhos para migrar

Mais de uns dez serviços precisando de deploys coordenados. Autoscaling além de regras simples de CPU. Ambição multi-região active-active. Workloads batch e serving dividindo infraestrutura. Compliance exigindo isolamento por namespace. Um gatilho isolado não justifica. Dois ou três juntos começam a justificar.

Gerenciado, nunca self-hosted

EKS, GKE e AKS removem o babysitting do control plane enquanto node pools, rede e upgrades continuam seus. K8s self-hosted de verdade permanece busca de especialista que a maioria das empresas deveria recusar.

Domando a complexidade

Helm charts de bibliotecas mantidas em vez de YAML autoral. GitOps com ArgoCD ou Flux como única porta de entrada no cluster. Convenção namespace-por-time. Templates internos opinativos escondendo boilerplate de quem só quer subir um serviço.

Honestidade sobre sair

Times migrando de volta para plataformas simples relatam alívio e queda de custo. Workload não é residente permanente em lugar nenhum. Decisões de arquitetura merecem cláusulas de reversão igual contratos têm.