ZooKeeper故障处理

@Author  : Spinach | GHB
@Link    : http://blog.csdn.net/bocai8058

Zookeeper一般会出现以下两种故障

  1. Zookeeper进程挂掉;
  2. Zookeeper进程还在,但不提供服务;(提示:This ZooKeeper instance is not currently serving requests)

Zookeeper故障监控

  1. 针对zookeeper进程的监控,直接监控器进程是否存在即可;(zookeeper进程名字:QuorumPeerMain)
  2. 针对zookeeper不能提供服务,需要通过linux shell命令监控;
# 当在linux下输入以下命令并得到下面的结果时,说明zookeeper还活着,但不提供服务了。(这种情况几率大)
[root@192.168.1.1 bin]# echo stat | nc localhost 2181
This ZooKeeper instance is not currently serving requests


# 当在linux下输入以下命令并得到下面的结果时,说明zookeeper服务正常。
[root@192.168.1.1 bin]# echo stat | nc localhost 2181
Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT
Clients:
 /192.168.1.12:29432[1](queued=0,recved=13,sent=13)
 /127.0.0.1:43448[0](queued=0,recved=1,sent=0)
Latency min/avg/max: 0/1/11
Received: 235
Sent: 17
Connections: 2
Outstanding: 0
Zxid: 0x100000004
Mode: leader
Node count: 4

Zookeeper故障处理

  1. 当zookeeper出现以上两种故障或未知故障时,请先尝试重启zookeeper;
(启动命令:/usr/zookeeper-3.4.6/bin/ 目录下执行 ./zkServer.sh start )
  1. 重启之后首先要输入命令jps,看zookeeper进程(QuorumPeerMain)是否起来;
  2. 如果zookeeper进程起来,再输入命令echo stat | nc localhost 2181,看服务是否正常(如果数据量大可能需要等几分钟才能显示正确);
  3. 如果第2步的进程没有起来,或者第3步的显示不能提供服务,则需要清除以下数据后再试1、2、3步;
# 需要清除下面两个文件夹下的所有数据(最好将数据备份到别的地方或重命名文件夹名字):
/var/zookeeper/data/version-2
/var/zookeeper/logs/version-2
  1. 如果不幸走到了这一步,则意味着第4步重试后第2步进程还是没有起来或第3步不能提供服务,这时需要重新搭建一套zookeeper服务,并修改所有使用zookeeper服务的hosts。

Zookeeper服务搭建

  1. 将附件中的安装包解压到linux机器上的 /usr/ 目录下;如:/usr/zookeeper-3.4.6

  2. 修改附件中的zoo.cfg文件,将文件中的的ip修改为新机器的ip;

server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888
  1. 将修改完的zoo.cfg文件拷贝到解压目录 /usr/zookeeper-3.4.6/conf/ ;

  2. 在新机器上创建以下目录和文件:

/var/zookeeper/data/
/var/zookeeper/logs/
/var/zookeeper/data/myid
该文件下要写上第2步中ip对应的server.后面的数字,比如192.168.1.1 ip对应的是server.1,则该机器上的myid中的内容就是1。其他的都类似。
  1. 到此为止zookeeper服务就搭建完毕了,下面就需要启动zookeeper了。(启动命令:/usr/zookeeper-3.4.6/bin/ 目录下执行 ./zkServer.sh start )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小学僧来啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值