008、zookeeper集群监控实战案例
本文最后更新于 66 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com

zookeeper集群监控实战案例

一.zookeeper监控工具概述

    我们可以使用zkWeb,taokeeper,Zabbix等工具来监控zookeeper服务。

    他们各有各自的优势,但我推荐还是基于JMX的方式来监控zookeeper集群,因为这种方式适合大多数开源的监控系统(包括但不限于zabbix,Open-Falcon,Prometheus等)。其实还有一个原因是JMX提供了白盒监控。

二.开启zookeeper的JMX功能

1.修改"zkServer.sh"脚本

[root@elk101.oldboyedu.com ~]# vim /oldboy/softwares/zookeeper/bin/zkServer.sh 
[root@elk101.oldboyedu.com ~]# 
[root@elk101.oldboyedu.com ~]# grep ZOOMAIN= /oldboy/softwares/zookeeper/bin/zkServer.sh 
    # ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=$JMXLOCALONLY org.apache.zookeeper.server.quorum.QuorumPeerMain"

    ZOOMAIN="-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=$JMXHOSTNAME -Dcom.sun.management.jmxremote.port=$JMXPORT -Dcom.sun.management.jmxremote.authenticate=$JMXAUTH -Dcom.sun.management.jmxremote.ssl=$JMXSSL -Dzookeeper.jmx.log4j.disable=$JMXLOG4J org.apache.zookeeper.server.quorum.QuorumPeerMain"      

    ...

温馨提示:
    在第53行修改哟~

2.修改"zkEnv.sh"脚本(该脚本是zkServer.sh启动时使用的环境变量脚本)

[root@elk101.oldboyedu.com ~]# vim /oldboy/softwares/zookeeper/bin/zkEnv.sh 
[root@elk101.oldboyedu.com ~]# 
[root@elk101.oldboyedu.com ~]# tail -6 /oldboy/softwares/zookeeper/bin/zkEnv.sh 
# Add by yinzhengjie for enable zookeeper JMX
JMXLOCALONLY=false
JMXHOSTNAME=10.0.0.106
JMXPORT=21811
JMXSSL=false
JMXLOG4J=false
[root@elk101.oldboyedu.com ~]# 

3.重启集群使得配置生效

[root@elk101.oldboyedu.com ~]# zkServer.sh restart
ZooKeeper JMX enabled by default
ZooKeeper remote JMX Port set to 21811
ZooKeeper remote JMX authenticate set to false
ZooKeeper remote JMX ssl set to false
ZooKeeper remote JMX log4j set to false
ZooKeeper remote JMX Hostname set to 172.200.1.101
Using config: /oldboy/softwares/zookeeper/bin/../conf/zoo.cfg
ZooKeeper JMX enabled by default
ZooKeeper remote JMX Port set to 21811
ZooKeeper remote JMX authenticate set to false
ZooKeeper remote JMX ssl set to false
ZooKeeper remote JMX log4j set to false
ZooKeeper remote JMX Hostname set to 172.200.1.101
Using config: /oldboy/softwares/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
ZooKeeper JMX enabled by default
ZooKeeper remote JMX Port set to 21811
ZooKeeper remote JMX authenticate set to false
ZooKeeper remote JMX ssl set to false
ZooKeeper remote JMX log4j set to false
ZooKeeper remote JMX Hostname set to 172.200.1.101
Using config: /oldboy/softwares/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@elk101.oldboyedu.com ~]# 
[root@elk101.oldboyedu.com ~]# zkServer.sh status
ZooKeeper JMX enabled by default
ZooKeeper remote JMX Port set to 21811
ZooKeeper remote JMX authenticate set to false
ZooKeeper remote JMX ssl set to false
ZooKeeper remote JMX log4j set to false
ZooKeeper remote JMX Hostname set to 172.200.1.101
Using config: /oldboy/softwares/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: 172.200.1.101. Client SSL: false.
Mode: observer
[root@elk101.oldboyedu.com ~]# 
[root@elk101.oldboyedu.com ~]# ss -ntl
State       Recv-Q Send-Q                                                 Local Address:Port                                                                Peer Address:Port              
LISTEN      0      100                                                        127.0.0.1:25                                                                             *:*                  
LISTEN      0      128                                                                *:22                                                                             *:*                  
LISTEN      0      100                                                            [::1]:25                                                                          [::]:*                  
LISTEN      0      50                                            [::ffff:172.200.1.101]:2181                                                                        [::]:*                  
LISTEN      0      50                                            [::ffff:172.200.1.101]:3888                                                                        [::]:*                  
LISTEN      0      50                                                              [::]:8080                                                                        [::]:*                  
LISTEN      0      50                                                              [::]:40880                                                                       [::]:*                  
LISTEN      0      50                                                              [::]:35154                                                                       [::]:*                  
LISTEN      0      50                                                              [::]:21811                                                                       [::]:*                  
LISTEN      0      128                                                             [::]:22                                                                          [::]:*                  
[root@elk101.oldboyedu.com ~]# 
[root@elk101.oldboyedu.com ~]# 

三.使用jconsole查看JMX数据

1.运行jconsole工具

命令行终端输入"jconsole"。

image-20210704182302692

2.选择不安全的连接

如下图所示,选择不安全的连接。

image-20210704182407849

3.查看监控数据。

    如下图所示,我们可以使用jconsole查看JMX数据。
谨此笔记,记录过往。凭君阅览,如能收益,莫大奢望。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