Objetivo
Criar e evoluir um laboratório prático de confiabilidade para PostgreSQL, com foco em operação, padronização e testes de cenários reais.
Os posts vinculados apresentam o Lab 01 (Foundation), o Lab 02 (Database Initialization), o Lab 03 (Backup & Restore), o Lab 04 (Streaming Replication) e o Lab 05 (Automatic Failover). O projeto cobre a criação do ambiente, backup, restore, recuperação point-in-time, replicação física assíncrona e failover automático, incluindo a reintegração do antigo líder como réplica.
Links
- Repositório: postgresql-reliability-lab
- Deep dive técnico (Lab 01): PostgreSQL Reliability Lab - Lab 01: Ambiente confiável com Docker
- Deep dive técnico (Lab 02): PostgreSQL Reliability Lab - Lab 02: Inicialização de banco de dados
- Deep dive técnico (Lab 03): Backup não basta — restore, WAL archiving e PITR
- Implementação (Lab 03): Backup lógico, backup físico, WAL archiving e PITR
- Deep dive técnico (Lab 04): Streaming Replication no PostgreSQL
- Implementação (Lab 04): Replicação física assíncrona e teste de reconexão
- Deep dive técnico (Lab 05): Failover automático com Patroni, etcd e HAProxy
- Implementação (Lab 05): Failover automático e reintegração do antigo líder
Estado atual
- Foundation pronta com Docker
- Inicialização ordenada de roles, extensões, schemas e tabelas
- Modelo de e-commerce com massa de dados reproduzível
- Validação automatizada do estado operacional e dos dados
- Backup lógico restaurado em banco separado
- Backup físico restaurado em container isolado
- WAL archiving validado com publicação atômica dos segmentos
- PITR validado por timestamp anterior a um incidente simulado
- Teste destrutivo de repetição com rejeição de backups parciais
- Réplica física por streaming com slot de replicação e leitura em hot standby
- Propagação de escritas e rejeição de escrita na réplica verificadas
- Retomada da replicação após interrupção validada, com acompanhamento de WAL
- Failover automático com retomada da escrita pelo mesmo endpoint
- Reintegração do antigo líder como réplica por meio de
pg_rewind
Próximas fases
- Labs seguintes: observabilidade, performance e pipeline de dados