环境概要
hadoop2.5.2 HA
JDK 1.6.0_45
zookeeper3.4.6
hbase
以前机器上安装了hadoop、zookeeper,hive,昨天装了hbase,装的时候可以正常启动的,没啥问题,但是今天重启机器的时候,发现我原本自装的zookeeper在某台主机上死活无法启动,
查看日志发现如下错误:
2016-04-20 02:04:50,704 [myid:0] - INFO [main:FileSnap@83] - Reading snapshot /opt/zookeeper/version-2/snapshot.900000012
2016-04-20 02:04:50,782 [myid:0] - ERROR [main:QuorumPeerMain@89] - Unexpected exception, exiting abnormally
java.lang.RuntimeException: My id 0 not in the peer list,
但我安装zookeeper的配置如下:
修改zookeeper的默认工作路径:
dataDir=/opt/zookeeper
集群:
vi zoo.cfg
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
然后在node1:mkdir /opt/zookeeper
Vi myid:输入1
Scp /opt/zookeeper/ root@node2:/opt/
并在node2上 vi myid:输入 2
Scp /opt/zookeeper/ root@node3:/opt/
并在node2上 vi myid:输入 3
我对myid的设置并没有0,然后查看三台机器上我的/opt/zookeeper/myid,发现分别别修改为0,1,2;所以报了如此错误!
解决步骤如下:
1、修改/home/hbase/conf中的hbase-env.sh,增加export HBASE_MANAGES_ZK=FALSE ,即使用原本已经安装好的zookeeper
2、将zookeeper安装目录下的/conf/zoo.cfg拷贝到 hbase的安装目录的/conf/下,即scp /home/zk/conf/zoo.cfg /home/hbase/conf
3、修改三台机器的myid分别为原本设置的1,2,3即可