在公司内部,有不少应用已经强依赖zookeeper,zookeeper的工作状态直接影响它们的正常工作。目前开源世界中暂没有一个比较成熟的zookeeper-monitor, 于是开始zookeeper监控这块工作。
目前zookeeper-monitor能做哪些事情,讲到这个,首先来看看哪些因素对zookeeper正常工作比较大的影响:
- 用于zookeeper写日志的目录要有足够大小,并且强烈建议在单独的磁盘(挂载点)上,这是影响ZK性能最大因素之一。
- 连接数。
- 注册的Watcher数。
- ZNode是否可读,可写。
- ZK事件通知的延时是否过大。
围绕以上几点展开,完成了taokeeper一期的开发,目前主要完成以下方面的监控:(项目地址:https://github.com/taobao/taokeeper)
l CPU/MEM/LOAD的监控
l ZK日志目录所在磁盘剩余空间监控
l 单机连接数的峰值报警
l 单机 Watcher数的峰值报警
l 节点自检:是指对集群中每个IP所在ZK节点上的PATH: /YINSHI.MONITOR.ALIVE.CHECK 定期进行三次如下流程 : 节点连接 – 数据发布 – 修改通知 – 获取数据 – 数据对比, 在指定的延时内,三次流程均成功视为该节点处于正常状态。
ZooKeeper监控报警设置
ZooKeeper集群状态趋势图
如何安装部署
首先,对之前使用 maven-war-plugin 来进行配置管理的方式,表示遗憾。不少开发人员反馈部署比较困难,另外还有一些对maven不熟悉的开发人员也是这样认为。现在有了改进,将配置与程序分离开来。对此给大家带来的不便,深表歉意。
一、直接部署
1. 下载taokeeper.sql,初始化数据库(Mysql).(51CTO用户名:myopensource,密码:myopensource)
2. 下载taokeeper-monitor.tar.gz文件,解压到tomcat的webapps目前下,确保最后目录结构如下: %TOMCAT_HOME%\webapps\taokeeper-monitor\WEB-INF
3. 下载 taokeeper-monitor-config.properties 文件,存放到一个指定目录,比如
/home/xiaoming/taokeeper-monitor/config/taokeeper-monitor-config.properties, 其中内容如下,根据需要自己修改下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
systemInfo.envName=TEST #DBCP dbcp.driverClassName=com.mysql.jdbc.Driver dbcp.dbJDBCUrl=jdbc:mysql://1.1.1.1:3306/taokeeper dbcp.characterEncoding=GBK dbcp.username=xiaoming dbcp.password=123456 dbcp.maxActive=30 dbcp.maxIdle=10 dbcp.maxWait=10000 #SystemConstant SystemConstent.dataStoreBasePath=/home/xiaoming/taokeeper-monitor/ZookeeperStore #SSH account of zk server SystemConstant.userNameOfSSH=xiaoming SystemConstant.passwordOfSSH=123456 |
4. 在tomcat启动脚本中添加JAVA_OPTS:
windows上:set JAVA_OPTS=-DconfigFilePath=”D:\server\tomcat\webapps\taokeeper-monitor-config.properties”
linux上:JAVA_OPTS=-DconfigFilePath=”/home/xiaoming/taokeeper-monitor/config/taokeeper-monitor-config.properties”
5. 启动tomcat服务器
6. 正常启动后,访问:http://127.0.0.1:8080/taokeeper-monitor
二、从源代码开始
1. Check out 源代码:git@github.com:alibaba/taokeeper.git
2. 修改代码…
3. 实现 com.taobao.taokeeper.reporter.alarm.MessageSender 接口,用于发送报警信息。(可选)
4. 到taokeeper根目录下执行 package.cmd 命令,打成一个war包,之后进行部署
如何使用
1. taokeeper-monitor启动后,还没有配置任何zookeeper集群,点击“加入监控”进行集群添加。
http://www.chepoo.com/zookeeper-monitor.html
相关推荐
目前市面上功能最强,性能最好,数据最全的一款Zookeeper监控软件工具,该工具运行在.Net Framework4及上版本的Windows环境下。绿色软件,不需要安装,直接运行。
- 监控中心:Zookeeper可以监控Provider的状态变化,例如心跳检测,当Provider下线时,Zookeeper能够感知到。 2. **监控服务上下线机制**: - 定期检查:设计一个后台监控进程,周期性地向Zookeeper查询Provider...
标签"zookeeper监控管理"和"exhibitor-1.6"强调了Exhibitor的主要功能和适用范围,它不仅能够监控Zookeeper的状态,包括节点状态、会话、配置变更等,还可以进行操作,例如添加、删除Zookeeper节点,更新配置,以及...
于是开始zookeeper监控这块工作。 目前zookeeper-monitor能做哪些事情,讲到这个,首先来看看哪些因素对zookeeper正常工作比较大的影响: 用于zookeeper写日志的目录要有足够大小,并且强烈建议在单独的磁盘(挂载...
Exhibitor 是 ZooKeeper 实例监控,备份,恢复,清理和可视化工具, 是 ZooKeeper 的监控管理系统。 标签:Exhibitor
在高可用Redis集群中,Zookeeper作为一个中心化的仲裁者,负责监控Redis节点的状态,确保数据的一致性和完整性。当Redis主节点发生故障时,Zookeeper能够快速检测到并触发故障转移,将从节点提升为主节点,从而避免...
1. **Zookeeper监控工具**:使用`zkMonitor`或`zkui`等第三方工具,可以实时监控Zookeeper集群的状态,包括节点变化、会话状态、网络延迟等。 2. **Zookeeper日志**:分析`logs`目录下的日志文件,了解服务运行情况...
例如,通过ZooKeeper监控服务提供者的健康状态,当某台服务器出现问题时,可以自动将请求转发到其他正常运行的服务节点。 4. **锁服务**: ZooKeeper还提供了分布式锁的实现,这对于在分布式环境下保证数据的一致性...
4. **HBase**:HBase使用Zookeeper监控RegionServer的状态,处理Region迁移和主Master的选举。 **五、Zookeeper的扩展性与可靠性** Zookeeper采用Paxos算法的简化版本Zab协议,确保在节点间的通信中达成一致。当...
3. **服务状态监控**:Dubbo可以通过Zookeeper监控服务的健康状态,如服务是否在线、是否有新的服务加入或退出等。 4. **配置中心**:除了服务治理,Zookeeper还可以作为动态配置中心,服务提供者和消费者可以从...
**Zookeeper监控工具——ZooInspector详解** Zookeeper作为一个分布式协调服务,被广泛应用于大数据、云计算等领域的集群管理。为了确保Zookeeper的稳定运行和高效管理,开发人员和运维人员通常需要借助各种监控...
五、ZooKeeper监控与故障恢复 ZooKeeper提供了监控接口,允许用户监控服务器状态、连接状态等。当节点出现故障时,可以通过监控信息快速定位问题并进行恢复。 六、ZooKeeper的应用场景 1. 分布式锁:利用临时节点...
在本文中,我们将深入探讨Zookeeper的服务监控与管理,以及如何有效地利用它来提升系统的稳定性和可扩展性。 一、Zookeeper的基本概念 1.1 ZooKeeper数据模型:Zookeeper的数据模型是一种树形结构,类似于文件系统...
Dubbo还提供了Zookeeper监控功能,可以实时查看服务的注册与调用情况。这通常通过开启Dubbo的监控中心(如Admin)实现,Admin会连接到Zookeeper,获取并展示服务的运行状态,帮助开发者进行故障排查和性能优化。 总...
**Zookeeper集群监控工具——Taokeeper** Zookeeper作为一个分布式协调服务,被广泛应用于大数据、分布式计算和微服务等场景中。它提供了诸如命名服务、配置管理、分布式锁和组服务等功能,确保了分布式系统的一致...
动物园管理员监控扩展 与独立 Java 机器代理一起使用的 AppDynamics 扩展,为 Zookeeper 服务器提供指标。 先决条件 在安装扩展之前,需要满足提到的先决条件。 如果不满足指定的先决条件,请不要继续进行扩展安装。...
Java实现ZooKeeper的zNode监控 本文主要介绍了Java实现ZooKeeper的zNode监控问题,并提供了详细的实现步骤和代码示例。 ZooKeeper是一个分布式应用程序协调服务,可以提供统一的配置管理、统一命名、提供分布式同步...
【标题】:“Zookeeper监控管理控制台项目使用JavaEE实现” 该项目是一个基于JavaEE技术的Zookeeper监控管理控制台,旨在提供对Zookeeper集群状态的实时监控和管理功能。Zookeeper是一个分布式协调服务,广泛应用于...
3. **健康检查**:服务消费者可以通过 Zookeeper 监控服务提供者的状态,如果发现某个服务提供者异常,可以自动切换到其他正常的服务提供者。 4. **配置管理**:集中式管理服务的配置信息,当配置更新时,Zookeeper ...
ZooKeeper 提供了一个名为 JMX 的监控接口,以及基于 Web 的监控工具 ZooInspector,可以实时查看 ZooKeeper 集群的状态,如会话、节点、操作日志等,有助于故障排查和性能优化。 在实际项目中,理解并熟练掌握 ...