PostgreSQL + Patroni + etcd + HAProxy Yüksek Erişilebilirlik
Raft Dağıtık Konsensüs, Otomatik Failover (<15s) ve RPO=0 Mimarisi

PostgreSQL + Patroni + etcd + HAProxy Enterprise HA Referans Mimari Şeması (Raft Quorum, DCS / Leader Lock, VIP)
- •Otomatik failover ve split-brain koruması
- •Dinamik konfigürasyon yönetimi
- •Bakım anında kontrollü switchover
- •En az 3 adet etcd node gereksinimi
- •Artan ağ ve altyapı karmaşıklığı
İstemci & Trafik Akışı
Uygulamalar Keepalived sanal IP'si (VIP: 10.0.1.10) üzerinden HAProxy katmanına bağlanır.
Port 5000 doğrudan Patroni REST API'nin `/primary` döndüğü aktif lider sunucuya, Port 5001 ise sağlıklı replicalara yönlendirilir.
Primary sunucu commit onayını vermeden önce WAL kayıtlarını en az bir senkron standby düğümüne aktarır (RPO=0).
Otomatik Yük Devretme (Failover)
Primary düğüm etcd üzerindeki liderlik anahtarını (lease TTL: 30s) yenileyemez.
Patroni daemonları arasında en güncel LSN pozisyonuna sahip standby düğüm yeni Lider ilan edilir.
HAProxy HTTP 8008 sağlık kontrolleri sayesinde 2 saniye içinde trafiği yeni primary sunucuya yönlendirir.
Canlıya Alma Kontrol Listesi
# patroni.yml snippet
scope: pg-cluster-prod
namespace: /service
name: pg-node-01
etcd3:
hosts: 10.0.1.11:2379,10.0.1.12:2379,10.0.1.13:2379
bootstrap:
dcs:
ttl: 30
loop_wait: 10
retry_timeout: 10
maximum_lag_on_failover: 1048576
postgresql:
use_pg_rewind: true
parameters:
wal_level: replica
max_wal_senders: 10
wal_keep_size: 2048MB
postgresql:
listen: 0.0.0.0:5432
connect_address: 10.0.1.11:5432
data_dir: /var/lib/postgresql/17/main
pgpass: /var/lib/postgresql/.pgpass
authentication:
replication:
username: replicator
superuser:
username: postgrespatronictl -c /etc/patroni/patroni.yml topology
patronictl -c /etc/patroni/patroni.yml list
etcdctl --endpoints=10.0.1.11:2379,10.0.1.12:2379,10.0.1.13:2379 endpoint healthPostgreSQL Diğer Üretim Rehberleri
Aynı veritabanı motoruna ait doğrulanmış diğer içerikler.
PostgreSQL Backup'ınızı Doğrulayın: İlk Restore Tatbikatı
Backup job'unun başarılı bitmesi verinin geri dönülebildiğini kanıtlamaz. Bu runbook, izole tatbikat ortamında uçtan uca restore ve veri doğrulama adımlarını yürütür.
PostgreSQL Replication Lag: Darboğazı Adım Adım Teşhis Etme
Replica geriden geldiğinde sorun WAL üretiminde mi, ağ aktarımında mı yoksa replay darboğazında mı? Salt okunur sorgularla darboğazı adım adım tespit edin.
psql CLI Hızlı Referans
Bağlantı parametreleri, meta komutlar (\d, \l, \du), .psqlrc şablonu, COPY streaming ve anlık kilit/aktivite teşhis sorguları.