GKE Standard vs Autopilot

Se você está começando com Kubernetes no Google Cloud, provavelmente se deparou com duas opções: GKE Standard e GKE Autopilot. Neste post, vamos entender o que é cada uma, suas diferenças fundamentais e quando usar uma ou outra. Ao final, você saberá exatamente qual escolher para sua arquitetura.

O que é GKE?

Google Kubernetes Engine (GKE) é o serviço gerenciado de Kubernetes oferecido pela Google Cloud. Ele abstrai a complexidade de manter um cluster Kubernetes, delegando tarefas críticas (como atualizações, scaling de nós e monitoramento da control plane) para o Google.

O GKE não é apenas um Kubernetes rodando em máquinas virtuais. É uma plataforma inteligente que oferece diferentes níveis de automação e controle, dependendo de como você quer operá-la.

GKE vs Kubernetes Self-Hosted

Antes de compararmos Standard e Autopilot, é importante entender por que usar GKE em vez de instalar Kubernetes na mão.

Instalação Self-Hosted

Quando você instala Kubernetes manualmente em VMs, você é responsável por:

  • Gerenciar a control plane: Manter etcd, kube-apiserver, kube-controller-manager e kube-scheduler rodando e saudáveis
  • Atualizar versões: Planejamento, testes e execução de upgrades do cluster
  • Escalabilidade de nós: Adicionar, remover e substituir máquinas manualmente ou via scripts customizados
  • Monitoramento e alertas: Implementar sua própria estratégia de observabilidade
  • Segurança e patches: Aplicar patches de kernel, atualizar componentes, gerenciar certificados
  • Networking: Configurar plugins CNI, gerenciar IPs e roteamento

É viável, mas exige expertise profunda e consome muitos recursos operacionais.

GKE: O Lado Gerenciado

Com GKE, o Google gerencia:

  • Control plane completamente — você nunca vê os nós mestres
  • Atualizações automáticas (ou com seu controle) do control plane
  • Segurança de base — patches de kernel, hardening do SO
  • Networking gerenciado — VPC, LoadBalancer, Ingress integrados

Você ainda gerencia os nós workers (máquinas onde seus pods rodam), mas até isso pode ser automatizado com Autopilot.

GKE Standard

GKE Standard é a modalidade clássica: você gerencia o cluster de nós workers, mas a Google gerencia a control plane.

Como Funciona

Você cria um cluster especificando:

  • Número de nós iniciais (ou deixa como 0 e escala depois)
  • Tipo de máquina para cada nó (e1-standard-4, n2-highmem-8, etc.)
  • Zona ou região onde os nós serão criados
  • Configurações de rede (subnets, IP ranges)

Depois, você tem total controle: pode criar node pools adicionais, ajustar autoscaling, aplicar taints/labels, executar scripts de inicialização, instalar drivers customizados.

Responsabilidades Suas

  • Monitoramento de nós: Você vê o uso de CPU, memória e disco de cada nó
  • Atualizações de nós: Google oferece patches de segurança; você aprova e faz o upgrade
  • Scaling manual ou automático: Configure Cluster Autoscaler para escalar automaticamente
  • Gerenciar node pools: Diferentes tipos de máquinas para diferentes cargas de trabalho

Exemplo: Criando um Cluster Standard

gcloud container clusters create my-cluster \
  --zone us-central1-a \
  --num-nodes 3 \
  --machine-type n2-standard-4 \
  --enable-autoscaling \
  --min-nodes 1 \
  --max-nodes 10

Pronto. Você tem um cluster com 3 nós que escala automaticamente entre 1 e 10.

Custos em GKE Standard

Você paga por:

  • Cada máquina virtual (nó): O preço da VM (e1-standard-4 custa ~$0.15/hora, por exemplo)
  • Controle plane: Há um taxa fixa (~$0.10/hora por cluster, dependendo da região)
  • Recursos adicionais: IPs públicos, discos persistentes, load balancers

GKE Autopilot

