ZooKeeper是一个高可用的分布式数据管理与系统协调框架。基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题。网上对ZK的应用场景也有不少介绍,本文将结合作者身边的项目例子,系统地对ZK的应用场景进行一个分门归类的介绍。 值得注意的是,ZK并非天生就是为这些应用场景设计的,都是后来众多开发者根据其框架的特性,利用其提供的一系列API接口(或者称为原语集),摸索出来的典型使用方法。因此,也非常欢迎读者分享你在ZK使用上的奇技淫巧。
正常工作比较大的影响: 1. 用于zookeeper写日志的目录要有足够大小,并且强烈建议在单独的磁盘(挂载点)上,这是影响ZK性能最大因素之一。 2. 连接数。 3. 注册的Watcher数。 4. ZNode是否可读,可写。 5. ZK事件通知的延时是否过大。 围绕以上几点展开,完成了taokeeper一期的开发,目前主要完成以下方面的监控:(项目地址:https://github.com/taobao/taokeeper) 1. CPU/MEM/LOAD的监控 2. ZK日志目录所在磁盘剩余空间监控 3. 单机连接数的峰值报警 4. 单机 Watcher数的峰值报警 5. 节点自检:是指对集群中每个IP所在ZK节点上的PATH:
本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要点,围绕ZK的部署和运维两个方面讲一些管理员需要知道的东西。本文并非一个ZK搭建的快速入门,关于这方面,可以查看《ZooKeeper快速搭建》。
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号