基本配置
参数名 说明 clientPort 该参数无默认值,必须配置。表示当前服务器对外服务的端口号,一般设置为2181.集群汇总的所有服务器不需要保持clientPort端口一致 dataDir 该参数无默认值,必须配置。这是zookeeper服务器存储快照文件的目录。如果没有配置参数dataLogDir,那么事务日志也会存储在这个目录中,考虑到事务日志的写性能直接影响zookeeper整体的服务能力,建议同时通过参数dataLogDir来配置事务日志的存储目录。 tickTime 该参数有默认值:3000,单位ms。可以不配置。代表zookeeper中最小时间单元的长度,很多运行时的时间间隔都是使用tickTime的倍数来表示的。例如,zookeeper中会话的最小超时时间默认是2*tickTime。
高级配置
四字命令
通过命令: Telnet 192.168.6.187 2181或者命令: nc 192.168.6.187 2181 登录到zookeeper的对外服务端口,然后即可直接输入四字命令。四字命令包括:
conf :输出zookeeper服务器运行时使用的基本配置信息
cons :输出当前这台服务器上所有客户端连接的详细信息
crst :用于重置所有的客户端连接统计信息
dump :用于输出当前集群的所有会话信息,包括这些会话的ID,以及每个会话创建的临时节点等信息
envi :输出zookeeper所在服务器运行时的环境信息
ruok :输出当前zookeeper服务器是否正在运行
stat :获取zookeeper服务器的运行时状态信息
srvr :输出服务器自身的信息
srst :重置所有服务器的统计信息
wchs :输出当前服务器上管理的watcher的概要信息
wchc :输出当前服务器上管理的watcher的详细信息,以会话为单位进行归组
wchp :输出当前服务器上管理的watcher的详细信息,以节点路径为单位进行归组
mntr :输出比stat命令更为详尽的服务器统计信息JMX(Java 管理扩展)
开启远程JMX:
zookeeper默认开启了JMX功能,但是只限本地连接,开启远程连接需要修改zkServer.sh文件:ZOOMAIN=”-Dcom.sun.management.jmxremote.port=21811 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false org.apache.zookeeper.server.quorum.QuorumPeerMain”
通过JConsole连接Zookeeper:
JConsole(Java监视和管理控制台)是一个Java内置的基于JMX的图形化管理工具。扩容与缩容
zookeeper在水平扩容时,需要进行整个集群的重启。通常有两种重启方式:集群整体重启、逐台进行服务器的重启(更常用,不用停止服务)。数据与日志管理
zookeeper不断把快照数据和事务日志输出到dataDir和dataLogDir目录中,zookeeper不会自己清理这些文件,需要运维人员来进行清理。
① 纯shell脚本进行清理#!/bin/bash dataDir=/home/hadoop/zookeeper/data/version-2 dataLogDir=/home/hadoop/zookeeper/data/version-2 logDir=/home/hadoop/zookeeper/logs count = 60 count=$[$count+1] ls -t $dataLogDir/log.*|tail -n +$count|xargs rm -f ls -t $dataDir/snapshot.*|tail -n +$count|xargs rm -f ls -t $logDir/zookeeper.log.*|tail -n +$count|xargs rm -f
② 使用清理工具:PurgeTxnLog
java -cp zookeeper-3.4.6.jar:lib/slf4j-api-1.6.1.jar:lib/slf4j-log4j12-1.6.1.jar:lib/log4j-1.2.15.jar:conf org.apache.zookeeper.server.PurgeTxnLog /home/hadoop/zookeeper/data /home/hadoop/zookeeper/data -n 15
在zookeeper根路径下执行以上命令,进行历史快照数据和事务日志文件的清理,至多会保留15个快照数据文件和相对于的事务日志文件。
③ 使用清理脚本:zkCleanup.shsh zkCleanup.sh -n 15
④ 自动清理机制
通过autopurge.snapRetainCount和autopurge.purgeInterval参数进行配置
Zookeeper_运维
最新推荐文章于 2024-10-05 13:28:05 发布
本文介绍了ZooKeeper的基本及高级配置参数,如clientPort、dataDir和tickTime等,并探讨了四字命令、JMX远程监控配置及数据日志管理方法。此外,还提供了集群扩容、数据清理的具体步骤。
摘要由CSDN通过智能技术生成