zookeeper 3.8.4集群 使用prometheus、grafana显示实时监控信息

一、集群环境

root@zk-node01:~# /opt/zookeeper/bin/zkServer.sh version
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Apache ZooKeeper, version 3.8.4 2024-02-12 22:16 UTC
root@zk-node01:~# /opt/zookeeper/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

root@zk-node02:~# /opt/zookeeper/bin/zkServer.sh version
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Apache ZooKeeper, version 3.8.4 2024-02-12 22:16 UTC
root@zk-node02:~# /opt/zookeeper/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader

二、修改zoo.cfg配置

2.1修改所有节点的配置文件

在所有节点的zoo.cfg文件末尾添加以下内容

# 启用 Prometheus 指标导出
metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
# 暴露 JVM 指标
metricsProvider.exportJvmInfo=true
# 设置指标暴露端口(默认 7000)
metricsProvider.httpPort=7000

2.2重启所有节点

root@zk-node01:~# /opt/zookeeper/bin/zkServer.sh restart

/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

三、prometheus配置

3.1修改prometheus.yml文件

        修改prometheus.yml文件,添加如下内容

scrape_configs:
    - job_name: 'zookeeper'
      static_configs:
        - targets:
           - '10.0.49.215:7000'  # 节点1地址
           - '10.0.49.216:7000'  # 节点2地址
           - '10.0.49.217:7000'  # 节点3地址
      metrics_path: /metrics

验证:

root@zk-monitor:~/zk_monitor/prometheus# cat prometheus.yml
global:
 scrape_interval: 15s

scrape_configs:
    - job_name: 'zookeeper'
      static_configs:
        - targets:
           - '10.0.49.215:7000'  # 节点1地址
           - '10.0.49.216:7000'  # 节点2地址
           - '10.0.49.217:7000'  # 节点3地址
      metrics_path: /metrics

3.2重启prometheus

docker restart prometheus

 验证

四、grafana仪表盘配置

4.1添加数据源

登录 Grafana → Configuration → Data Sources
选择 ‌Prometheus‌,填写 Prometheus 服务地址(如 http://10.0.49.218:9090)

4.2导入官方仪表板

进入 Create → Import
输入仪表板 ID: ‌10465‌(ZooKeeper 官方模板)
选择刚添加的 Prometheus 数据源

 

4.3关键监控指标

仪表板将自动展示:

‌集群健康‌:Leader 状态、节点存活
‌请求统计‌:读写延迟、请求量
‌ZNode 追踪‌:节点数量、Watcher 计数
‌JVM 指标‌:堆内存、GC 时间(需开启 exportJvmInfo)

 

五、参考文档

ZooKeeper:因为协调分布式系统就像管理动物园 - ZooKeeper 协调服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值