一、服务管理命令
常用服务命令
启动 Zookeeper 服务:
systemctl start zookeeper # 使用 systemd (推荐)
/usr/local/zookeeper/bin/zkServer.sh start # 直接启动
停止服务:
systemctl stop zookeeper
/usr/local/zookeeper/bin/zkServer.sh stop
查看服务状态:
systemctl status zookeeper
/usr/local/zookeeper/bin/zkServer.sh status
重启服务:
systemctl restart zookeeper
/usr/local/zookeeper/bin/zkServer.sh restart
设置开机启动:
systemctl enable zookeeper
完整服务命令
zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}
二、客户端命令 (zkCli.sh)
常用客户端命令
- 连接客户端:
zkCli.sh -server <host:port> # 默认 localhost:2181
- 节点操作:
create /path data # 创建持久节点
create -s /path data # 创建顺序节点
create -e /path data # 创建临时节点
get /path # 获取节点数据和信息
set /path newData # 更新节点数据
delete /path # 删除节点(无子节点)
deleteall /path # 递归删除节点
- 查看命令:
ls /path # 列出子节点
ls2 /path # 列出子节点及详细信息
stat /path # 查看节点状态信息
- ACL 操作:
getAcl /path # 获取ACL权限
setAcl /path acl # 设置ACL权限
- 其他操作:
history # 查看命令历史
redo <cmdnum> # 重做历史命令
quit # 退出客户端
完整客户端命令列表
命令 |
描述 |
示例 |
|
|
添加认证 |
|
|
|
集群配置 |
|
|
|
重新连接 |
|
|
|
创建节点 |
|
|
|
删除节点 |
|
|
|
递归删除 |
|
|
|
获取节点数据 |
|
|
|
获取ACL |
|
|
|
命令历史 |
|
|
|
查看配额 |
|
|
|
列出子节点 |
|
|
|
设置watch |
|
|
|
退出客户端 |
|
|
|
重做命令 |
(执行历史中第3条命令) |
|
|
移除watch |
|
|
|
递归删除(同deleteall) |
|
|
|
设置数据 |
|
|
|
设置ACL |
|
|
|
设置配额 |
`setquota -n |
-b val /path` |
|
查看状态 |
|
|
|
同步数据 |
|
三、四字命令 (Four Letter Words)
这些命令可以通过 telnet 或 nc 发送到 Zookeeper 服务端口(默认2181)
常用四字命令
echo stat | nc localhost 2181 # 查看服务器状态
echo ruok | nc localhost 2181 # 检查服务器是否运行
echo dump | nc localhost 2181 # 列出未完成的会话和临时节点
echo conf | nc localhost 2181 # 查看服务器配置
echo envi | nc localhost 2181 # 查看环境变量
完整四字命令列表
命令 |
描述 |
|
服务器配置 |
|
客户端连接详情 |
|
重置连接统计 |
|
会话和临时节点 |
|
环境变量 |
|
服务器是否运行 |
|
服务器状态和客户端连接 |
|
重置服务器统计 |
|
服务器完整状态 |
|
watch统计 |
|
watch详情(按会话) |
|
watch详情(按路径) |
|
集群健康状态 |
四、日志管理
- 查看日志:
tail -f /var/log/zookeeper/zookeeper.log
- 清理日志:
echo > /var/log/zookeeper/zookeeper.log
五、配置相关
- 查看配置文件:
cat /etc/zookeeper/zoo.cfg
- 修改配置后重启:
vi /etc/zookeeper/zoo.cfg
systemctl restart zookeeper