Kafka Deployment Contract
Bu sayfa, Qapu'nun event tasima omurgasi olan Kafka'nin Docker Swarm uzerinde nasil konumlanacagini tanimlar.
Rol
Kafka, servisler arasi event bus ve tetikleme katmanidir.
Bu nedenle deployment contract acisindan kritik davranislar:
- broker kimligi
- topic dayanikliligi
- disk placement
- listener config
- rollout sirasi
Benimsenen Model
- Swarm icinde containerized deployment
- 3 broker topology
- her broker icin ayri kimlik
- her broker icin deterministic placement
- her broker icin ayri disk/volume baglami
Placement
Onerilen constraint mantigi broker bazli olmalidir.
Ornek zihinsel model:
- kafka-1 ->
node.role.qapu.kafka=trueve broker-1'e uygun node - kafka-2 -> farkli node
- kafka-3 -> farkli node
Kural:
- Kafka
replicas: 3gibi tek satirlik stateless mantikla ele alinmaz - broker topology ayri ayri dusunulur
Storage
Her broker icin:
- ayri volume veya deterministic host path
- disk performansi ve kapasite gozlemi
- broker restart sonrasi veri butunlugu beklentisi
Network
Tipik network uyeligi:
qapu-data- gerekiyorsa
qapu-ops
Dis client erisimi olacaksa listener modeli ayri tasarlanmalidir.
Secrets ve Configs
Secrets
- auth mekanizmasi varsa ilgili credential'lar
Configs
- broker id veya node id mantigi
- advertised listeners
- replication factor
- retention
- partition ve topic davranislari
Health ve Readiness
Kafka icin process ayakta olmasi yeterli degildir.
Anlamli readiness beklentisi:
- broker cluster'a katildi mi?
- listener dogru advertise edildi mi?
- topic operation'lari beklenen sekilde calisiyor mu?
Update Stratejisi
Kafka update stratejisi broker broker dusunulmelidir.
Onerilen davranis:
- toplu rolling yerine kontrollu broker update
- ISR ve replication etkisini bilerek rollout
- config degisikligi varsa listener/topology etkisini onceden degerlendirme
Operasyonel Not
Kafka'nin Swarm icindeki deployment kalitesi, yalniz broker sayisi ile olculmez.
Asil olcutler:
- broker kimliklerinin sabitligi
- storage baglaminin saglamligi
- listener/config dogrulugu
- kontrollu operasyon disiplini