编者注
对于使用zookeeper作为微服务的管理者也好,还是使用zookeeper作为配置管理也好,总归需要简单易用的可视化监控组建,如下内容就是调研。
调研
Node_Zookeeper_Admin
基于Nodejs开发的zookeeper管理端,但是在2014-05月进行的最后一次更新,放弃zkdash
最近的一次更新在2016年02月,掌阅科技开发exhibitor
编者访问期间最新更新日期为3天前,说明一直在进行更新,则可以作为当前的第一选择方案。由于是国外的项目,目测没有中文Zipkin
通过介绍可以得知,该软件是Twitter的开源项目,该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈。
Zipkin 使用 Apache Cassandra 做为数据存储系统,使用 Apache ZooKeeper
编者通过详细查看发现:该软件更多的是帮助分析系统当中存在的瓶颈。并不是起到对ZooKeeper的健康监控的作用。作为未来,可以作为整个系统的瓶颈分析工具。
Minos
Minos 是小米公司开发的一个分布式的发布和监控系统。最初是小米开发的用来在 Hadoop 和 ZooKeeper 集群上发布和管理的工具。Minos 可轻松扩展来支持其他的系统,目前已经支持包括 HDFS、YARN 和 Impala 。
编者:暂时未进行深入探索
TaoKeeper
阿里巴巴的又一个开源项目,最新更新时间是2016-11月。
TaoKeeper 详细介绍 TaoKeeper是一个围绕ZooKeeper做的监控与报表系统。主要功能如下: 能够统计ZK集群连接数,Watcher数目 ,节点数等系列信息,并按一定规则进行一些聚合操作;
能够通过设置一些阈值来达到监控报警的效果; 能够按天按周进行ZK运行状 况的报表展现; 其中ZK实时运行状态的统计和机器存活性的检查功能能够帮助ZK的运维人员进行排错,及时发现系统隐患,确保故障的及时恢复。开源效果: 目前,是alibaba-github上所有Java开源项目第5位,截止到2012年6月,至少有4个非阿里系的知名公司在使用taokeeper,其中包括 腾讯,搜狐,1号店,陌陌,以及其他10余个中小型公司,同时有不少在校大学生研究学习。
测试
由于涉及到测试git上的代码,在centos7 core是没有git的,需要下载安装
yum install git
zkdash运行
下载zkdash
git clone https://github.com/ireaderlab/zkdash.git
依赖关系
由于centos7 core下无法直接安装python-pip,必须安装epel扩展源
yum install -y epel-release
安装完毕后,安装python-pip
yum install -y python-pip
正式安装zkdash的python依赖
[root@localhost zkdash]# pip install -r requirements.txt
数据库
编者注:由于zkdash文档当中未说明数据库,但是根据配置文件的端口号,可以得知为mysql。
修改数据库连接参数
修改/conf/conf.yml
# databaseDATABASE: db: 'zkdash' host: '192.168.1.200' port: 3306 user: 'zkdash' passwd: '***'
初始化数据库
在zkdash目录下执行
[root@localhost zkdash]# python ./bin/syncdb.py created table: zd_qconf_agentcreated table: zd_qconf_feedbackcreated table: zd_snapshotcreated table: zd_snapshot_treecreated table: zd_znodecreated table: zd_zookeeper[root@localhost zkdash]# pwd/root/build/zkdash
运行
python init.py -port=8888
关闭防火墙
systemctl stop firewalld.service
exhibitor
TODO