zookeepr 配置中心管理平台

发布 : 2020-03-20 分类 : 开源项目 浏览 :

zookeeper manager 开源项目

zookeeper manager 项目介绍

在很多公司中都使用zookeeper做为分布式应用的配置中心,那么在公司中不同环境之间的zookeeper配置的同步,创建,更新等等都要通过命令行去操作,但很多情况下对于不熟悉或者没有权限的人员都不方便操作或查看,因此根据自己的需求开发一个管理界面,方便同事及自己使用。

点我跳转到项目地址,欢迎start。

安装

项目是基于python3.7.2开发,请使用python3.7以上版本安装,其它版本未测试。

1
2
3
# git clone http://img.geeklive.cn/wgy-home/zookeeper-manager.git
# cd zookeeper-manager
# pip3 install -r requirements.txt

配置修改

1
2
3
4
5
6
7
8
9
10
11
12
13
[global]
# 自行修改
secret_key = '\x8d\xb4\x17Z\xf4\x98\xa7\xa2\xf9\xd1\xd9\xd3\xfa}\xdd\xa5\xc0\xdd\xebC\xcc\x07\xe2\xbb'
# 日志及数据临时目录
data_path = /Users/wgy/scripts/zookeeper-manager/data
log_path = /Users/wgy/scripts/zookeeper-manager/logs
# 日志级别
log_level = INFO

[zookeeper]
# zookeeper不同环境的地址,格式为: environmentName_host = ip:port,例子如下:
dev_host = 127.0.0.1:2182 # 此行意思为 dev环境的zookeeper地址为 127.0.0.1:2182
hotfix_host = 127.0.0.1:2181

启动

1
2
# export FLASK_APP=manage.py 
# flask run --host='0.0.0.0' -p '5000'

访问测试

index

功能介绍

1. 先有鸡还是先有蛋

因为此平台没有做认证功能,所以所有的功能都需要先登陆到某个路径下,才能创建或其它操作,所以产生了一个先有鸡还是先有蛋的问题。

需要先在zookeeper上创建一个节点

1.1 首先生成一个密码

若密码设置为geeklive.cn,需要使用python hashlib 模块,将密码hash,使用hash 后的密码创建zookeeper 配置路径

1
2
3
4
5
6
# python -c "import hashlib;print hashlib.sha1('geeklive.cn').hexdigest();" 
e282155846aa5c5973b92ef41859be186c72935b
// 创建节点
# echo "create /geeklive.cn e282155846aa5c5973b92ef41859be186c72935b" |bin/zkCli.sh -server 127.0.0.1:2181
// 创建版本
# echo "create /geeklive.cn/v1.0 e282155846aa5c5973b92ef41859be186c72935b" |bin/zkCli.sh -server 127.0.0.1:2181

1.2 登陆此节点

use-node

  • 只读模式

登陆后页面,因为我们在链接节点时没有输入密码,所以会自动进入只读模式,注意只读模式时不能做任何操作,只能查看,以下图片中因为创建组和数据,所以是空白的,在后边会创建。
only-read

这里需要注意下,为了安全考虑,在只读模式下,对于key中包含”[‘key’,’password’,’pass’]”此字段的value做了处理,只读用户无法看到这些key后面的value,如下图所示:

only-safe

  • 管理模式

只要在选择节点时输入正确的密码则可以进入管理模式
admin-mode

2. 添加功能

2.1 添加组

add-group

2.2 添加属性键值对

add-attribute

2.3 添加新节点

add-node

2.4 添加版本

add-version

3. 同步功能

此功能在有多个环境的时候很好用,可以跨zookeeper集群同步数据
sync-env

写在最后

自己写的第一个项目,ui比较丑,功能也不多,需求都是根据自己需要的写的,可能考虑不周,如果您觉得此项目还不错或者有功能不满足可以提需求哦。

本文作者 : WGY
原文链接 : http://geeklive.cn/2020/03/20/zookeeper-manager/undefined/zookeeper-manager/
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
留下足迹