可觀測監控 Prometheus 版提供一鍵安裝配置自建Kafka類型的組件,並提供開箱即用的專屬監控大盤。
背景資訊
可觀測監控 Prometheus 版提供了自建Kafka的監控接入能力,支援Container Service(包含ACK、ASK、註冊叢集等)和ECS這兩個環境類型的Kafka監控,且提供基礎和進階兩個版本:
Kafka(基礎版):包括收集Broker數量、Topic分區、訊息組Lag等基礎指標,Kafka服務端無需您進行任何配置或重啟操作。接入Kafka(基礎版)組件的具體操作,請參見下文接入Kafka(基礎版)組件。
Kafka(進階版):除基礎版能力外,通過JMX Agent,可收集生產者、服務端、消費者及其內部各模組的重要指標,實現全鏈路、一體化的專家級Kafka監控,需要您手動進行JMX Agent注入和進程重啟操作。接入Kafka(進階版)組件的具體操作,請參見下文接入Kafka(進階版)組件。
功能入口一:整合中心
登入ARMS控制台。
在左側導覽列選擇 ,進入可觀測監控 Prometheus 版的執行個體列表頁面。
單擊目標Prometheus執行個體名稱,進入整合中心頁面。
功能入口二:接入中心
登入ARMS控制台。
在左側導覽列單擊接入中心,然後在組件應用地區單擊Kafka(基礎版)或者Kafka(進階版)卡片的添加,然後在彈出的頁面根據控制台指引完成組件接入。
接入Kafka(基礎版)組件
這裡以接入中心入口為例,介紹接入Kafka(基礎版)組件的操作,具體步驟如下。
步驟一:接入Kafka(基礎版)組件
登入ARMS控制台。
在左側導覽列單擊接入中心,然後在組件應用地區單擊Kafka(基礎版)卡片的添加,然後在彈出的頁面按照如下步驟完成接入。
在STEP1地區選取項目Kafka所部署的環境。
在STEP2地區選取項目Kafka所在的Prometheus執行個體。
在STEP3地區的配置頁簽配置相關參數,然後單擊確定。
參數
說明
Exporter名稱
當前Kafka監控唯一命名。
kafka地址
填寫Kafka Broker的串連地址。多個Broker地址之間使用半形逗號或分號來分隔。
Container Service內,則可以使用Kafka Broker的IP或Service地址。
ECS環境內,則可以使用Kafka Broker的IP或DNS地址。
metrics採集間隔(秒)
監控資料擷取時間間隔。
kafka版本
選擇Kafka服務端的版本號碼,目前最高支援v3.2.0版本。
開啟SASL
選擇Kafka服務端是否使用SASL。
SASL使用者名稱
如果開啟SASL,則需要填寫對應的使用者名稱。
SASL密碼
如果開啟SASL,則需要填寫對應的使用者密碼。
SASL方法
選擇SASL方法,目前支援plain、scram-sha512和scram-sha256。
開啟TLS
選擇Kafka服務端是否使用TLS。
忽略TLS安全校正
如果Kafka服務端開啟TLS,且是自我簽署憑證,則選擇忽略TLS安全校正。
步驟二:查看Kafka(基礎版)組件狀態
登入ARMS控制台。
在左側導覽列選擇 ,進入可觀測監控 Prometheus 版的執行個體列表頁面。
- 單擊目標Prometheus執行個體名稱,進入整合中心頁面。
單擊已安裝地區的Kafka(基礎版)卡片,在彈出的面板中查看大盤、指標等資訊。
Target:您可以在Targets頁簽查看整合預設Job發現的Targets列表。
指標:您可以在指標頁簽查看具體的指標資訊並對指標進行廢棄配置。具體操作,請參見配置廢棄指標。
大盤:您可以在大盤頁簽,單擊大盤縮圖,查看對應Grafana大盤。
Kafka基礎版監控大盤主要展示以下幾點,如下圖所示:
Kafka Broker數量。
每個Topic的分區數。
每個Topic的訊息入/出/堆積數量。
每個Topic的ISR(In-Sync Replicas)數量。
警示:您可以在警示頁簽,查看Kafka(基礎版)的Prometheus警示。如下圖所示,可以看到目前可觀測監控 Prometheus 版提供4個關鍵警示指標,您還可以根據業務需求新增警示規則。建立Prometheus警示規則的具體操作,請參見Prometheus警示規則。
服務發現配置:您可以在服務發現配置頁簽對預設基礎監控Job進行操作,例如編輯抓取時間間隔、關閉採集Job等。
Exporter:您可以在Exporter頁簽查看預設安裝的
node-exporter
以及對應的版本號碼資訊。
接入Kafka(進階版)組件
這裡以接入中心入口為例,介紹接入Kafka(進階版)組件的操作,具體步驟如下。
步驟一:接入Kafka(進階版)組件
登入ARMS控制台。
在左側導覽列單擊接入中心,然後在組件應用地區單擊Kafka(進階版)卡片的添加,然後在彈出的頁面按照如下步驟完成接入。
在STEP1地區選取項目Kafka所部署的環境。
在STEP2地區選取項目Kafka所在的Prometheus執行個體。
在STEP3地區的配置頁簽配置相關參數,然後單擊確定。
參數
說明
exporter名稱
當前Kafka監控唯一命名。
kafka執行個體名稱
Kafka執行個體名稱,通過該名稱可以將Kafka Producer、Broker和Consumer進行關聯,實現Topic全鏈路的大盤展示。
Pod/ECS標籤(服務發現)
部署JMX Agent時,為Pod/ECS配置的標籤和標籤值,可觀測監控 Prometheus 版通過此標籤進行服務發現(Service Discovery)。
Pod/ECS標籤值
JMX Agent監聽連接埠
部署JMX Agent時配置的監聽連接埠。
metrics採集路徑
可觀測監控 Prometheus 版採集JMX Agent的HTTP Path,預設是
/metrics
。metrics採集間隔(秒)
監控資料擷取時間間隔。
步驟二:查看Kafka(進階版)組件狀態
登入ARMS控制台。
在左側導覽列選擇 ,進入可觀測監控 Prometheus 版的執行個體列表頁面。
- 單擊目標Prometheus執行個體名稱,進入整合中心頁面。
單擊已安裝地區的Kafka(進階版)卡片,然後在彈出的面板中查看指標、大盤、警示等資訊。
Target:您可以在Targets頁簽查看整合預設Job發現的Targets列表。
指標:您可以在指標頁簽查看具體的指標資訊並對指標進行廢棄配置。具體操作,請參見配置廢棄指標。
大盤:您可以在大盤頁簽,單擊大盤縮圖,查看對應Grafana大盤。進階版監控提供了Intance和Topic兩個視角的大盤,具體詳情如下:
自建Kafka Instance大盤
展示Kafka Broker內部各項指標:
核心指標:展示Broker數量、OffLine分區數、Under Replicated分區數、Controller數量、CPU及網路等關鍵資訊。
JVM指標:展示JVM的記憶體和GC關鍵資訊。
分區指標:展示分區數量、ISR、Unclean Leader選舉、Replica Lag、Offline分區、Under Replicated分區等明細資訊。
時間指標:展示Produce、Request、Fetch等各個環境的時間指標。
叢集流量指標:展示叢集的總體流量指標。
Broker流量指標:展示Broker粒度的流量明細指標。
自建Kafka Topic大盤
展示各個Kafka Topic全鏈路指標:
Producer:展示Producer端的關鍵計量,包括訊息發送速度、訊息壓縮率、發送延遲等。
Server(即Kafka Broker):展示該Topic對應的分區數、入/出訊息速率、入/出訊息流程量。
Consumer:展示訊息消費速率、消費延遲和Rebalance等。
警示:您可以在警示頁簽,查看Kafka(進階版)的Prometheus警示。如下圖所示,可以看到目前可觀測監控 Prometheus 版提供Producer、Instance和Consumer相關的警示指標,具體如下。
自建Kafka Producer:提供了訊息發送失敗率、訊息發送耗時、訊息發送重試率等3個警示指標,方便使用者對Producer端的異常進行警示。
自建Kafka Instance:提供了分區數量過多、存在OffLine分區、存在UnClean Leader選舉、存在Under Replicated分區、有效Broker數量減少、有效Controller數量、執行個體訊息拒絕量、執行個體訊息流程入/出量、Topic訊息流程入/出量等13個警示指標,覆蓋了Kafka Broker各方面異常。
自建Kafka Consumer:提供了訊息消費堆積警示指標,通過該警示規則,您能夠及時掌握消費異常情況。
您還可以根據業務需求新增警示規則。建立Prometheus警示規則的具體操作,請參見Prometheus警示規則。
服務發現配置:您可以在服務發現配置頁簽對預設基礎監控Job進行操作,例如編輯抓取時間間隔、關閉採集Job等。
Exporter:您可以在Exporter頁簽查看預設安裝的
node-exporter
以及對應的版本號碼資訊。