成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從 ELK/EFK 到 PLG,是時候換個日志框架了

開發 開發工具
隨著分布式系統復雜性的不斷增加和云原生解決方案的不斷增長,監控和可觀察性成為了解系統行為的一個非常重要的方面。這就需要可擴展的工具來收集所有服務的數據,并為開發人員提供性能、錯誤、日志和組件可用性的統一視圖。

隨著分布式系統復雜性的不斷增加和云原生解決方案的不斷增長,監控和可觀察性成為了解系統行為的一個非常重要的方面。這就需要可擴展的工具來收集所有服務的數據,并為開發人員提供性能、錯誤、日志和組件可用性的統一視圖。這些工具還需要具有成本效益和高性能。在本文中,我們將介紹兩種流行的日志記錄堆棧——EFK (Elasticsearch) 和 PLG (Loki),并了解它們的架構和差異。

什么是 EFK 堆棧?

你可能聽說過非常流行的 ELK 或 EFK 堆棧。它是一組監控工具——Elastic search(對象存儲)、Logstash 或 FluentD(日志路由和聚合)以及用于可視化的 Kibana。

典型的工作流程如下:

Elasticsearch是一個實時、分布式對象存儲、搜索和分析引擎。它擅長對日志等半結構化數據進行索引。信息被序列化為 JSON 文檔并實時索引并分布在集群中的節點上。Elasticsearch 使用倒排索引列出所有唯一單詞及其相關文檔進行全文搜索,該索引基于 Apache Lucene 搜索引擎庫。

FluentD是一個數據收集器,它將數據收集和消費統一起來,以便更好地使用。FluentD 嘗試盡可能將數據構造為 JSON,具有插件架構,并受到數百個社區提供的插件支持。

Kibana是 Elasticsearch 數據的可視化引擎,具有時間序列分析、機器學習、圖形和位置分析等功能。

Elasticsearch架構

通常在 Elasticsearch 集群中,數據存儲在跨節點的分片中。集群由許多節點組成,以提高可用性和彈性。任何節點都能夠執行所有角色,但在大規模部署中,節點可以被分配特定的職責。

集群中有以下類型的節點:

  1. 主節點 – 控制集群,至少需要 3 個,其中一個始終處于活動狀態
  2. 數據節點 – 保存索引數據并執行與數據相關的任務
  3. 攝取節點 – 用于攝取管道,在索引之前轉換和豐富數據
  4. 協調節點 – 路由請求、處理搜索縮減階段、協調批量索引
  5. 警報節點 – 運行警報作業
  6. 機器學習節點 – 運行機器學習作業

下圖顯示了數據如何存儲在主分片和副本分片中,并以跨節點分散負載并提高數據可用性。

每個分片中的數據都存儲在倒排索引中。下圖顯示了數據如何存儲在倒排索引中。

什么是 PLG(Promtail、Loki 和 Grafana)?

如果你沒有找到這個縮寫詞,請不要感到驚訝,它通常被稱為 Grafana Loki。Grafana實驗室設計了Loki,這是一個受Prometheus啟發的水平可擴展、高可用、多租戶日志聚合系統。它僅索引元數據,不索引日志內容。這種設計決策使其非常具有成本效益且易于操作。

Promtail是一個將日志從本地系統發送到 Loki 集群的代理。

Grafana是一種可視化工具,它使用來自 Loki 數據源的數據。

Loki基于Prometheus相同的設計原理構建,因此非常適合存儲和分析日志。

Loki 架構

Loki 可以在單進程模式或多進程模式下運行,提供獨立的水平可擴展性。單進程模型有利于本地開發和小型監控設置。對于生產和可擴展的工作負載,建議使用微服務模型。Loki 中的寫入路徑和讀取路徑是解耦的,因此它具有高度可調性,并且可以根據需要獨立擴展。

下面是 Loki(微服務模型)的架構:

組件:

Promtail – 這是安裝在節點上的代理(作為 Daemonset),它從作業中提取日志并與 Kubernetes API 服務器通信以獲取元數據并使用此信息來標記日志。然后它將日志轉發到 Loki 中央服務。代理支持與 Prometheus 相同的標簽規則,以確保元數據匹配。

Distributor– Promtail將日志發送到分發器,該分發器充當緩沖區。為了處理數百萬條寫入,它將流入的日志批量處理,并在數據到達時按塊進行壓縮。存在多個攝取者(ingesters),屬于每個流的日志將在同一塊中的所有相關條目中進入相同的攝取者。這是通過使用攝取者環和一致性哈希來完成的。為了提供彈性和冗余性,它會進行n(默認為3)倍的復制。

