一、安装准备
1、下载zookeeper-3.3.1,
地址:http://www.apache.org/dist/hadoop/zookeeper/zookeeper-3.3.1/
2、JDK版本:jdk-6u20-linux-i586.bin
3、操作系统:Linux
4、默认前提是安装完hadoop 0.20.2版本:
192.168.3.131 namenode
192.168.3.132 datanode
192.168.3.133 datanode
二、操作步骤(默认在namenode上进行)
1、拷贝以上文件到Linux的“/usr/”目录下。同时新建目录“/zookeeper-3.3.1”。
2、安装JDK,此步省略...
3、解压zookeeper到/zookeeper-3.3.1目录下。tar -zxvf zookeeper-3.3.1.tar.gz -C /
zookeeper-3.3.14、将“/zookeeper-3.3.1/conf”目录下zoo_sample.cfg修改名称为“zoo.cfg”
5、打开zoo.cfg文件,修改配置如下:
dataDir=/usr/zookeeper-3.3.1/data
dataLogDir=/usr/zookeeper-3.3.1/log
clientPort=2181
initLimit=10
syncLimit=5
tickTime=2000
server.1=192.168.3.131:2888:3888
server.2=192.168.3.132:2888:3888
server.3=192.168.3.133:2888:38886、创建dataDir参数指定的目录(这里指的是“/zookeeper-3.3.1/data”),并在目录下创建文件,
命名为“myid”。
7、编辑“myid”文件,并在对应的IP的机器上输入对应的编号。如在192.168.3.131上,
“myid”文件内容就是1,在192.168.3.132上,内容就是2
8、在profile.d下面生成zookeeper.sh文件设置如下:
# zookeeper path
ZOOKEEPER=/usr/zookeeper-3.3.2
PATH=$PATH:$ZOOKEEPER/bin
export PATH
然后应用 . ./zookeeper.sh
9、将 “/usr/zookeeper-3.3.1” 目录分别拷贝到192.168.3.132和192.168.3.133下。
同时修改对应的“myid”文件内容。
10、至此,安装步骤结束,接下来启动zookeeper。
三、启动zookeeper
1、在三台机器上分别执行shell脚本。“sh /jz/zookeeper-3.3.1/bin/zkServer.sh start”
2.启动客户端脚本:“zkCli.sh -server 192.168.1.132:2181”
3、执行完成之后输入“jps”命令,查看进程如下:
namenode上显示如下:
29844 JobTracker
29583 NameNode
31477 HMaster
29762 SecondaryNameNode
32356 Jps
31376 HQuorumPeer
datanode:
16812 DataNode
17032 HRegionServer
17752 HQuorumPeer
16921 TaskTracker
18461 Jps
3、通过输入“sh /jz/zookeeper-3.3.1/bin/zkServer.sh status”检查是否启动,
一般返回内容如下:
leader:
JMX enabled by default
Using config: /jz/zookeeper-3.3.1/bin/../conf/zoo.cfg
Mode: leaderfollower:
JMX enabled by default
Using config: /jz/zookeeper-3.3.1/bin/../conf/zoo.cfg
Mode: follower4、通过在控制台输入命令检查集群zookeeper启动状态。
命令如“echo ruok | nc 192.168.3.131 2181”,
控制台输出“imok”
四、注意事项
通过shell脚本在每个机器上启动zookeeper的时候,
可能会显示错误信息“Cannot open channel to X at election address”。
这是由于zoo.cfg文件中指定的其他zookeeper服务找不到所导致。
所有机器的zookeeper服务启动之后该错误提示将会消失。
来源:oschina
链接:https://my.oschina.net/u/110333/blog/11282