De $1.230 para $265/mês: como migramos de AWS para OCI sem downtime
Publicado em 17 de março de 2026

O ponto de partida
Em março de 2026, a infra de um portal de e-commerce de grande volume estava rodando integralmente na AWS, região us-east-1. A stack era funcional: ECS Fargate para os containers do frontend, EC2 ARM para o WordPress, RDS MariaDB para o banco, ALB como load balancer e WAF gerenciado pela AWS para proteção.
O problema não era técnico. Era financeiro. A conta AWS fechava em $1.230/mês — e boa parte desse valor estava concentrada em dois itens que, na OCI, custam uma fração ou são gratuitos.
$271/mês só em WAF + Logs. $490/mês em ECS Fargate. Dois itens, $761 — 62% da conta total.
Por que a OCI?
A Oracle Cloud tem uma proposta agressiva para cargas que combinam ARM + workloads container + sites WordPress de alto tráfego. O tier gratuito é generoso (10 TB de egress/mês, WAF básico incluso, Logging sem custo adicional) e as VMs ARM da família A1.Flex têm custo-benefício difícil de bater.
Outro fator decisivo: a região sa-saopaulo-1 (GRU) tinha latência comparável à us-east-1 para o tráfego brasileiro — sem a penalidade de latência que alguns temem ao sair da AWS.
O mapeamento de serviços
Cada componente AWS foi mapeado para um equivalente OCI:
ECS Fargate (2–4 tasks, 4vCPU/8GB) → OKE Node Pool com VM.Standard.A1.Flex ARM
EC2 c6g.2xlarge ARM (8vCPU/16GB) → VM.Standard.A1.Flex (8 OCPU/16GB ARM)
RDS MariaDB db.t3.large → MySQL Database Service (MDS)
Application Load Balancer (ALB) → Flexible Load Balancer
AWS WAF + CloudWatch Logs → OCI WAF (incluso no LB) + OCI Logging (10 GB/mês grátis)
ECR (registry) → OCIR (gru.ocir.io)
Data Transfer (egress) → 10 TB/mês gratuitos na OCI
A tabela de custos — antes e depois
Comparativo mês a mês após a migração:
ECS Fargate → OKE A1.Flex ARM: $490 → $60 (-88%)
EC2 ARM → VM OCI A1.Flex: $195 → $60 (-69%)
RDS MariaDB → MySQL MDS: $120 → $75 (-38%)
ALB → Flexible LB: $40 → $20 (-50%)
NAT Gateway: $50 → $35 (-30%)
WAF + Logs: $271 → $0 (tier gratuito OCI)
Egress/Data Transfer: $30 → $0 (10 TB free)
Registry + Storage + DNS + Cert: $34 → $15 (-56%)
Total: $1.230/mês → $265/mês. Economia: $965/mês, $11.580/ano.
Os dois maiores ganhos
1. WAF gratuito no tier básico
Na AWS, o WAF cobrava $100 de taxa base + $0,60 por milhão de requisições + os logs no CloudWatch. Com tráfego alto, isso facilmente passava de $270/mês. Na OCI, o WAF integrado ao Flexible Load Balancer não tem custo adicional no tier básico — e ainda suporta as regras OWASP mais comuns.
Importante: o WAF gratuito da OCI tem limitações. Para regras customizadas avançadas e rate limiting granular, a versão paga é necessária. Mas para a maioria dos workloads WordPress, o básico resolve.
2. ARM vale a pena — de verdade
O maior item da conta AWS era o ECS Fargate com instâncias x86. Na OCI, migramos para VMs ARM A1.Flex e o custo caiu de $490 para $60/mês. A aplicação (containers Next.js + WordPress) rodou sem nenhuma alteração de código — as imagens Docker foram recompiladas para linux/arm64 com multi-arch build no GitHub Actions.
Performance ficou equivalente. Em alguns endpoints, a latência melhorou levemente — o que atribuímos à combinação de menor overhead do LB OCI + cache Valkey local.
Como fizemos sem downtime
A migração seguiu uma estratégia de cutover gradual, não big bang. O processo durou aproximadamente duas semanas:
Semana 1: Provisionamento da VCN, OKE, MySQL MDS e VM WordPress na OCI. Dados sincronizados via replicação binlog do RDS → MDS. CI/CD apontando para OCIR em paralelo.
Semana 2: Testes de carga no ambiente OCI com tráfego espelhado. Validação de WAF, LB e SSL. Cutover de DNS com TTL reduzido para 60 segundos. Monitoramento intensivo por 48h.
O ambiente AWS ficou de pé por mais 7 dias como fallback, mas não foi necessário acionar. O cutover aconteceu em uma janela de baixo tráfego (madrugada de domingo) e não houve nenhum incidente registrado.
O que aprendemos
Alguns pontos que quem for fazer essa migração deve considerar:
Recompile as imagens para ARM. Rodar imagens x86 via emulação na OCI A1.Flex funciona, mas com degradação de performance. Vale o esforço do multi-arch build.
MySQL MDS é mais restrito que RDS. Algumas procedures e permissões que funcionam no RDS exigem ajuste no MDS. Teste sua aplicação com atenção antes do cutover.
O egress gratuito tem limites. 10 TB/mês é generoso, mas verifique seu consumo real. Acima disso, a OCI cobra por GB.
OCI IAM é diferente do AWS IAM. A curva de aprendizado existe. Reserve tempo para entender Compartments, Policies e Dynamic Groups antes de começar.
Vale a pena para o seu caso?
Essa migração faz sentido especialmente se você tem: workloads com custo de WAF + Logs alto na AWS, containers que podem rodar em ARM, e tráfego de egress relevante. Não é para todos — se você usa serviços AWS proprietários (DynamoDB, SQS, Lambda com integrações profundas), o custo de refatoração pode superar a economia.
Para stacks mais simples — containers + banco relacional + WordPress — a OCI entrega uma relação custo-benefício difícil de ignorar.
78% de redução. $11.580 economizados por ano. A infra continua funcionando — e agora está resistindo com muito mais margem de custo.
