Fluentd
- Docker & Kubernetes kursu
- İleri seviye
- Ders 56/70
- 4 dk
Fluentd ile günlük toplamayı öğrenirsin.
Fluentd ve Fluent Bit
Fluentd ve hafif kardeşi Fluent Bit, log'ları okuyan (input), işleyen (filter/parser) ve hedeflere gönderen (output) toplayıcılardır. Kubernetes'te node başına Fluent Bit yaygındır: az bellek kullanır ve kubernetes süzgeciyle her satıra pod adı, namespace, etiketler ekler:
[INPUT]
Name tail
Path /var/log/containers/*.log
Tag kube.*
[FILTER]
Name kubernetes
Match kube.*
Merge_Log On
[OUTPUT]
Name es
Match *
Host elasticsearch.loglama.svc
Port 9200Helm ile kurulum
Fluent Bit'in resmi Helm chart'ı DaemonSet'i, RBAC izinlerini ve yapılandırmayı birlikte kurar. Çıkış hedefi values ile değiştirilir:
helm repo add fluent https://fluent.github.io/helm-charts
helm install fluent-bit fluent/fluent-bit -n loglama --create-namespace
kubectl get ds -n loglama
kubectl logs -n loglama ds/fluent-bit --tail=5Uygulama Fluent Bit'i kur
Üç komut yaz: fluent deposunu https://fluent.github.io/helm-charts adresiyle ekle; fluent/fluent-bit chart'ını fluent-bit adıyla loglama namespace'ine (yoksa oluşturarak) kur; loglama'daki DaemonSet'leri listele.
Başlangıç kodu
# buraya yazÖrnek çözüm
helm repo add fluent https://fluent.github.io/helm-charts
helm install fluent-bit fluent/fluent-bit -n loglama --create-namespace
kubectl get ds -n loglamaBeklenen çıktı
"fluent" has been added to your repositories NAME: fluent-bit STATUS: deployed NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE fluent-bit 3 3 3 3 3
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 kubernetes süzgecinin görevi nedir?
- Pod'ları yeniden başlatmak
- Log'ları şifrelemek
- Log satırlarına pod, namespace ve etiket bilgisini eklemek Doğru cevap
- Log'ları silmek
Açıklama: Bu bilgiyi API sunucusundan sorgular; bu yüzden pod okuma RBAC izni gerekir.
2 Dosyaların sonunu okuyan girdi eklentisini yaz.
[INPUT]
Name ____
Path /var/log/containers/*.log
[INPUT]
Name tail
Path /var/log/containers/*.log
Açıklama: tail dosyaya eklenen yeni satırları izler.
3 Bölümleri eşleştir.
| Kavram | Anlamı |
|---|---|
[INPUT] |
Okuma |
[FILTER] |
İşleme |
[OUTPUT] |
Gönderme |
Match |
Hangi etiketler |