Cloud hyperscaler

Migrar de
AWS para HeroCtl

Receita em real, custo em dólar, NAT cobrando US$40/mês por zona, egress invisível, RDS escalando sozinho.

Tempo: 6-8 semanas pra empresa com stack típica de 12 serviçosRedução típica de 3-7× — US$800/mês vira R$300/mês.
Empresa BR rodando 12 serviços AWS, fatura mensal entre US$500-2.000, time pequeno demais pra ter SRE dedicado mas grande demais pro fundador continuar gerenciando. Egress, NAT Gateway e RDS comem 60% da conta sem ninguém perceber.
TL;DR

AWS é a escolha óbvia até a fatura mensal aparecer em USD com câmbio que ninguém previu. NAT Gateway cobra US$40/mês por zona só por existir, ALB cobra por LCU, RDS cobra por hora ligada mais armazenamento mais IO mais backup mais snapshot, e egress de dados sai a US$0.09/GB sem aviso. Empresa BR com receita BRL e custo USD descobre que 30-40% da margem foi pra Amazon. Sair leva 6-8 semanas de trabalho honesto e devolve 3-7× em redução de custo. Você não vai recriar AWS no destino; vai mapear cada serviço pra equivalente: EC2 vira VPS comum, RDS vira Postgres administrado por você, S3 vira R2 ou MinIO, ALB vira o roteador embutido. Lambda, se for pouco código, vira função num app sempre-ligado; se for muito, vira app dedicado. SQS vira Redis ou NATS. Os 12 serviços viram 4 ou 5 componentes simples.

Por que sair

  • NAT Gateway: US$40/mês por zona só pra existir, mais US$0.045/GB processado
  • Egress de dados invisível na previsão e cresce com tráfego: US$0.09/GB
  • RDS cobra por hora ligada + storage + IO + backup + snapshots — quatro linhas pra um banco
  • Lock-in IAM: 200+ políticas escritas, time treinado em algo que não sai do lugar

O que você ganha

  • Custo em BRL, faturado por servidor, sem linha-item por GB ou por LCU
  • Egress incluído na banda do VPS — sem cobrança por byte que sai
  • Banco rodando no mesmo cluster, sem markup gerencial
  • Operação simples o suficiente pra um dev part-time tocar — sem precisar de SRE dedicado
Plano de migração

12 passos, sem mistério

  1. 01

    Inventário completo dos 12+ serviços

    3-5 dias

    Liste cada serviço (EC2, RDS, S3, ALB, NAT, CloudFront, SQS, Lambda, ElastiCache, Route53, Secrets Manager, ECR, etc), quantas instâncias, qual custo mensal de cada, qual aplicação depende.

  2. 02

    Mapeamento serviço-a-serviço

    2-3 dias

    EC2 → VPS comum. RDS → Postgres no cluster. S3 → Cloudflare R2 (zero egress) ou MinIO local. ALB → roteador embutido no orquestrador. SQS → Redis ou NATS. Lambda → função num app sempre-ligado. ElastiCache → Redis. Route53 → DNS do registrar. Secrets Manager → manifesto seguro no cluster. CloudFront → Cloudflare grátis.

  3. 03

    Provisionar cluster destino

    2 dias

    3-5 VPS de 8-16 GB pra reproduzir capacidade. Instalar orquestrador. Configurar domínio.

  4. 04

    Migração de banco de dados

    3-5 dias

    pg_dump do RDS, restore no Postgres do cluster. Replicação lógica em paralelo durante cutover. Validação de integridade por tabela.

  5. 05

    Migração de aplicações

    1-2 semanas

    Dockerizar cada app (algumas já estão). Rodar no destino com domínios shadow. Validar funcional, performance, conexões.

  6. 06

    Migração de filas e jobs

    3-5 dias

    SQS → Redis Streams ou NATS. Reescrever os 5-15 lugares que usavam SDK SQS pro novo cliente. Worker daemon roda como app no cluster.

  7. 07

    Migração de Lambdas

    1-2 semanas

    Funções pequenas viram endpoints num app HTTP sempre-ligado. Funções grandes viram apps próprios. Documentar cada trigger (cron, S3, API Gateway) e reproduzir no destino.

  8. 08

    Migração de objetos S3

    1 semana

    rclone copy de S3 pra R2 ou MinIO. Para buckets grandes, use replicação enquanto trabalha. Atualize URLs no código pra novo endpoint.

  9. 09

    DNS, certificados e cutover

    2 dias

    TTL pra 60s 24h antes. Validar certificados Let's Encrypt no destino. Trocar Route53 ou migrar zona pra registrar novo. Cutover em janela de baixo tráfego.

  10. 10

    Monitoramento equivalente

    3-5 dias

    CloudWatch métricas → métricas embutidas do orquestrador. Logs → escritor único embutido. Alertas → webhook pra Slack/PagerDuty.

  11. 11

    Operação paralela por 30-60 dias

    4-8 semanas em paralelo

    Mantenha tudo rodando nos dois lados após cutover. Compare custos reais. Se algo quebrar, reverte DNS em minutos.

  12. 12

    Decommission AWS

    1 semana ativa

    Desligar serviços um por um após 30+ dias estáveis. Snapshot final de tudo, guardado em storage frio. Cancelar conta só após 90 dias e backup verificado.

