作者:高天赐
编辑: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 安装包下载
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 配置文件
-
修改集群名(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" 模板为例)。
3. 导入成功,可以查看 Dashboard 面板统计了
可以从 Streamnative Github 获取其他模版,使用 Grafana 做报警通知功能。
如何在 Docker 中使用 Grafana Dashboard,请查看 Apache Pulsar Grafana Dashboard。(https://github.com/streamnative/apache-pulsar-grafana-dashboard/blob/master/gettingStarted.md)
高天赐的 blog 系列
MacOS 单机搭建 Pulsar 集群
在多台 Linux 服务器上搭建 Pulsar 集群