企業無論是已經使用了開源日志收集工具,還是準備選擇一款或多款工具,都有必要了解日志收集工具的關鍵要求。這些要求包括:高數據吞吐量、可靠性、可擴展性、靈活性、安全性以及資源(CPU和內存)消耗等。本文討論了市面上流行的幾款日志收集工具(包括 Logstash、Fluentd、Fluent Bit 和 Vector)及其主要特點。
1. Logstash
Logstash
是最受歡迎的日志收集工具之一,它是 ELK(Elasticsearch/Logstash/Kibana)架構的一部分。
Logstash 的主要優勢:
● 處理結構化數據和非結構化數據。
● 支持更高的數據安全性,能夠匿名化或排除敏感字段。
● 支持數百個插件,包括輸入、過濾和輸出等插件。過濾器插件執行日志處理,比如聚合和解析。
雖然 Logstash 是一款可靠的日志收集工具,在處理日志數據方面有諸多選項,但如果內存占用量小是個關鍵要求,本文介紹的其他日志收集工具可能更勝一籌。因為 Logstash 是用 Java 編寫的,所以需要 JVM 支持。如果企業打算從嵌入式設備和物聯網應用程序收集日志,它不是最佳選擇。
2. Fluentd
Fluentd
是一款日志收集工具,內存占用量小,可以處理各種日志源和目的地。許多受支持的插件允許連接到多種類型的日志源和目的地。與其他日志收集工具一樣,Fluentd 的典型日志源包括應用程序、基礎設施和消息隊列平臺,而通常目的地是日志管理工具和存儲歸檔系統。
Fluentd 的主要優勢:
● 支持許多日志源和目的地。
● 靈活、可擴展的解析選項,支持多種輸入格式。
● 擁有龐大的生態系統,包括成百上千個插件,以及用Ruby自行編寫插件的功能。
● 支持 Apache 許可證,版本2.0。
● 供應商中立(CNCF項目)。
如果企業需要中立的供應商,Fluentd 是不錯的選擇。它還經常與 Kubernetes 和容器化環境一起使用。
3. Fluent Bit
Fluent Bit
不僅是一款日志收集工具,還可以用作數據流處理工具,并充當將日志數據轉發到 Fluentd 的運送工具。Fluent Bit 在 Kubernetes 集群等容器化環境中運行順暢。Fluent Bit 可以擴展并仍能節省資源,因為它占用的空間很小。雖然 Fluent Bit 經常用在 Kubernetes 環境中,但它也可以部署在裸機服務器、虛擬機和嵌入式設備上。
Fluent Bit的主要優勢:
● 輕量級設計,內存占用量極小(通常不到1MB)。
● 易于擴展的架構。
● 可插入式架構,有許多輸入、過濾器和輸出插件。
● 支持基于指標和基于日志的有效負載。
● 支持通過安全的連接將日志發送到存儲后端。
● 使用 SQL,支持數據流處理。
● 支持 Apache 許可證,版本2.0。
● 供應商中立(CNCF項目)。
Fluent Bit 從眾多日志源收集日志和指標,并將它們發送到不同的目的地。Fluent Bit 真正大放異彩的地方在于嵌入式、邊緣及其他資源受限的環境,因為精簡的運行時環境結合眾多的輸入/輸出選項至關重要。
4. Vector
Vector
是一款高性能的日志收集工具。與本文中的其他日志收集工具相比,這款產品比較新。
Vector 的主要優勢:
● 高效的內存/CPU消耗和高數據吞吐量。
● 良好的可靠性,正確性和交付方面有保證。
● 包括自定義 DSL,以一種安全、高性能的方式動態轉換數據。
● 支持基于指標和日志的有效負載。
● 大量的輸入和輸出集成。
● 可以部署為代理或聚合器。
由于廣泛的部署選項、同時支持指標和日志以及可用集成的數量,使 Vector 成為一種出色而靈活的選擇。由于 Vector 用 Rust 編寫,提供了內存安全和效率保證,使其在其他現有工具中獨樹一幟。Vector 引入了單元測試框架,可以更輕松地維護復雜的日志收集工具拓撲。
此外,Vector 的軟件組件竭力為傳送到目的地的日志和事件提供交付保證。Vector 的用戶還可以獲得 Vector 組件的代碼總體穩定性方面的保證。無論在新環境中還是在舊環境中工作,它都值得認真考慮。
結 語
很難判定哪一款工具主導市場,企業選擇合適的日志收集工具取決于其特定需求和要求。比如說,如果企業在為需要資源消耗少的物聯網應用程序尋找日志收集工具,那么最好使用 Vector 或 Fluent Bit,而不是 Logstash。如果企業看重供應商的中立性,CNCF 支持的項目(比如 Fluentd 和 Fluent Bit)倒是不錯的選擇。仔細檢查性能、資源消耗、支持眾多輸入和輸出格式的靈活性、可擴展性、可靠性、供應商鎖定和安全要求,可以幫助企業找到適合的日志收集工具。
鏈接:https://cloud.tencent.com/developer/article/2203090?areaSource=102001.16&traceId=UcMPrQSQJHV9ushXsHVE0
-
數據
+關注
關注
8文章
7006瀏覽量
88955 -
開源
+關注
關注
3文章
3323瀏覽量
42475 -
Fluent
+關注
關注
0文章
25瀏覽量
11662
原文標題:Logstash、Fluentd、Fluent Bit 和 Vector,誰才是開源日志收集最強王者?
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論