GKE Autopilot leva a automação ao próximo nível. Aqui, a Google gerencia não só a control plane, mas todo o cluster de nós.

Como Funciona

Você especifica apenas:

  • Região ou zona onde quer que o cluster rode
  • Tamanho aproximado da carga de trabalho
  • Configurações de rede (se quiser customizar)

O resto? A Google cuida. Quando você faz deploy de um pod, o Google provisiona automaticamente a máquina certa, com o tamanho certo, na zona certa, com base no que o pod precisa.

Responsabilidades Suas

Bem menos:

  • Deploy de aplicações: Você só precisa saber escrever bons yamls de Kubernetes
  • Monitoramento de aplicações: Via Prometheus, Grafana, Cloud Logging — não de nós
  • Scaling automático: Totalmente automático; os nós surgem e desaparecem conforme necessário
  • Segurança: Postura de segurança padrão já aplicada

Você não vê (e não precisa se preocupar com) máquinas individuais.

Exemplo: Criando um Cluster Autopilot

gcloud container clusters create my-autopilot-cluster \
  --region us-central1 \
  --enable-autoscaling \
  --enable-autorepair

Bem mais simples, não?

Custos em GKE Autopilot

Você paga por:

  • Recursos consumidos pelos pods: CPU e memória que seus containers de verdade usam (billing é granular)
  • Sem máquinas vazias: Se você tem um nó com 4 CPUs mas seus pods usam 1 CPU, você paga por 1 CPU
  • Premium de automação: Um overhead pequeno (~1-2%) sobre o preço de compute
  • Controle plane: Incluído (sem taxa separada)

É importante: você paga pelos pods rodando, não pelas máquinas. Um Pod com 0.5 CPU custará menos que uma máquina inteira de 4 CPUs.

Standard vs Autopilot: Comparação Direta

AspectoStandardAutopilot
Gerenciamento de nósVocêGoogle
Controle de configuraçãoTotalLimitado (seguidor de best practices)
ScalingManual + Cluster AutoscalerAutomático (granular)
Tipos de máquinaVocê escolheGoogle escolhe baseado em pods
CustoPaga VM inteira (mesmo vazia)Paga por recurso consumido
Curva de aprendizadoMaiorMenor
Customizações (drivers, init scripts)SimNão (limitado)
Ideal paraMáxima performance e controleSimplidade e otimização de custo
Versão do KubernetesVocê escolhe qual versão atualizarGoogle gerencia automaticamente
Node Pools com taints/labelsSim, completo controleSim, mas limitado

Quando Usar GKE Standard

Escolha Standard quando:

1. Você precisa de controle total

Se sua aplicação exige drivers específicos (GPU, TPU, NVIDIA), tuning de kernel ou configurações muito específicas, Standard é necessário. Autopilot não permite init scripts customizados ou instalação de pacotes nos nós.

2. Você tem expertise em Kubernetes

Se sua equipe já gerencia Kubernetes em produção, Standard oferece a flexibilidade que vocês provavelmente querem. Você pode otimizar node pools, usar taints/tolerations avançados, customizar cada detalhe.

3. Você quer minimizar custo com máquinas preemptíveis

Com Standard, você pode usar preemptible VMs (máquinas que custam 70% menos, mas podem ser interrompidas). Isso funciona bem para cargas de trabalho tolerantes a falhas. Autopilot não oferece essa opção de forma explícita.

4. Suas aplicações têm padrões de carga previsíveis

Se você sabe que precisa de exatamente 20 nós e-2-standard-4 durante o horário comercial, Standard com autoscaling manual ou scripts customizados pode ser mais barato.

5. Você quer versões específicas do Kubernetes

Autopilot sempre roda versões recomendadas pelo Google (com pequena margem de escolha). Standard permite escolher e testar versões antes de atualizar.

Quando Usar GKE Autopilot

Escolha Autopilot quando:

1. Você quer simplicidade operacional

Se sua equipe é pequena ou prefere focar em aplicações, não em infraestrutura, Autopilot elimina a carga de gerenciar nós. Você abre um cluster e já está rodando.

2. Você tem cargas de trabalho variáveis

Se seus pods variam muito em tamanho (alguns precisam 0.1 CPU, outros 8 CPUs), Autopilot brilha. Você não paga por máquinas ociosas — paga exatamente pelo que usa.

3. Segurança é prioridade

Autopilot aplica automaticamente as melhores práticas de segurança do Google. Você não pode (nem precisa) se preocupar com hardening de nós, porque tudo já vem configurado.

4. Você está começando com Kubernetes

Se é seu primeiro Kubernetes em produção, Autopilot reduz a curva de aprendizado. Você se foca em escrever bons manifests YAML, não em gerenciar infraestrutura.

5. Multi-tenancy

Autopilot isola workloads de diferentes tenants de forma mais robusta. O Google gerencia as máquinas com segurança pensada para esse cenário.

6. Você quer maior disponibilidade com menos overhead

Autopilot distribui nós entre zonas automaticamente, oferecendo alta disponibilidade sem você configurar node pools em múltiplas zonas.

Cenários Práticos

Cenário 1: Startup com time pequeno

Uma startup com 2 engenheiros rodando um serviço PHP escalável deveria usar Autopilot. O time não tem tempo para gerenciar nós. Autopilot cuida de tudo; eles só fazem deploy via kubectl e pronto.

Impacto: Menos burnout, mais foco em features.

Cenário 2: Empresa com Data Pipeline complexo

Uma empresa que roda ML pipelines, processamento de imagem e jobs batch intensivos em GPU deveria usar Standard. Precisa de GPUs, controladores customizados (CUDA), e quer otimizar custo com preemptible VMs. Autopilot não oferece essa flexibilidade.

Impacto: Melhor controle de custos (30-40% mais barato com preemptible).

Cenário 3: SaaS multi-tenant

Uma plataforma SaaS servindo vários clientes deveria considerar Autopilot com namespaces bem isolados. A segurança automática e a ausência de overhead operacional justificam o pequeno premium de custo.

Impacto: Menos riscos de segurança, menos incidentes operacionais.

Custos: Uma Comparação Real

Vamos comparar dois cenários:

Cenário A: Standard com 3 nós n2-standard-4

  • 3 nós × $0.19/hora (n2-standard-4) = $0.57/hora
  • Controle plane: $0.10/hora
  • Total: ~$0.67/hora ≈ $490/mês (24/7)

Se seus pods usam apenas 2 CPUs totais, você ainda paga pelas 12 CPUs das máquinas.

Cenário B: Autopilot com mesma carga

Seus pods precisam de 2 CPUs + 4GB RAM:

  • 2 CPUs: ~$0.03/hora
  • 4GB RAM: ~$0.0005/hora
  • Overhead Autopilot (~10%): +$0.003/hora
  • Total: ~$0.033/hora ≈ $24/mês (24/7)

A diferença é dramática se sua carga é pequena ou esporádica.

Conclusão

GKE Standard é para quem quer máxima flexibilidade e tem expertise para gerenciar infraestrutura. GKE Autopilot é para quem quer simplicidade e custo otimizado.

Não há “melhor”, depende do seu contexto. Uma regra prática:

  • Iniciantes, startups, times pequenos: Autopilot
  • Máquinas especializadas (GPU/TPU), cargas previsíveis, expertise em K8s: Standard

E lembre-se: você pode sempre começar com Autopilot e migrar para Standard depois, se suas necessidades evoluírem. A infraestrutura em nuvem é flexível — use isso a seu favor.


Gostou do conteúdo?

  • ✅ Inscreva-se na newsletter para receber mais dicas práticas sobre Cloud e Kubernetes diretamente no seu e-mail!
  • 🚀 Conheça a Imersão Golang e leve seus conhecimentos em Go para o próximo nível!

Faça parte da comunidade!

Receba os melhores conteúdos sobre Go, Kubernetes, arquitetura de software, Cloud e esteja sempre atualizado com as tendências e práticas do mercado.

* indicates required

Deixe uma resposta