Ingester – 當塊進入時,它們被壓縮并附加日志。一旦塊填滿,該塊就會刷新到據庫。元數據進入索引,日志塊數據進入塊(通常是對象存儲)。日志刷完后,Ingester會創建一個新塊并向其中添加新條目。

下面是一個示例儀表板,顯示來自 Prometheus 的 ETCD 指標數據和 Loki 的 ETCD Pod 日志數據。

EFK (Elasticsearch) 與 PLG (Loki) 技術棧的比較:

查詢語言

Elasticsearch 使用 Query DSL 和 Lucene 查詢語言提供全文搜索功能。它是一個成熟強大的搜索引擎,擁有廣泛的運營商支持。它可以搜索內容并使用相關性分數對其進行排序。另一方面,Loki 使用的是 LogQL,它使用日志標簽來過濾和選擇日志數據。Loki 可以使用一些運算符和算術,但它不像 Elastic Search 那樣成熟。

可擴展性

兩者都是水平可擴展的,但 Loki 由于其解耦的讀寫路徑以及使用基于微服務的架構而具有更多優勢。它可以根據具體需求進行定制,并可用于處理大量日志數據。

多租戶

在共享集群中擁有多個租戶是降低運營成本的常見主題。這兩種技術都提供了托管多個租戶的方法。使用elasticsearch,有多種方法可以將租戶分開——每個租戶一個索引、基于租戶的路由、使用唯一的租戶字段以及使用搜索過濾器。

在 Loki 中,通過在 HTTP 標頭請求中使用 X-Scope-OrgId支持多租戶 。

成本

Loki 是一種極具成本效益的解決方案,因為它的設計決策是避免對實際日志數據建立索引。僅對元數據建立索引,因此可以節省存儲 和內存(緩存)。與 Elasticsearch 集群所需的塊存儲相比,對象存儲更便宜。

結論

由于元數據發現機制,Loki 技術棧在 Kubernetes 生態系統中非常有用。可以輕松地將 grafana 中基于時間序列的數據與日志關聯起來,以實現可觀察性。

當涉及成本和長時間存儲日志時,Loki 是云原生解決方案日志記錄的絕佳選擇。

因此,不妨考慮一下 PLG 。

責任編輯:華軒 來源: 今日頭條
相關推薦

2023-10-16 07:39:02

ELKpod日志

2020-12-31 10:48:17

ELKEFKLinux

2020-12-22 09:17:49

日志Loki服務

2020-09-25 09:37:20

云計算IT技術

2022-06-13 11:33:59

RedoMySQL

2022-10-13 08:48:09

戰略CIO業務

2024-04-29 08:42:23

2025-03-26 02:00:00

2023-12-18 10:24:59

2023-12-13 16:28:02

2023-09-27 23:08:08

Web前端Vue.jsVue3.0

2013-01-28 17:33:42

2011-02-25 11:13:17

邊緣網絡千兆以太網網絡升級

2011-06-21 10:06:48

2023-09-13 08:56:51

2014-11-20 17:06:27

阿里巴巴DT

2019-08-15 10:56:10

WebServletSpring mvc

2020-05-18 14:55:34

監控系統架構技術

2017-11-20 16:17:50

智慧城市

2025-01-06 07:10:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲国产日韩欧美 | 区一区二区三在线观看 | 国产精品久久av | 国产免费一区 | 久久精品免费一区二区 | 久草视频2| 亚洲精品白浆高清久久久久久 | 在线亚洲精品 | 久久久久久毛片免费观看 | 成人在线视频免费观看 | 欧美成人免费在线 | 二区在线视频 | 国产精品久久久久久久久久免费 | 国产午夜精品久久久 | h视频在线免费 | 久久亚洲国产精品日日av夜夜 | 成人亚洲在线 | 欧美日产国产成人免费图片 | 久色视频在线观看 | 欧美色综合一区二区三区 | 丁香六月激情 | 国产亚洲一区二区三区在线观看 | 久久久久久九九九九九九 | 亚洲一区中文 | 亚洲第一福利网 | 一级毛片中国 | 97视频成人 | 欧美中文视频 | 免费看一区二区三区 | 91精品在线看| 午夜免费在线电影 | 午夜视频一区二区 | 久久久91精品国产一区二区三区 | 国产一区二区黑人欧美xxxx | 亚洲综合二区 | 婷婷五月色综合香五月 | 国产亚洲精品成人av久久ww | 日韩欧美国产综合 | 久久久99精品免费观看 | 9999国产精品欧美久久久久久 | 日本高清视频网站 |