還去服務(wù)器上撈日志?搭個(gè)日志收集系統(tǒng)不香么!
共 6147字,需瀏覽 13分鐘
·
2024-07-15 12:06
一、ELK日志系統(tǒng)
經(jīng)典的ELK架構(gòu)或現(xiàn)被稱為Elastic Stack。Elastic Stack架構(gòu)為Elasticsearch + Logstash + Kibana + Beats的組合:
Beats負(fù)責(zé)日志的采集
Logstash負(fù)責(zé)做日志的聚合和處理
ES作為日志的存儲(chǔ)和搜索系統(tǒng)
Kibana作為可視化前端展示
整體架構(gòu)圖:
二、EFK日志系統(tǒng)
容器化場(chǎng)景中,尤其k8s環(huán)境,用戶經(jīng)常使用EFK架構(gòu)。F代表Fluent Bit,一個(gè)開源多平臺(tái)的日志處理器和轉(zhuǎn)發(fā)器。Fluent Bit可以:
讓用戶從不同來源收集數(shù)據(jù)/日志
統(tǒng)一并發(fā)到多個(gè)目的地
完全兼容Docker和k8s環(huán)境
三、PLG日志系統(tǒng)
Grafana Labs提供的另一個(gè)日志解決方案PLG逐漸流行。PLG架構(gòu)即Promtail + Loki + Grafana的組合:
Grafana,開源的可視化和分析軟件,允許用戶查詢、可視化、警告和探索監(jiān)控指標(biāo)。Grafana主要提供時(shí)間序列數(shù)據(jù)的儀表板解決方案,支持超過數(shù)十種數(shù)據(jù)源。
Grafana Loki是一組可以組成一個(gè)功能齊全的日志堆棧組件,與其它日志系統(tǒng)不同,Loki只建立日志標(biāo)簽的索引而不索引原始日志消息,而是為日志數(shù)據(jù)設(shè)置一組標(biāo)簽,即Loki運(yùn)營(yíng)成本更低,效率還提高幾個(gè)數(shù)量級(jí)。
Prometheus啟發(fā),可實(shí)現(xiàn)可水平擴(kuò)展、高可用的多租戶日志系統(tǒng)。Loki整體架構(gòu)由不同組件協(xié)同完成日志收集、索引、存儲(chǔ)等。
各組件如下,Loki’s Architecture深入了解。Loki就是like Prometheus, but for logs。
Promtail是一個(gè)日志收集的代理,會(huì)將本地日志內(nèi)容發(fā)到一個(gè)Loki實(shí)例,它通常部署到需要監(jiān)視應(yīng)用程序的每臺(tái)機(jī)器/容器上。Promtail主要是用來發(fā)現(xiàn)目標(biāo)、將標(biāo)簽附加到日志流以及將日志推送到Loki。截止到目前,Promtail可以跟蹤兩個(gè)來源的日志:本地日志文件和systemd日志(僅支持AMD64架構(gòu))。
四、PLG V.S ELK
ELK/EFK架構(gòu)確實(shí)強(qiáng),經(jīng)多年實(shí)際環(huán)境驗(yàn)證。存儲(chǔ)在ES中的日志通常以非結(jié)構(gòu)化JSON對(duì)象形式存儲(chǔ)在磁盤,且ES為每個(gè)對(duì)象都建索引,以便全文搜索,然后用戶可特定查詢語言搜索這些日志數(shù)據(jù)。
而Loki數(shù)據(jù)存儲(chǔ)解耦:
既可在磁盤存儲(chǔ)
也可用如Amazon S3云存儲(chǔ)系統(tǒng)
Loki日志帶有一組標(biāo)簽名和值,只有標(biāo)簽對(duì)被索引,這種權(quán)衡使它比完整索引操作成本更低,但針對(duì)基于內(nèi)容的查詢,需通過LogQL再單獨(dú)查詢。
相比Fluentd,Promtail專為L(zhǎng)oki定制,它可為運(yùn)行在同一節(jié)點(diǎn)的k8s Pods做服務(wù)發(fā)現(xiàn),從指定文件夾讀取日志。Loki類似Prometheus的標(biāo)簽方式。因此,當(dāng)與Prometheus部署在同一環(huán)境,因?yàn)橄嗤姆?wù)發(fā)現(xiàn)機(jī)制,來自Promtail的日志通常具有與應(yīng)用程序指標(biāo)相同的標(biāo)簽,統(tǒng)一標(biāo)簽管理。
Kibana提供許多可視化工具來進(jìn)行數(shù)據(jù)分析,高級(jí)功能如異常檢測(cè)等機(jī)器學(xué)習(xí)功能。Grafana針對(duì)Prometheus和Loki等時(shí)間序列數(shù)據(jù)打造,可在同一儀表板上查看日志指標(biāo)。
往期推薦
點(diǎn)亮,服務(wù)器三年不宕機(jī)
