监控 Apache ZooKeeper 集群的健康状况和性能
Apache Zookeeper 是一款可靠的协调分布式进程和应用程序的开源服务器。其支持分布式进程通过共享的层次命名空间(其架构模式与标准文件系统类似)相互协作。
Apache Zookeeper 提供了分层系统(通过ZNode 作为系统文件),以协助完成不同计算机中运行的服务如发现、注册、配置、锁操作、导引节点选择、排队等。ZooKeeper 服务器维护配置信息,即提供分布式同步和组服务,供分布式应用程序使用。
Applications Manager 旨在帮助管理员管理Zookeeper 服务器 - 收集所有可能有助于排除故障的指标,显示性能图表,并自动接收关于潜在问题的告警。现在来看下您需要了解哪些内容来使用 Applications Manager 以监控 Zookeeper和获取性能指标:
可以自动发现 Zookeeper 集群,监控 Znode 内存(堆和非堆),获取资源使用率变更告警。对垃圾回收机制迭代次数、堆大小和使用率以及线程数,进行自动绘图,收集并生成告警。集群部署ZooKeeper 主机,只要大部分主机正常运行,服务就可用。请确保 ZooKeeper 目录树中的总节点数始终一致。
可以分析 JVM 线程转储,确定问题的根本原因。通过“守护线程数”、“高峰线程数”和“活动线程数”等指标跟踪线程使用率。确保启动的线程不会造成服务器内存负荷过高。
计算服务器对客户端请求作出响应所耗费的时间、已排队的请求数和服务器的连接数,以及因网络使用而引起的性能下降(发送和接收的客户端数据包)。获取持续的服务器性能视图,而不考虑服务器是否在“跟随节点”与“导引节点”之间来回切换角色。
跟踪 Znode 数目、关于节点的监测设置以及集成的跟随节点数目。密切监控导引节点选择统计信息和客户端会话时长。了解导引节点在何处用于仲裁,以及导引节点何时变更。获取活跃会话数和已连接会话数的告警,并计算特定时段内的增长率。
在运行环境中可以快速启动Applications Manager监控 Apache ZooKeeper。当Apache Zookeeper 的组件出现性能问题时,管理员能及时收到通知,确定性能瓶颈并迅速采取补救措施,避免问题影响终端用户。