Zookeeper安装部署调试命令

时间:2022-05-07
本文章向大家介绍Zookeeper安装部署调试命令,主要内容包括启动、常见原因、2.、3.、ZooKeeper 常用四字命令:、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

下载地址: http://www.apache.org/dyn/closer.cgi/zookeeper/

我选用清华的镜像 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz

解压:

tar  -zxvf  zookeeper-3.4.9.tar.gz

copy到任意地点

cp -r ./zookeeper-3.4.9 /usr/zookeeper

修改配置文件

cd /usr/zookeeper/conf
mv ./zoo_sample.cfg ./zoo.cfg
vi ./zoo.cfg

单机模式

tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181

分布式

tickTime=2000  
initLimit=10  
syncLimit=5  
dataDir=/usr/zookeeper/data  
dataLogDir=/usr/zookeeper/data/datalog  
clientPort=2181  
server.1=host1:2888:3888    
server.2=host2:2888:3888    
server.3=host3:2888:3888   

每台机器的dataDir目录下要建立一个文件myid,内容和配置一样是数字就行

启动

zkServer.sh start

查看启动状态

zkServer.sh status 

正常情况

ZooKeeper JMX enabled by default
Using config: /usr/zookeeper/bin/../conf/zoo.cfg
Mode: follower

不正常情况

Error contacting service. It is probably notrunning.

测试zk

$echo ruok |nc master 2181
---
imok


$echo srvr|nc master 2181
---
Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Latency min/avg/max: 0/0/0
Received: 2
Sent: 1
Connections: 1
Outstanding: 0
Zxid: 0x0
Mode: follower
Node count: 4

如果没有nc命令的话,yum -y install 一下就可以了

如果不行可以参考 http://www.cnblogs.com/sunddenly/p/4031322.html?utm_source=tuicool&utm_medium=referral 这哥们挺坎坷的

调试方法:

tail -500f $dataLogDir/zookeeper.out

或者以输出日志方式启动

zkServer.sh start-foreground

常见原因

1.

编辑zoo.cfg配置文件时,指定了log的输出目录,但是却未创建。 dataLogDir=/usr/zookeeper/data/datalog 因此需要按照里面指定的目录进行创建。

mkdir /usr/zookeeper/data/datalog

2.

最后检查配置zoo.cfg配置发现是该节点的主机名写错了 先停止zookeeper服务,逐一的修改节点上zoo.cfg配置文件,在逐一的启动

zkServer.sh stop
vi /usr/zookeeper/conf/zoo.cfg

PS: zk类的安装搭建过程中, 如果报错, 一定要把status中的错误贴出来, 其它的信息不容易找到答案.

3.

Caused by: java.lang.IllegalArgumentException: ./zookeeper/myid file is missing myid文件放错位置或者没有

mkdir -p /usr/zookeeper/data
vi /usr/zookeeper/data/myid

ZooKeeper 常用四字命令:

ZooKeeper 支持某些特定的四字命令字母与其的交互。它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向 ZooKeeper 提交相应的命令

1. echo stat|nc 127.0.0.1 2181 来查看哪个节点被选择作为follower或者leader

2. echo ruok|nc 127.0.0.1 2181 测试是否启动了该Server,若回复imok表示已经启动。

3. echo dump| nc 127.0.0.1 2181 ,列出未经处理的会话和临时节点。

4. echo kill | nc 127.0.0.1 2181 ,关掉server

5. echo conf | nc 127.0.0.1 2181 ,输出相关服务配置的详细信息。

6. echo cons | nc 127.0.0.1 2181 ,列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。

7. echo envi |nc 127.0.0.1 2181 ,输出关于服务环境的详细信息(区别于 conf 命令)。

8. echo reqs | nc 127.0.0.1 2181 ,列出未经处理的请求。

9. echo wchs | nc 127.0.0.1 2181 ,列出服务器 watch 的详细信息。

10. echo wchc | nc 127.0.0.1 2181 ,通过 session 列出服务器 watch 的详细信息,它的输出是一个与 watch 相关的会话的列表。

11. echo wchp | nc 127.0.0.1 2181 ,通过路径列出服务器 watch 的详细信息。它输出一个与 session 相关的路径。

安装配置官网地址 http://zookeeper.apache.org/doc/r3.4.9/zookeeperStarted.html

好文章 http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/

Zookeeper常用命令 https://my.oschina.net/u/347386/blog/313037