在安装完成zookeeper之后,可以通过命令来实现对节点的增删改查操作。
但是命令行在使用的过程中不是很方便。就拿我们现在的项目来举例子,我们用zookeeper来做配置中心,微服务的配置文件非常的多,如果通过命令行来进行增删改查的操作的话,不仅工作量大,而且出错的概率也比较大。
出于上面的原因,我这边选择了zkui这个zookeeper的可视化web客户端作为zookeeper的管理工具。
一、ZKUI简介
zkui是github上的一个开源的项目,主要是帮助我们替代命令行来实现对zookeeper的日常操作。它不仅可以实现基本的增删改查工作,还有导入、导出、查找、查看历史记录等功能。
二、ZKUI的安装
1、安装jdk
我这边是安装在之前的zookeeper的node1节点上的,已经有了java环境。如果是安装在其他的服务器上,记得安装jdk哈。
2、打包zkui
zkui的github地址为https://github.com/DeemOpen/zkui
我们需要把项目克隆下来并进行打包。
打完包之后,把jar包上传到服务器上的/data/zkui/下,并把config.cfg这个配置文件也上传到这个目录下。
3、建表
默认的配置文件使用的是h2数据库(一个嵌入式数据库),我这边就改成使用mysql数据库了,所以需要在mysql中创建一个库(叫什么库可以自己定义,我这边叫zkui),然后创建一张histories表,用来保存历史记录。建表语句:
create table histories (
id bigint not null auto_increment primary key,
change_user varchar(100),
change_date datetime,
change_summary varchar(500),
change_ip varchar(500)
);
4、修改配置文件
改好的配置文件如下:
注:因为session的默认失效时间是5分钟,在实际的使用过程中总是要重新登录,所以这里就把session的失效时间加长了。
5、运行ZKUI
一切准备就绪,到了运行zkui的时候了。运行很简单,直接用java -jar
命令运行就可以了。
[root@node1 zkui]# nohup java -jar zkui-2.0-SNAPSHOT-jar-with-dependencies.jar >> /dev/null &
三、ZKUI的简单使用
用浏览器访问http://192.168.0.141:9090/login,用户名密码是上面配置文件中配置的admin/manager。
1、创建节点
点击Add Node
,填入节点名称并点击Save Node
保存。
2、创建属性并赋值
点击Add Property
,填入属性名和属性的值,并点击Save Node
保存。
3、修改属性的值
比如我这边把Anthony
的值改为15
4、删除
删除属性
删除节点
5、导入文件
因为我们是用zookeeper来做配置中心,每个模块的配置文件都有好几十行,多的上百行,如果让我一个个去建的话,那真的是要崩溃了!有了zkui这个导入功能,我只需要告诉开发人员文件的格式,让他们填写好之后发给我,我直接导入就好了,哈哈。
这边我就截取一段无关紧要的配置,然后进行导入。
要导入的配置文件内容如下:
/config_dev/server1/server=port=9009
/config_dev/server1/spring/boot/admin/client=url=http://10.86.216.180:8081/
/config_dev/server1/spring/boot/admin/client/instance=prefer-ip=true
/config_dev/server1/spring/sleuth/web/client=enabled=true
/config_dev/server1/spring/sleuth/sampler=probability=1.0
/config_dev/server1/spring/zipkin=base-url=http://10.86.216.180:9411/
/config_dev/server1/spring/datasource=name=manual_work
/config_dev/server1/spring/datasource=type=com.alibaba.druid.pool.DruidDataSource
/config_dev/server1/spring/datasource/druid=filters=stat
开始导入
可以看到,配置都已经导入到zookeeper中,省事省力又省心,哈哈。
6、导出文件
导出文件就是和导入反过来呗,我能想到的就是在zookeeper服务器的迁移或者我们自己做备份的时候用到。
开始导出
导出实际上是跳转到了一个一面中,我们可以直接把配置复制出来或者右键页面保存成txt文件。
7、查找
比如我查找一个关键字为spring
8、历史记录
之前我们在mysql中创建了一个histories表,这个表就是用来保存历史记录的。点击History
可以看到属性的历史值。