ZK UI监控ZooKeeper集群服务的可视化界面
Author:xusy
Zookeeper 节点的可视化界面有很多种,在这里我才用的是zkui,比较直观,而且可以导入文件。
对应的GIT下载地址: (官网)
使用:
1、从gitlub上clone代码到idea,maven clean install 成jar,运行 zkui-2.0-SNAPSHOT-jar-with-dependencies.jar
2、编辑文件config.cfg
#Server Port
serverPort=9090#Comma seperated list of all the zookeeper servers#zkServer=localhost:2181,localhost:2181#zkServer=192.168.56.100:2181,192.168.56.101:2181,192.168.56.102:2181zkServer=10.28.37.57:10075,10.28.37.76:10075,10.28.37.77:10075#Http path of the repository. Ignore if you dont intent to upload files from repository.scmRepo=http://myserver.com/@rev1=#Path appended to the repo url. Ignore if you dont intent to upload files from repository.scmRepoPath=//appconfig.txt#if set to true then userSet is used for authentication, else ldap authentication is used.ldapAuth=falseldapDomain=mycompany,mydomain#ldap authentication url. Ignore if using file based authentication.ldapUrl=ldap://<ldap_host>:<ldap_port>/dc=mycom,dc=com#Specific roles for ldap authenticated users. Ignore if using file based authentication.ldapRoleSet={"users": [{ "username":"domain\\user1" , "role": "ADMIN" }]}userSet = {"users": [{ "username":"admin" , "password":"manager","role": "ADMIN" },{ "username":"appconfig" , "password":"appconfig","role": "USER" }]}#Set to prod in production and dev in local. Setting to dev will clear history each time.env=prodjdbcClass=org.h2.DriverjdbcUrl=jdbc:h2:zkuijdbcUser=rootjdbcPwd=manager#If you want to use mysql db to store history then comment the h2 db section.#jdbcClass=com.mysql.jdbc.Driver#jdbcUrl=jdbc:mysql://localhost:3306/zkui#jdbcUser=root#jdbcPwd=managerloginMessage=Please login using admin/manager or appconfig/appconfig.#session timeout 5 mins/300 secs.sessionTimeout=300#Default 5 seconds to keep short lived zk sessions. If you have large data then the read will take more than 30 seconds so increase this accordingly. #A bigger zkSessionTimeout means the connection will be held longer and resource consumption will be high.zkSessionTimeout=20#Block PWD exposure over rest call.blockPwdOverRest=false#ignore rest of the props below if https=false.https=falsekeystoreFile=/home/user/keystore.jkskeystorePwd=passwordkeystoreManagerPwd=password# The default ACL to use for all creation of nodes. If left blank, then all nodes will be universally accessible# Permissions are based on single character flags: c (Create), r (read), w (write), d (delete), a (admin), * (all)# For example defaultAcl={"acls": [{"scheme":"ip", "id":"192.168.1.192", "perms":"*"}, {"scheme":"ip", id":"192.168.1.0/24", "perms":"r"}]defaultAcl=# Set X-Forwarded-For to true if zkui is behind a proxyX-Forwarded-For=false
本地环境:
Linux 部署服务包:
启动服务命令:
nohup java -jar zkui-2.0-SNAPSHOT-jar-with-dependencies.jar ./config.cfg >nohup.out &
Web端访问:http://10.28.37.57:9090
监控对应服务的运行状态: