作者:高天賜
編輯:Irene
Pulsar 自帶 Dashboard,可對 broker、bookie、ZooKeeper 集群和 topic 等進行監控和統計。本文介紹如何在裸機中使用 Prometheus 和 Grafana 搭建 Pulsar 集群,監控 Dashboard,實現對 namespace、topic、broker、bookie、ZooKeeper 等指標和組件的監控和統計。
一、準備資源
一臺 Linux 裸機服務器,配置 4G,2 核。
Prometheus 安裝包(版本號 2.7.1)。
Grafana 安裝包(版本號 5.4.2)。
二、下載解壓 Prometheus、Grafana 安裝包
用如下命令下載、解壓 Prometheus 和 Grafana 安裝包。
Prometheus 安裝包下載
解壓安裝包
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 配置文件
修改集群名(cluster: pulsar-cluster)
配置 broker 節點、IP 和端口號
配置 bookie 節點、IP 和端口號
配置 ZooKeeper 節點、IP 和端口號
說明
本文介紹的測試集群是 3 臺 Linux 服務器。
每臺服務器上都部署一個 broker 節點、一個 bookie 節點、一個 ZooKeeper 節點。
3 臺服務器的測試環境 IP 地址設定如下:
10.0.100.60, 10.0.100.70, 10.0.100.80。搭建 Pulsar 集群,參考在多臺 Linux 服務器上搭建 Pulsar 集群。
集群名為 pulsar-cluster。
若在搭建 Pulsar 集群的過程中,沒有修改端口號,則只需要參照如下配置文件修改集群名和機器 IP 地址即可。
本文中的 prometheus.yml 文件路徑為 /home/admin/monitor/prometheus.yml。
部署監控的機器 IP 地址為 10.0.100.90。
prometheus.yml 文件示例
prometheus.yml 文件模版放在這里 (https://github.com/streamnative/apache-pulsar-grafana-dashboard/blob/master/prometheus/standalone.yml.template),可以下載根據情況進行修改。以下是一個 prometheus.yml 文件示例。
四、啟動 Prometheus
進入 Prometheus 文件目錄
cd /home/admin/monitor/prometheus-2.7.1.linux-amd64/
用后臺進程執行啟動命令
nohup ./prometheus --config.file "/home/admin/monitor/prometheus.yml" --web.enable-lifecycle --storage.tsdb.retention=10d >prometheus.log 2>&1 &
參數說明
--config.file 指定 prometheus.yml 文件路徑
--web.enable-lifecycle 啟動時熱加載配置文件使用
--storage.tsdb.retention 指定統計數據存儲時長,10d 代表10天
>prometheus.log 2>&1 & 存儲輸出的啟動日志
五、訪問 Prometheus
部署監控的機器 IP 地址為 10.0.100.90。
在瀏覽器中訪問 http://10.0.100.90:9090/graph。
能成功訪問并運行。
Prometheus 做時序數據存儲,以及提供強大的查詢功能,Dashboard 展示使用 Grafana 更漂亮專業,搭建配置 Grafana。
Prometheus 運行成功后,可以訪問 http://localhost:9090/targets。從這個地址可以查看 Prometheus 監控的所有 Pulsar 組件。
六、啟動 Grafana
進入 Grafana 文件目錄
cd /home/admin/monitor/grafana-5.4.2/
用后臺進程執行啟動命令
nohup ./bin/grafana-server start >grafana.log 2>&1 &
七、訪問 Grafana
部署監控的機器 IP 地址為 10.0.100.90。
用瀏覽器訪問 http://10.0.100.90:3000。
在 Grafana 首頁,輸入默認用戶名 admin,默認密碼 admin。
八、配置 Grafana 數據源
1. 添加 Prometheus 數據源。
2. 選擇 Prometheus。
3. 配置 Prometheus 數據源。
九、導入監控 Dashboard 模板
從 Github 下載 Dashboard 模板。
選擇上傳導入 Dashboard 模版(這里以 "Pulsar 集群總況.json" 模板為例)。
- 導入成功,可以查看 Dashboard 面板統計了
可以從 Streamnative Github 獲取其他模版,使用 Grafana 做報警通知功能。
如何在 Docker 中使用 Grafana Dashboard,請查看 Apache Pulsar Grafana Dashboard。(https://github.com/streamnative/apache-pulsar-grafana-dashboard/blob/master/gettingStarted.md)
高天賜的 blog 系列
更多關于 Apache Pulsar 的動態和干貨分享,歡迎關注 StreamNative 公眾號。