Quanto tempo no total

6-8 semanas pra empresa com stack típica de 12 serviços, time de 2-3 devs em paralelo com roadmap normal.

Quanto economiza

Redução típica de 3-7× — US$800/mês vira R$300/mês.

EC2: 4 instâncias t3.mediumUS$130/mês ≈ R$650
RDS db.t3.medium Multi-AZUS$140/mês ≈ R$700
NAT Gateway × 2 zonasUS$80/mês ≈ R$400
ALB + LCUUS$25/mês ≈ R$125
S3 + egress 500 GBUS$60/mês ≈ R$300
ElastiCache RedisUS$40/mês ≈ R$200
CloudFront + Route53 + outrosUS$50/mês ≈ R$250
Lambda + SQS + Secrets ManagerUS$30/mês ≈ R$150
Total AWS típicoUS$555/mês ≈ R$2.775
Cluster destino (4 VPS 8GB)R$480/mês
R2 storage equivalenteR$50/mês
Total destinoR$530/mês
Economia mensalR$2.245/mês
Economia anualR$26.940/ano

Antes vs Depois

Critério AWS HeroCtl
Serviços contratados12+4-5 componentes
Linhas na fatura40-604-6
MoedaUSDBRL
Custo mensal típicoUS$555R$530
NAT GatewayUS$40/mês × N zonasNão existe
Egress de dadosUS$0.09/GBIncluído na banda VPS
Time mínimo pra operar1-2 SREs ou consultor1 dev part-time
Lock-in IAM/políticasAltoNão existe
Riscos e como mitigar

Onde costuma doer

Banco grande (>100 GB) no RDS demora pra dump/restore

Mitigação Replicação lógica do Postgres durante semanas em paralelo. Cutover é só promover a réplica e trocar DNS.

Aplicação assume IAM role pra falar com S3

Mitigação Mapeie cada chamada SDK. Substitua por chave de acesso do destino (R2 ou MinIO) lida de variável de ambiente. Sem IAM, sem mistério.

Lambda com cold start virava 1s, na app sempre-ligada vira instantâneo — comportamento muda

Mitigação Geralmente é melhoria silenciosa. Se algum chamador depender de cold start (caso raro), instrumente e ajuste.

Time treinado em AWS resiste à mudança

Mitigação A operação fica mais simples, não mais complicada. Faça pareamento na primeira semana, documente as 5 operações comuns. Em duas semanas o time prefere o destino.

Comece pelo Community

Cluster com alta disponibilidade real, gratuito permanente, sem feature gates. A migração de AWS costuma se pagar em 1-2 ciclos de fatura.

Outras migrações: Heroku·Coolify·Vercel