(PS:我是在本机起三个linux enterprise5.6 redhat 虚拟机安装)
1、安装准备
1、安装JDK
2、下载zookeeper-3.3.1,地址: http://www.apache.org/dist/hadoop/zookeeper/zookeeper-3.3.1/
# wget http://...... /usr/local/src/....
2、安装
1、解压缩到随便目录 #tar -axvf zookeeper.tar.gz
2、conf目录下修改文件名 zoo_sample.cfg改为 zoo.cfg # mv zoo_sample.cfg zoo.cfg
3、修改成如下内容即可(每个主机的这个配置文件都一样)
dataDir=/export/crawlspace/mahadev/zookeeper/server1/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.76.147:2888:3888
server.2=192.168.76.228:2888:3888
server.3=192.168.76.229:2888:3888
4、/export/crawlspace/mahadev/zookeeper/server1/data目录下创建myid文件,编辑“myid”文件,并在对应的IP的机器上输入对应的编号。如在192.168.76.147上,“myid”文件内容就是1(多个主机的myid内容都不一样,和zoo.cfg配置文件(server.*)一致即可)。
5、将 “zookeeper”目录整体分别拷贝到192.168.76.228和192.168.76.229下。别忘了4中说的同时修改对应的“myid”文件内容。
3、启动
1、在三台机器上分别执行shell脚本。“sh /zookeeper/bin/zkServer.sh start”
(PS:
1、在此抛出ConnectionException没关系,是因为2888端口连接不上而已,等几台机器都启动起来就好了
2、通过shell脚本在每个机器上启动zookeeper的时候,可能会显示错误信息“Cannot open channel to X at election address”。这是由于zoo.cfg文件中指定的其他zookeeper服务找不到所导致。所有机器的zookeeper服务启动之后该错误提示将会消失。
)
2、通过输入“#sh /zookeeper/bin/zkServer.sh status”检查是否启动,一般返回内容如下:
如果是leader服务器则返回
leader:
JMX enabled by default
Using config: /jz/zookeeper-3.3.1/bin/../conf/zoo.cfg
Mode: leader
如果是follower服务器则返回
follower:
JMX enabled by default
Using config: /jz/zookeeper-3.3.1/bin/../conf/zoo.cfg
Mode: follower
3、通过在控制台输入命令检查集群zookeeper启动状态。
# echo ruok | nc 192.168.76.147 2181”,控制台输出“imok”(最后一行)
4、客户端测试(JAVA语言客户端测试)
1、引入客户端必备JAR包:
1、log4j.jar
2、zookeeper3.3.X .jar
2、测试程序主要测试了CRUD等操作和EVENT回调情况。
详细参见zookeeperTest源代码包。
测试中:147,229是follower服务器
228是leader服务器
启动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”
- scp -r zookeeper-3.3.4/ hadoop@slave-02:/home/hadoop/installation/