ZK可视化Web工具(zkui)安装与搭建(zookeeper)

                                      

JDK安装略;

(1)Maven安装

下载:https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/

wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

mkdir -p ~/maven

tar -zxvf apache-maven-3.5.4-bin.tar.gz -C ~/maven/

vi ~/.bash_profile

export MAVEN_HOME=/home/hadoop/maven/apache-maven-3.5.4

export PATH=$PATH:$MAVEN_HOME/bin

source  ~/.bash_profile

[hadoop@centoshadoop4 apache-maven-3.5.4]$ mvn -v
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /home/hadoop/maven/apache-maven-3.5.4
Java version: 1.8.0_192, vendor: Oracle Corporation, runtime: /home/hadoop/java/jdk1.8.0_192/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-327.el7.x86_64", arch: "amd64", family: "unix"

(2) yum  -y  install git

(3)clone可视化web项目,并创建目录zkdata

mkdir -p ~/zkdata

[hadoop@centoshadoop4 zkdata]$ git clone https://github.com/DeemOpen/zkui.git
正克隆到 'zkui'...
remote: Enumerating objects: 548, done.
remote: Total 548 (delta 0), reused 0 (delta 0), pack-reused 548
接收对象中: 100% (548/548), 484.15 KiB | 148.00 KiB/s, done.
处理 delta 中: 100% (226/226), done.

[hadoop@centoshadoop4 zkdata]$ ll
总用量 4
drwxrwxr-x. 6 hadoop hadoop 4096 5月  26 08:35 zkui
[hadoop@centoshadoop4 zkdata]$ cd zkui
[hadoop@centoshadoop4 zkui]$ ll
总用量 52
-rw-rw-r--. 1 hadoop hadoop  2357 5月  26 08:35 config.cfg
drwxrwxr-x. 2 hadoop hadoop    58 5月  26 08:35 docker
drwxrwxr-x. 2 hadoop hadoop  4096 5月  26 08:35 images
-rw-rw-r--. 1 hadoop hadoop 11358 5月  26 08:35 LICENSE-2.0.txt
-rw-rw-r--. 1 hadoop hadoop   416 5月  26 08:35 Makefile
-rw-rw-r--. 1 hadoop hadoop  1746 5月  26 08:35 nbactions.xml
-rw-rw-r--. 1 hadoop hadoop  5374 5月  26 08:35 pom.xml
-rw-rw-r--. 1 hadoop hadoop  6216 5月  26 08:35 README.md
-rw-rw-r--. 1 hadoop hadoop    43 5月  26 08:35 run.sh
drwxrwxr-x. 4 hadoop hadoop    28 5月  26 08:35 src
-rwxrwxr-x. 1 hadoop hadoop  1251 5月  26 08:35 zkui.sh
 

(4)编译zkui,生成jar包,zkui源码需要Maven编译

[hadoop@centoshadoop4 zkui]$ mvn clean install

.............编译过程省...........................................

[INFO] Installing /home/hadoop/zkdata/zkui/target/zkui-2.0-SNAPSHOT.jar to /home/hadoop/.m2/repository/com/deem/zkui/2.0-SNAPSHOT/zkui-2.0-SNAPSHOT.jar
[INFO] Installing /home/hadoop/zkdata/zkui/pom.xml to /home/hadoop/.m2/repository/com/deem/zkui/2.0-SNAPSHOT/zkui-2.0-SNAPSHOT.pom
[INFO] Installing /home/hadoop/zkdata/zkui/target/zkui-2.0-SNAPSHOT-jar-with-dependencies.jar to /home/hadoop/.m2/repository/com/deem/zkui/2.0-SNAPSHOT/zkui-2.0-SNAPSHOT-jar-with-dependencies.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 08:07 min
[INFO] Finished at: 2020-05-26T08:58:18+08:00
[INFO] ------------------------------------------------------------------------


编译成功,此时生成两个jar包,zkui-2.0-SNAPSHOT.jar和zkui-2.0-SNAPSHOT-jar-with-dependencies.jar,使用的是第二个jar包

(5)修改配置文件,并运行zkui

运行生成的jar包,可以直接运行,在运行该文件之前,我们还需要修改zkui的配置文件config.cfg,config.cfg 文件中配置了zkui需要连接的zookeeper集群的IP地址和端口,访问UI的用户名和密码,以及zkui监听的端口号

#Server Port
serverPort=9900
#Comma seperated list of all the zookeeper servers
zkServer=centoshadoop1:2181,centoshadoop2:2181,centoshadoop3:2181
#Http path of the repository. Ignore if you dont intent to upload files from repository.
scmRepo=centoshadoop1:2181,centoshadoop2:2181,centoshadoop3:2181
#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=false
ldapDomain=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=prod
jdbcClass=org.h2.Driver
jdbcUrl=jdbc:h2:zkui
jdbcUser=root
jdbcPwd=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=manager
loginMessage=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=5
#Block PWD exposure over rest call.
blockPwdOverRest=false
#ignore rest of the props below if https=false.
https=false
keystoreFile=/home/user/keystore.jks
keystorePwd=password
keystoreManagerPwd=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 proxy
X-Forwarded-For=false
 

(6)关于配置文件的说明:

(1)scmRepo=192.168.31.43:2181,192.168.31.44:2181,192.168.31.45:2181  注意如果是zk集群,此处需填写集群各个成员服务器(即Zookeeper节点)的IP地址加端口号2181,我这里的zookeeper 模式是standalone,因此只填写本机IP地址即可。
若报KeeperErrorCode = ConnectionLoss for / 错误,增大zkSessionTimeout超时时间,设置zkSessionTimeout=20

(2)默认用户信息

   用户名:Admin(Admin权限,支持CRUD操作)
   密码:manager
   用户名:appconfig(Readonly权限,支持读取操作)
   密码:appconfig

(7) 启动zkui

cd /home/hadoop/zkdata/zkui

[hadoop@centoshadoop4 zkui]$ ./zkui.sh
Usage: ./zkui.sh {start|stop|restart}
[hadoop@centoshadoop4 zkui]$ ./zkui.sh start
Starting zkui ... /home/hadoop/zkdata/zkui
STARTED

[hadoop@centoshadoop4 zkui]$ netstat  -tunpl |grep  :9900
tcp6       0      0 :::9900                 :::*                    LISTEN      38730/java          
 

(8) 浏览器访问 http://centoshadoop4:9900/login 账号admin 密码manager

(9)登录zkui ,选择导航“Host” 出现错误提示:KeeperErrorCode = NoNode for /appconfig/hosts  如下所示:

查看日志信息:

[hadoop@centoshadoop4 zkui]$ tail -f zkui-out.log  

解决方案:登录zk客户端执行如下命令

[zk: localhost:2181(CONNECTED) 0] ls /
[cluster, brokers, zookeeper, admin, isr_change_notification, log_dir_event_notification, home, zk-server-provider, controller_epoch, spark, rmstore, consumers, latest_producer_id_block, config, hbase]
[zk: localhost:2181(CONNECTED) 1] create /appconfig "my appconfig"
Created /appconfig
[zk: localhost:2181(CONNECTED) 2] create /appconfig/hosts 192.168.227.143
Created /appconfig/hosts
[zk: localhost:2181(CONNECTED) 3] ls /
[cluster, brokers, zookeeper, appconfig, admin, isr_change_notification, log_dir_event_notification, home, zk-server-provider, controller_epoch, spark, rmstore, consumers, latest_producer_id_block, config, hbase]
刷新即可

 

体验一下通过zkui 来管理zookeeper集群,查看集群状态,各个节点的机器状况

欢迎关注                  

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值