如何使用 Pulsar Dashboard 監(jiān)控

作者:高天賜

編輯:Irene

Pulsar 自帶 Dashboard,可對(duì) broker、bookie、ZooKeeper 集群和 topic 等進(jìn)行監(jiān)控和統(tǒng)計(jì)。本文介紹如何在裸機(jī)中使用 Prometheus 和 Grafana 搭建 Pulsar 集群,監(jiān)控 Dashboard,實(shí)現(xiàn)對(duì) namespace、topic、broker、bookie、ZooKeeper 等指標(biāo)和組件的監(jiān)控和統(tǒng)計(jì)。

一、準(zhǔn)備資源

  1. 一臺(tái) Linux 裸機(jī)服務(wù)器,配置 4G,2 核。

  2. Prometheus 安裝包(版本號(hào) 2.7.1)。

  3. Grafana 安裝包(版本號(hào) 5.4.2)。

二、下載解壓 Prometheus、Grafana 安裝包

用如下命令下載、解壓 Prometheus 和 Grafana 安裝包。

Prometheus 安裝包下載

wget https://github.com/prometheus/prometheus/releases/download/v2.7.1/prometheus-2.7.1.linux-amd64.tar.gz

解壓安裝包

tar -zxvf prometheus-2.7.1.linux-amd64.tar.gz

Grafana 安裝包下載

wget https://dl.grafana.com/oss/release/grafana-5.4.2.linux-amd64.tar.gz

解壓安裝包

tar -zxvf grafana-5.4.2.linux-amd64.tar.gz

解壓后,我的文件路徑如下

/home/admin/monitor/prometheus-2.7.1.linux-amd64

/home/admin/monitor/grafana-5.4.2

三、配置 Prometheus 的 prometheus.yml 配置文件

  1. 修改集群名(cluster: pulsar-cluster)

  2. 配置 broker 節(jié)點(diǎn)、IP 和端口號(hào)

  3. 配置 bookie 節(jié)點(diǎn)、IP 和端口號(hào)

  4. 配置 ZooKeeper 節(jié)點(diǎn)、IP 和端口號(hào)

說(shuō)明

  1. 本文介紹的測(cè)試集群是 3 臺(tái) Linux 服務(wù)器。

  2. 每臺(tái)服務(wù)器上都部署一個(gè) broker 節(jié)點(diǎn)、一個(gè) bookie 節(jié)點(diǎn)、一個(gè) ZooKeeper 節(jié)點(diǎn)。

  3. 3 臺(tái)服務(wù)器的測(cè)試環(huán)境 IP 地址設(shè)定如下:
    10.0.100.60, 10.0.100.70, 10.0.100.80。

  4. 搭建 Pulsar 集群,參考在多臺(tái) Linux 服務(wù)器上搭建 Pulsar 集群。

  5. 集群名為 pulsar-cluster。

  6. 若在搭建 Pulsar 集群的過(guò)程中,沒(méi)有修改端口號(hào),則只需要參照如下配置文件修改集群名和機(jī)器 IP 地址即可。

  7. 本文中的 prometheus.yml 文件路徑為 /home/admin/monitor/prometheus.yml。

  8. 部署監(jiān)控的機(jī)器 IP 地址為 10.0.100.90。

prometheus.yml 文件示例

prometheus.yml 文件模版放在這里 (https://github.com/streamnative/apache-pulsar-grafana-dashboard/blob/master/prometheus/standalone.yml.template),可以下載根據(jù)情況進(jìn)行修改。以下是一個(gè) prometheus.yml 文件示例。

image
image

四、啟動(dòng) Prometheus

進(jìn)入 Prometheus 文件目錄

cd /home/admin/monitor/prometheus-2.7.1.linux-amd64/

用后臺(tái)進(jìn)程執(zhí)行啟動(dòng)命令

nohup ./prometheus --config.file "/home/admin/monitor/prometheus.yml" --web.enable-lifecycle --storage.tsdb.retention=10d >prometheus.log 2>&1 &

參數(shù)說(shuō)明

--config.file 指定 prometheus.yml 文件路徑

--web.enable-lifecycle 啟動(dòng)時(shí)熱加載配置文件使用

--storage.tsdb.retention 指定統(tǒng)計(jì)數(shù)據(jù)存儲(chǔ)時(shí)長(zhǎng),10d 代表10天

>prometheus.log 2>&1 & 存儲(chǔ)輸出的啟動(dòng)日志

五、訪問(wèn) Prometheus

  1. 部署監(jiān)控的機(jī)器 IP 地址為 10.0.100.90。

  2. 在瀏覽器中訪問(wèn) http://10.0.100.90:9090/graph。

  3. 能成功訪問(wèn)并運(yùn)行。

  4. Prometheus 做時(shí)序數(shù)據(jù)存儲(chǔ),以及提供強(qiáng)大的查詢功能,Dashboard 展示使用 Grafana 更漂亮專業(yè),搭建配置 Grafana。

Prometheus 運(yùn)行成功后,可以訪問(wèn) http://localhost:9090/targets。從這個(gè)地址可以查看 Prometheus 監(jiān)控的所有 Pulsar 組件。

六、啟動(dòng) Grafana

進(jìn)入 Grafana 文件目錄

cd /home/admin/monitor/grafana-5.4.2/

用后臺(tái)進(jìn)程執(zhí)行啟動(dòng)命令

nohup ./bin/grafana-server start >grafana.log 2>&1 &

七、訪問(wèn) Grafana

  1. 部署監(jiān)控的機(jī)器 IP 地址為 10.0.100.90。

  2. 用瀏覽器訪問(wèn) http://10.0.100.90:3000。

  3. 在 Grafana 首頁(yè),輸入默認(rèn)用戶名 admin,默認(rèn)密碼 admin。

八、配置 Grafana 數(shù)據(jù)源

1. 添加 Prometheus 數(shù)據(jù)源。

image

2. 選擇 Prometheus。

image

3. 配置 Prometheus 數(shù)據(jù)源。

image
image

九、導(dǎo)入監(jiān)控 Dashboard 模板

  1. 從 Github 下載 Dashboard 模板。

  2. 選擇上傳導(dǎo)入 Dashboard 模版(這里以 "Pulsar 集群總況.json" 模板為例)。

image
image
  1. 導(dǎo)入成功,可以查看 Dashboard 面板統(tǒng)計(jì)了
image

可以從 Streamnative Github 獲取其他模版,使用 Grafana 做報(bào)警通知功能。

如何在 Docker 中使用 Grafana Dashboard,請(qǐng)查看 Apache Pulsar Grafana Dashboard。(https://github.com/streamnative/apache-pulsar-grafana-dashboard/blob/master/gettingStarted.md

高天賜的 blog 系列

MacOS 單機(jī)搭建 Pulsar 集群

在多臺(tái) Linux 服務(wù)器上搭建 Pulsar 集群

更多關(guān)于 Apache Pulsar 的動(dòng)態(tài)和干貨分享,歡迎關(guān)注 StreamNative 公眾號(hào)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文章目的: 1、向沒(méi)聽(tīng)過(guò)或者剛聽(tīng)過(guò)但是還對(duì)這個(gè)監(jiān)控系統(tǒng)沒(méi)有任何概念的開(kāi)發(fā)者介紹Prometheus的應(yīng)用場(chǎng)景。2、...
    whaike閱讀 39,976評(píng)論 15 59
  • 前提 最近公司在聯(lián)合運(yùn)維做一套全方位監(jiān)控的系統(tǒng),應(yīng)用集群的技術(shù)棧是SpringCloud體系。雖然本人沒(méi)有參與具體...
    zhrowable閱讀 7,314評(píng)論 0 22
  • 我們都是時(shí)間的過(guò)客。 人生,空手而來(lái), 必然空手而歸。 屬于自己的風(fēng)景,從來(lái)不曾錯(cuò)過(guò); 不是自己的風(fēng)景,永遠(yuǎn)只是路...
    611be65c7faa閱讀 376評(píng)論 0 0
  • 生活也許沒(méi)有那么美好, 但是,每天總會(huì)有些小美好。
    暖書閱讀 422評(píng)論 0 0
  • 上周和Joel約定,我一周三天睡自己的房間,四天睡睡他的房間(其中包括1晚他和我睡)。昨天是我連續(xù)三天睡自己的房間...
    鐘凌小姐閱讀 140評(píng)論 0 0

友情鏈接更多精彩內(nèi)容