Automation Deployment Contract
Bu sayfa, Qapu'nun schedule/job orchestration katmani olan Automation servisinin Docker Swarm uzerindeki deployment contract'ini tanimlar.
Rol
Automation servisi:
- planli ve periyodik isleri tetikler
automationsveautomation_runslifecycle'ini yonetir- Communication'a command request uretir
- delivery truth degil, run lifecycle truth tasir
Benimsenen Model
- stateless deployment
- replica ile calisabilir ama scheduler coordination acik dusunulmelidir
- internal-only service davranisi
qapu-appveqapu-datanetwork uyeligi
Placement
Automation worker node'larda kosar.
Kritik nokta:
- replica sayisi artarken scheduler tick davranisi deterministic kalmalidir
- ayni automation kaydinin cift tetiklenmesini onleyecek coordination mekanizmasi deployment contract ile uyumlu olmalidir
Network
Tipik network uyeligi:
qapu-appqapu-data
Dis dunyaya dogrudan acilmaz.
Secrets ve Configs
Secrets
- db credential'lari
- redis credential'lari
- kafka credential'lari
Configs
- scheduler tick araligi
- job timeout ayarlari
- retry veya rerun policy tuning'i
- coordination davranis ayarlari
Health ve Readiness
Automation icin process ayakta olmasi yeterli degildir.
Minimum readiness beklentisi:
- scheduler config'i yuklenmis olmali
- run persistence baglami hazir olmali
- event publish/consume baglami hazir olmali
Update Stratejisi
Onerilen davranis:
- kontrollu rolling update
- scheduler coordination'i bozmayacak rollout
- gerekiyorsa leader-election veya lock mantigi ile uyumlu update stratejisi
Operasyonel Not
Automation deployment contract'indaki temel kritik nokta sudur:
- deployment topolojisi run lifecycle truth'unu bozup cift tetikleme veya kayip run uretmemelidir