DaemonSet kullanım alanları
- Docker & Kubernetes kursu
- İleri seviye
- Ders 22/70
- 4 dk
DaemonSet kullanım senaryolarını öğrenirsin.
DaemonSet kullanım alanları
DaemonSet'in tipik görevleri, her node'da bir ajan çalıştırmayı gerektiren altyapı işleridir:
- Log toplama: Fluent Bit, Fluentd, Promtail node'daki container log'larını merkeze gönderir.
- İzleme: node-exporter, Datadog ajanı node ölçümlerini toplar.
- Ağ: kube-proxy, Calico, Cilium node'un ağ kurallarını yönetir.
- Depolama: CSI node eklentileri diskleri node'a bağlar.
- Güvenlik: Falco gibi araçlar çekirdek olaylarını izler.
kubectl get ds -n kube-system
NAME DESIRED CURRENT READY
kube-proxy 3 3 3
calico-node 3 3 3Kaynak sınırları önemlidir
DaemonSet pod'u her node'da çalıştığı için kaynak tüketimi node sayısıyla çarpılır; 100 node'da 200 MiB bellek kullanan bir ajan toplam 20 GiB demektir. Ayrıca kritik ajanların tahliye edilmemesi için öncelik sınıfı verilir:
priorityClassName: system-node-critical
containers:
- name: fluent-bit
image: fluent/fluent-bit:3.1
resources:
requests: {cpu: 50m, memory: 64Mi}
limits: {memory: 128Mi}Uygulama Log toplayıcı
Bir DaemonSet şablonunun spec bölümünü yaz (spec: ile başlayarak): priorityClassName: system-node-critical; container adı fluent-bit, image fluent/fluent-bit:3.1; resources.requests cpu: 50m, memory: 64Mi; resources.limits memory: 128Mi.
Başlangıç kodu
# buraya yazÖrnek çözüm
spec:
priorityClassName: system-node-critical
containers:
- name: fluent-bit
image: fluent/fluent-bit:3.1
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 128MiBeklenen çıktı
daemonset.apps/fluent-bit created
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangisi DaemonSet için uygun değildir?
- Kullanıcı isteklerini karşılayan web API'si Doğru cevap
- Log toplayıcı
- Node ölçüm ajanı
- Ağ eklentisi
Açıklama: Web API'nin kopya sayısı node sayısına değil yüke bağlıdır.
2 Kritik ajana öncelik ver.
____: system-node-critical
priorityClassName: system-node-critical
Açıklama: priorityClassName tahliye ve zamanlama önceliğini belirler.
3 Araçları eşleştir.
| Kavram | Anlamı |
|---|---|
Fluent Bit |
Log toplama |
node-exporter |
Ölçüm |
Calico |
Ağ |
Falco |
Güvenlik |