分布式协调服务Zookeeper集群监控JMX和ZkWeb应用对比
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
JMX是用来远程监控Java应用的框架,这个也可以用来监控其他的Java应用。JMX使用起来也很简单。当然还有一款比较优秀的监控工具就是ZkWeb,本片博客都会简单介绍部署方式。
JMX官方地址:http://zookeeper.apache.org/doc/r3.4.14/zookeeperJMX.html。
ZkWeb的github地址:https://github.com/zhitom/zkweb
分布式协调服务Zookeeper集群搭建:https://www.cnblogs.com/yinzhengjie/p/10747747.html。
一.zookeeper服务开启JMX监控(不推荐使用该方式)
1>.修改zookeeper的启动脚本
.......... #ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=$JMXLOCALONLY org.apache.zookeeper.server.quorum.QuorumPeerMain" #将ZOOMAIN的默认配置注释掉! ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false #是否建立远程连接,false可远程建立连接 -Djava.rmi.server.hostname=127.0.0.1 #zookeeper地址 -Dcom.sun.management.jmxremote.port=8888 #JMX连接端口,并不是zookeeper端口,也不能和zookeeper端口冲突 -Dcom.sun.management.jmxremote.ssl=true # 是否ssl连接,如果JMX无法ssl连接上zookeeper,需要改为false -Dcom.sun.management.jmxremote.authenticate=true # 是否开启访问权限,如果设置为true的话,需要指定access和password存放路径,就在下面两行(如果不配置安全认真删除当前行和下面2行即可!) -Dcom.sun.management.jmxremote.access.file=/yinzhengjie/softwares/zookeeper-3.4.14/conf/jmxremote.access # 设置访问权限,需要指定对应的路径,下面哪个文件是指定具体的用户名和密码 -Dcom.sun.management.jmxremote.password.file=/yinzhengjie/softwares/zookeeper-3.4.14/conf/jmxremote.password -Dzookeeper.jmx.log4j.disable=true # 是否开日志 org.apache.zookeeper.server.quorum.QuorumPeerMain" ..........
2>.在“Dcom.sun.management.jmxremote.access.file”和“Dcom.sun.management.jmxremote.password.file”对应的目录下创建相应的文件,结合上面咱们写的文件名称
[root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/zookeeper-3.4.14/conf/jmxremote.access monitorRole readonly controlRole readwrite create javax.management.monitor.*,javax.management.timer.* unregister [root@node101.yinzhengjie.org.cn ~]#