作者:高天赐
编辑: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 公众号。