Update ve Rollback Stratejisi
Bu sayfa, Docker Swarm uzerinde Qapu servislerinin nasil guncellenecegini ve sorun halinde nasil geri alinacagini tanimlar.
Temel Ayrim
Tum servisler ayni guncelleme stratejisi ile ele alinmaz.
Stateless Servisler
Ornek:
- api
- ingest
- stream
- rule
- action
- communication
- automation
- egress
- heartbeat
Onerilen davranis:
- rolling update
- healthcheck gating
start-firstupdate order (uygunsa)on-failurerestart policy- resource limit tanimi
Stateful Servisler
Ornek:
- postgres
- kafka
- redis
- firmware storage'la dogrudan bagli servisler
Onerilen davranis:
- kontrollu update
- backup/health precheck
- gerekiyorsa maintenance window
- rollback planinin update'ten once hazir olmasi
Healthcheck Onemi
Docker Swarm rollout davranisinda healthcheck kritik rol oynar.
Qapu deployment icin temel kural:
- healthcheck olmayan servis, guvenli rolling update adayi sayilmamalidir
Healthcheck kapsami servis tipine gore degisir:
- api -> HTTP readiness
- consumer servisleri -> dependency reachability + internal ready state
- infra servisleri -> kendi native health semantics
Rollback Ilkesi
Rollback yalniz image tag geri alma degildir.
Bazi servislerde rollback su boyutlari icerebilir:
- image rollback
- config rollback
- secret rotation rollback
- DB migration geri alma veya forward-fix karari
- Kafka consumer behavior degisikligi
Onerilen Runbook Basliklari
Gelecek sertlestirme icin su runbook'lar yazilmalidir:
- yeni image rollout proseduru
- acil rollback proseduru
- manager node drain proseduru
- worker node bakim proseduru
- stateful service update checklist'i
- firmware storage degisimi checklist'i
Sonuc
Qapu deployment modelinde update ve rollback, yalniz DevOps operasyonu degil, sistem guvenilirliginin parcasidir. Bu nedenle deployment belgeleri ile servis belgeleri ayni gercegin farkli katmanlari olarak ele alinmalidir.