Blog
Notas do chão da nuvem
Escrita prática sobre como gerenciar AWS, GCP e Azure em escala.
30 de maio de 2026 · 1 min de leitura
Migração de MySQL para Postgres — quando vale a pena, as pegadinhas e o workflow do pgloader
Já migramos bancos de dados nos dois sentidos. Este é o framework de decisão honesto, as armadilhas de tipos de dados que mordem todo time, e o runbook de migração que refinamos por engagements de cliente.
Ler artigo28 de maio de 2026 · 1 min de leitura
RHEL 9 para RHEL 10 com Leapp — os checks pre-flight e as pegadinhas que pegamos
Upgrades de versão major in-place são agora genuinamente viáveis no RHEL. Não são, no entanto, fire-and-forget. Este é o workflow do Leapp que rodamos, os problemas que trazemos à tona, e quando ainda preferimos fresh installs.
Ler artigo28 de maio de 2026 · 1 min de leitura
OpenTelemetry para Node.js — o wiring que de fato funciona em produção
OpenTelemetry venceu a discussão de distributed tracing. Veja como instrumentamos serviços Node, como exportamos para OTLP, e os erros que já cometemos para você não ter que repetir.
Ler artigo27 de maio de 2026 · 1 min de leitura
Operações WP-CLI em escala — operar 200 sites WordPress de um único terminal
Os padrões WP-CLI que usamos para operar centenas de sites WordPress sem perder a cabeça — o loop multi-site, a disciplina de dry-run e o script de auditoria.
Ler artigo27 de maio de 2026 · 1 min de leitura
Padrões de replicação Postgres em 2026 — Patroni, serviços gerenciados e a história do failover
Quando montar seu próprio cluster Patroni, quando usar Postgres gerenciado, e as semânticas de failover que ninguém explica até a produção quebrar.
Ler artigo27 de maio de 2026 · 1 min de leitura
As migrations do Laravel que quebram produção — e os padrões seguros que usamos no lugar
Renomear coluna, dropar coluna, mudar tipo, adicionar NOT NULL — cada uma delas tem um modo de falha «funciona no staging, quebra à meia-noite em produção».
Ler artigo26 de maio de 2026 · 1 min de leitura
SELinux em produção — o workflow que de fato funciona, e os AVC denials que continuamos encontrando
Setenforce 0 não é estratégia. Este é o workflow de SELinux que usamos em cada host RHEL que gerenciamos, incluindo os módulos de policy customizados e os passos de debug em ordem.
Ler artigo26 de maio de 2026 · 1 min de leitura
Upgrade para PHP 8.3 em produção — o playbook de migração para frotas Laravel, Symfony e WordPress
PHP 8.3 é maduro, rápido, e a superfície de deprecation desde 8.1/8.2 é pequena mas afiada. Este é o playbook estagiado que usamos para mover frotas de cliente sem incidente.
Ler artigo26 de maio de 2026 · 1 min de leitura
A supply chain do npm em 2026 — lockfiles, sigstore, Socket e os ataques que vimos
npm é a maior supply chain de software da história e a mais atacada. Este é o modelo de ameaças em 2026 e os controles que entregamos em cada stack Node.js gerenciada.
Ler artigo26 de maio de 2026 · 1 min de leitura
Tuning de slow queries no MySQL — o workflow EXPLAIN-driven que usamos em bases de cliente
Slow query logs, EXPLAIN ANALYZE, performance_schema, e os sete antipadrões que encontramos em quase toda auditoria.
Ler artigo26 de maio de 2026 · 1 min de leitura
Builds Docker multi-arch em 2026 — entregar ARM e x86 do mesmo pipeline
Graviton, Ampere e Apple Silicon tornam ARM real em produção. Veja como construímos imagens multi-arch que rodam em todo lugar, sem 3× o tempo de build.
Ler artigo24 de maio de 2026 · 1 min de leitura
Nginx vs HAProxy vs Envoy — uma comparação honesta de 2026
Três proxies excelentes, três sweet spots diferentes. Onde implantamos cada um para clientes, e os modos de falha que decidem qual escolher.
Ler artigo24 de maio de 2026 · 1 min de leitura
EKS vs GKE vs AKS em 2026 — uma comparação honesta de campo
Operamos os três para clientes. Estes são os pontos onde cada um silenciosamente vence, onde perde, e o framework de decisão que de fato usamos.
Ler artigo23 de maio de 2026 · 1 min de leitura
Autovacuum do Postgres, desmistificado — o tuning que evita o pânico de wraparound às 3 da manhã
Falhas de autovacuum são silenciosas até não serem. Veja como ele realmente funciona, as métricas que importam e o tuning por tabela que aplicamos em bases de clientes.
Ler artigo23 de maio de 2026 · 1 min de leitura
PM2 vs cluster vs containers — como rodamos Node.js em 2026
PM2 era a resposta certa em 2018. O módulo cluster era a resposta antes disso. Em 2026 a resposta depende do que você está otimizando.
Ler artigo22 de maio de 2026 · 1 min de leitura
Migrar um site WooCommerce de 50 GB sem downtime — o runbook que usamos
Migrações grandes de WooCommerce falham de formas previsíveis. Este é o runbook que seguimos, as armadilhas a antecipar, e o script de cutover que amarra tudo.
Ler artigo22 de maio de 2026 · 1 min de leitura
Supply chain do Composer em 2026 — as auditorias, locks e controles de assinatura que entregamos por padrão
Composer é o maior ponto de entrada em aplicações PHP. Depois de três anos de ataques ao Packagist, os controles que toda casa PHP deveria ter não são mais opcionais.
Ler artigo22 de maio de 2026 · 1 min de leitura
Nginx, HTTP/3 e uma config TLS de fato atual para 2026
Suporte a QUIC, TLS 1.3, OCSP stapling, hardening de cifras e os pequenos detalhes que decidem se seu edge tira um A+ ou um C em cada scanner TLS.
Ler artigo22 de maio de 2026 · 1 min de leitura
Do Docker Compose ao Kubernetes — a migração que não precisa ser dolorosa
Um playbook de migração em etapas do docker-compose para o Kubernetes, incluindo os padrões que traduzem de forma limpa e os que precisam de repensar.
Ler artigo21 de maio de 2026 · 1 min de leitura
kpatch no RHEL — patchear CVEs de kernel sem o reboot
Live kernel patching é real, suportado e útil. Também não é uma bala de prata. Veja como usamos o kpatch em produção e onde ainda reiniciamos.
Ler artigo21 de maio de 2026 · 1 min de leitura
Connection pooling do Postgres com PgBouncer — os padrões que rodamos em produção
Modo transaction, modo session, prepared statements, e as decisões de topologia de cluster que determinam se o PgBouncer ajuda ou atrapalha.
Ler artigo21 de maio de 2026 · 1 min de leitura
O playbook de memory leaks do Node.js — heap snapshots, clinic.js e os quatro padrões que continuamos encontrando
A maioria dos memory leaks do Node.js não é exótica. São o mesmo punhado de padrões aparecendo em produção repetidamente. Veja como diagnosticamos.
Ler artigo20 de maio de 2026 · 1 min de leitura
Rate limiting em camadas no Nginx — do limit_req_zone ao Cloudflare e de volta
Como empilhamos rate limiting em edge, perímetro e origin para absorver scrapers, tentativas de brute-force e o DDoS volumétrico ocasional sem acordar o plantão.
Ler artigo20 de maio de 2026 · 1 min de leitura
Deploys Laravel sem downtime — o pipeline de symlink atômico que mantém as filas honestas
O que de fato é preciso para fazer deploy de Laravel sem derrubar requisições nem perder jobs: releases atômicas, a coreografia dos queue workers, timing do reset do OPcache, e o pipeline estilo Envoyer que entregamos.
Ler artigo20 de maio de 2026 · 1 min de leitura
O baseline de segurança Kubernetes alinhado ao CIS que entregamos no primeiro dia
Pod Security Standards, políticas Kyverno, NetworkPolicies, audit logging — os controles que aplicamos a cada cluster de cliente antes que os workloads cheguem.
Ler artigo19 de maio de 2026 · 1 min de leitura
OPcache e JIT em produção PHP 8.3 — o que de fato mexe o ponteiro
OPcache é obrigatório. JIT é condicional. Esta é a config de produção que entregamos, o debate do modo JIT resolvido com números, e as cargas onde JIT realmente machuca.
Ler artigo19 de maio de 2026 · 1 min de leitura
Backups de MySQL que de fato restauram — XtraBackup, binlogs e o drill trimestral
mysqldump não é uma estratégia de backup para produção. Este é o setup Percona XtraBackup + PITR de binlog que implantamos, e o drill de restauração que o mantém honesto.
Ler artigo19 de maio de 2026 · 1 min de leitura
Endurecer o WordPress em 2026 — o checklist que aplicamos nos sites dos clientes
A maioria dos guias de segurança do WordPress é 80 % ruído. Estes são os controles que de fato param os ataques que vemos toda semana.
Ler artigo19 de maio de 2026 · 1 min de leitura
Boas práticas de Dockerfile em 2026 — os padrões que de fato importam
A maioria dos guias de Dockerfile está desatualizada. Estes são os padrões que pagam em produção: builds multi-stage, cache mounts, bases distroless e a história rootless.
Ler artigo18 de maio de 2026 · 1 min de leitura
Os padrões de reverse proxy do Nginx que de fato rodamos em produção
Blocos upstream, tuning de keepalive, encaminhamento de headers e a cadeia X-Forwarded-For. A config de reverse proxy que copiamos no edge de cada cliente.
Ler artigo18 de maio de 2026 · 1 min de leitura
Um setup pragmático de Argo CD — GitOps que sobrevive ao contato com a realidade
GitOps é vendido como mágica. Na prática, a mágica acontece quando a estrutura do seu repo, a orquestração de sync waves e sua estratégia de secrets trabalham juntas. Esta é a disposição que rodamos.
Ler artigo17 de maio de 2026 · 1 min de leitura
Migrar Apache para Nginx — os padrões de tradução e o playbook que usamos
A maioria das migrações Apache-para-Nginx empaca no .htaccess. Esta é a tabela de tradução, as pegadinhas, e o playbook que cruza um site real sem surpresas.
Ler artigo16 de maio de 2026 · 1 min de leitura
Checklist de hardening do Ubuntu Server 24.04 em instalação nova
Os passos exatos que rodamos em cada novo host Ubuntu 24.04 antes que qualquer carga chegue — SSH, UFW, fail2ban, AppArmor, auditd, e os pequenos detalhes que de fato importam.
Ler artigo15 de maio de 2026 · 1 min de leitura
FastAPI no Kubernetes — o deploy de produção que entregamos por padrão
Pydantic v2, escolha de servidor ASGI, OpenAPI no CI, health checks, e os manifestos Kubernetes que aplicamos em cada novo serviço FastAPI.
Ler artigo15 de maio de 2026 · 1 min de leitura
Aplicando o benchmark CIS Ubuntu — os controles que importam e os que pulamos
Uma caminhada pragmática pelo CIS Ubuntu 22.04 e 24.04 Nível 1 e Nível 2: quais controles movem a economia do atacante, quais produzem ticks amarelos para auditores, e como auditar em escala.
Ler artigo15 de maio de 2026 · 1 min de leitura
Hardening de TLS no Apache em 2026 — cifras, OCSP stapling e o pipeline de renovação de cert
TLS 1.3 é o padrão, mas a maioria das instalações Apache ainda tem config das guerras de ciphersuite de 2018. Isto é o que de fato pertence à sua config SSL hoje.
Ler artigo14 de maio de 2026 · 1 min de leitura
Canonical Livepatch em produção — patchear CVEs de kernel sem reiniciar
Como o Livepatch de fato funciona, o que ele consegue e não consegue patchear, a economia da assinatura Pro, e as alternativas se você não pode ou não quer usá-lo.
Ler artigo14 de maio de 2026 · 1 min de leitura
Gerenciar RHEL em escala — Satellite, content views e o lifecycle que de fato entregamos
subscription-manager está ok até você ter 300 hosts. Esta é a disposição do Satellite que mantém frotas RHEL sãs, patchadas e auditáveis.
Ler artigo14 de maio de 2026 · 1 min de leitura
Segurança de dependências Python em 2026 — pip-audit, lockfiles e os ataques ao PyPI que continuamos vendo
Ataques à supply-chain do PyPI são rotineiros agora. Esta é a toolchain que rodamos, a disciplina de lockfile que aplicamos, e os alertas em que de fato agimos.
Ler artigo14 de maio de 2026 · 2 min de leitura
ModSecurity e o OWASP CRS — as regras de WAF que de fato entregamos no Apache
A maioria das instalações de ModSecurity está ou desligada por padrão, ou tão barulhenta que ninguém lê os logs. Veja como o ajustamos para ser útil sem afogar em falsos positivos.
Ler artigo13 de maio de 2026 · 1 min de leitura
Configurar o unattended-upgrades no Ubuntu como produção de fato precisa
Quais patches de segurança você quer auto-aplicados, quais não, e como lidamos com reboots em uma frota de milhares de servidores.
Ler artigo13 de maio de 2026 · 1 min de leitura
Celery em produção — escolha de broker, semântica de retry, e o que o Flower de fato te diz
Redis vs RabbitMQ, tarefas idempotentes, o backoff de retry que aplicamos por padrão, e o monitoramento que pega problemas antes dos usuários notarem.
Ler artigo13 de maio de 2026 · 1 min de leitura
Alta disponibilidade de MySQL em 2026 — Galera, InnoDB Cluster ou réplicas async?
Três abordagens reais de HA para MySQL, o que cada uma de fato entrega, e a árvore de decisão que usamos ao montar clusters de cliente.
Ler artigo13 de maio de 2026 · 1 min de leitura
Laravel Octane em produção — RoadRunner vs Swoole vs FrankenPHP
Migramos dezenas de apps Laravel para o Octane em três runtimes diferentes. Veja como RoadRunner, Swoole e FrankenPHP se comparam em throughput, memória, ergonomia de deploy e modos de falha.
Ler artigo13 de maio de 2026 · 2 min de leitura
Apache MPM event em 2026 — dimensionar o thread pool que de fato rodamos
Prefork é peça de museu. Worker está ok. Event é o que você quer — e a maioria das instalações Apache que auditamos está mal ajustada.
Ler artigo12 de maio de 2026 · 2 min de leitura
A stack de cache do WordPress que realmente sobrevive à Black Friday
Cache de página, cache de objetos, cache de opcode, cache de edge — o que cada um entrega, onde brigam, e a ordem de empilhamento que aguenta no pico.
Ler artigo12 de maio de 2026 · 1 min de leitura
Gunicorn e Uvicorn em produção — o tuning de workers que de fato aplicamos
Sync vs async, a matemática de contagem de CPUs, o padrão Gunicorn-com-Uvicorn-workers, e os timeouts que mantêm serviços Python saudáveis sob carga.
Ler artigo12 de maio de 2026 · 1 min de leitura
Tuning do pool do PHP-FPM em produção — a decisão static vs dynamic vs ondemand
A maioria dos problemas de performance de PHP não é PHP. É dimensionamento do pool, modo do process manager e um slowlog que ninguém lê. Veja como ajustamos PHP-FPM em cargas reais.
Ler artigo10 de maio de 2026 · 1 min de leitura
Rodar um drill de restauração PITR do PostgreSQL toda semana (este é o nosso runbook)
Backups que você nunca restaurou não são backups. Nosso drill semanal de point-in-time recovery — o que ele testa, o que automatizamos, e o que ainda fazemos na mão.
Ler artigo8 de maio de 2026 · 1 min de leitura
Seis vazamentos de custo no Kubernetes que encontramos em quase todo cluster
Namespaces ociosos, requests superdimensionados, proliferação de snapshots EBS, contas de egress NAT — as formas recorrentes pelas quais o K8s queima 25-40 % do seu orçamento de compute.
Ler artigo6 de maio de 2026 · 1 min de leitura
Laravel Horizon em produção — dimensionar workers, sobreviver ao Redis, e a estratégia de retry
O que aprendemos rodando o Horizon para clientes Laravel que lidam com milhões de jobs por dia: autoscaling de workers, isolamento de filas, semântica de retry, e os erros de configuração que silenciosamente queimam dinheiro.
Ler artigo6 de maio de 2026 · 2 min de leitura
Uma supply chain de Docker prática: assinada, escaneada, atestada
Cosign, Trivy, SBOMs e políticas de admissão — a configuração mínima de supply chain de containers que entregamos em cada cluster de cliente.
Ler artigo