簡體   English   中英

收集 kubernetes 的 pods 日志

[英]Collect kubernetes' pods logs

我正在嘗試在整個生命周期中收集我的應用程序容器的日志。 這些容器在 Kubernetes pod 中運行,我找到了 Fluentd 之類的解決方案,但我也發現我需要指定后端(Elasticsearch、AWS S3 等),而我想收集具有特定名稱的文件中的日志,例如podname_namespace_containername.json 然后使用腳本解析這些文件。 這可以用 fluentd 實現嗎?

到目前為止,設置日志收集的最快方法是https://github.com/helm/charts/tree/master/stable/fluent-bit 有關所有可用選項,請參閱values.yaml 它支持多個后端,如 ES、S3、Kafka。 每個日志事件都包含 pod 元數據(pod 名稱、命名空間等)並進行了標記,以便您可以在后端單獨組織處理。 例如,在后端,您只能選擇和解析某些命名空間中的某些 pod。

根據https://kubernetes.io/docs/concepts/cluster-administration/logging/您登錄到 stdout/stderr,它被寫入底層節點,日志收集器(daemonset)收集所有內容並進一步發送。

在此處輸入圖片說明

Kubernetes 中的 FluentBit daemonset 正是實現了這種架構。 有關 FluentBit 的更多文檔: https ://docs.fluentbit.io/manual/concepts/data-pipeline

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM