zkdoctor是一个ZooKeeper服务的统计、监控报警以及自动化运维平台:监控ZooKeeper集群运行状态,做到有问题及时发现、及时解决,掌握ZooKeeper整体运行情况。主要包括:
- 支持多种部署类型(standalone、replicated)以及3.4.0版本以后的ZooKeeper服务监控
- 完善的统计、监控功能,包含服务端各项运行指标信息
- 及时的报警功能,包含阈值报警以及状态变更报警
- 支持机器维度的统计、监控以及报警
- 全面的自动化运维功能,减少人工运维成本
- 必要的节点信息操作功能
数据节点的查询与操作,通过命令方式不够直观。zkdoctor提供了可视化树结构数据节点操作,更加便捷
现有的监控系统(Zabbix等),监控统计指标不够完善,且需单独部署agent采集信息,流程比较复杂。zkdoctor部署之后,通过四字命令直接采集服务端各项指标,同时支持客户端连接信息收集统计以及机器维度数据的收集统计。统计监控更加全面和完善。
服务的启停、配置的更新、扩容等运维操作,人工操作存在误操作以及存在一定的人工运维成本。zkdoctor支持自动化运维功能,一键完成相关的运维操作过程,大大降低了运维成本
服务某指标异常时,不能及时发现以及定位。zkdoctor提供了及时的阈值报警以及状态变化报警功能,能够更快的发现问题,且提供了详细的历史统计数据,供问题定位
- standalone 3.4.0+
- replicated 3.4.0+
默认spring boot配置内嵌tomcat,直接以可执行war包运行项目
剔除内嵌容器依赖,作为正常web项目使用外部容器部署
1)集群信息定时采集、展示、定时清除统计数据功能
每个集群信息采集任务分别独立,任务频率:1分钟。通过四字命令获取服务端数据,再进行解析存储
2)节点的增删改查功能
连接leader节点,完成相关节点操作
3)集群一键添加
集群添加成功后,将自动开启集群监控定时任务
1)服务的自动化部署功能
提供安装包下载路径,以及安装服务必须进行的配置信息,可以一键部署集群服务
2)动态扩容功能
提供新机器信息以及必须的配置信息,可以一键扩容
3)服务下线功能
停止集群中所有实例的服务
4)服务重启功能
逐台重启,完成整个集群的重启过程
5)实例的添加与移除功能
手动完成实例的添加与移除,维护集群结构
6)实例下线、重启功能
单台服务下线、重启
7)配置更改、新配置文件推送功能
主要用于配置的更新,myid配置文件推送等
8)服务升级
提供待升级的jar文件,可完成原jar文件备份、新jar文件推送,并重启服务的功能。适用于服务端二次开发升级的情况
1)集群运行状态监控、报警功能
2)实例运行状态监控、报警功能
2)机器运行状态监控、报警功能
1)机器信息定时采集、展示、定时清除统计数据功能
2)机器的新增、修改等功能
3)SSH功能
1)定时任务的删除、停止功能
1)登录支持两种模式:
Reister:用户注册登录,采用密文存储密码信息。用户注册后进行登录
LDAP:直接用户名密码登录即可
2)用户信息的增删改查功能
3)用户权限控制功能
主要包含3种角色:普通用户、管理员用户以及超级管理员用户。超级管理员拥有报警信息直接送达,无需配置的权限
目前有关zkdoctor的问题交流方式有如下几种,欢迎加入进行技术讨论:
1、报告issue:[issues] (https://github.com/ucarGroup/zkdoctor/issues)
2、qq交流群: 824123986