Ana içeriğe geç

PostgreSQL Deployment Contract

Bu sayfa, Qapu icin authoritative source olan PostgreSQL'in Docker Swarm icinde nasil konumlanacagini tanimlar.

Rol

PostgreSQL, sistemin authoritative source katmanidir.

Bu nedenle deployment contract acisindan en kritik veri duzlemidir.

Benimsenen Model

  • Swarm icinde containerized deployment
  • tek authoritative primary instance
  • persistent volume
  • pinned node placement
  • kontrollu update
  • backup/restore zorunlulugu

Placement

Onerilen constraint mantigi:

  • node.role.qapu.postgres=true
  • node.role.qapu.stateful=true

Kural:

  • PostgreSQL rastgele worker node'a schedule edilmez
  • container restart etse bile ayni storage baglamina donebilmelidir

Storage

Minimum beklenti:

  • kalici volume veya host-mounted deterministic path
  • backup ile uyumlu dosya duzeni
  • yeterli disk gozlemi ve alarm

Bu katmanda kritik soru:

  • volume node'a bagimli mi?
  • node kaybinda restore proseduru ne kadar hizli?

Network

Tipik network uyeligi:

  • qapu-data
  • gerekiyorsa qapu-ops

Dis dunyaya dogrudan acilmaz.

Secrets ve Configs

Secrets

  • db username/password
  • replication veya backup credential'lari varsa onlar

Configs

  • max connection
  • memory tuning
  • backup schedule parametreleri
  • environment bazli db ayarlari

Health ve Readiness

Minimum health beklentisi:

  • process ayakta olmasi yetmez
  • write/read readiness net olmalidir

Qapu icin anlamli health mantigi:

  • DB baglanti kabul ediyor mu?
  • primary instance write kabul ediyor mu?

Update Stratejisi

PostgreSQL icin rolling update mantigi dogrudan uygulanmaz.

Onerilen davranis:

  • kontrollu update
  • pre-backup
  • migration etkisi analizi
  • rollback yerine restore/forward-fix karari onceden dusunulur

Rollback Notu

DB tarafinda rollback kavrami yalniz image geri alma degildir.

Gerekli olabilir:

  • image rollback
  • config rollback
  • schema compatibility kontrolu
  • restore drill

Operasyonel Not

Ilk hedef yalanci HA degil, guvenilir single-primary olmaktir.

Bu nedenle PostgreSQL deployment contract'inin gucu su eksende olculur:

  • deterministic placement
  • guvenilir backup
  • restore edilebilirlik
  • migration disiplini