Zookeeper的安装和配置十分简单, 既能够配置成单机模式, 也能够配置成集群模式. 下面将进行介绍集群模式的安装配置html
因为集群模式下, 各server部署在不一样的机器上, 所以各server的conf/zoo.cfg文件能够彻底同样.
java
zookeeper-3.5.0-alpha.tar.gzapache
1、安装需求bash
安装java 1.6及hadoop 0.20.x服务器
2、安装zookeeperide
1、下载zookeeperoop
zookeeper-3.5.0-alpha.tar.gz测试
其余版本下载地址(最好使用stable版本):http://zookeeper.apache.org/releases.htmlui
2、解压spa
tar -zxvfzookeeper-3.5.0-alpha.tar.gz
将解压后的zookeeper-3.4.3文件放在系统的/home/hdtest /中。
[root@master soft]# cp zookeeper-3.5.0-alpha/home/hdtest/zoo2/
修改zoo2目录的所属用户组和权限
[root@master hdtest]# chown hdtest.hdtest zoo2/ -R
3、将zoo2/conf目录下的zoo_sample.cfg文件拷贝一份,命名为为“zoo.cfg”
切换到hdtest用户进入conf配置目录中
[hdtest@master conf]$ pwd
/home/hdtest/zoo2/conf
[hdtest@master conf]$ cp zoo_sample.cfg zoo.cfg
4、修改zoo.cfg配置文件
[hdtest@master conf]$ vi zoo.cfg
clientPort=2188
dataDir=/home/hdtest/zoo2/zookeeper-data
syncLimit=5
initLimit=10
tickTime=2000
server.1=192.168.200.2:2888:3888
server.2=192.168.200.3:2888:3888
server.3=192.168.200.4:2888:3888
5、建立dataDir参数指定的目录
(这里指的是“ /home/hdtest/zoo2/zookeeper-data”),并在目录下建立文件,命名为“myid”。
6、编辑“myid”文件,并在对应的IP的机器上输入对应的编号。如在192.168.200.2上,“myid”文件内容就是1。还有其余服务器,好比地址为192.168.200.3,则在 myid文件的内容就是2。
[hdtest@master zookeeper-data]$ cat myid
1
[hdtest@slave1 zookeeper-data]$ cat myid
2
至此,若是是多服务器配置,就须要将zoo2目录拷贝到其余服务器,而后按照上述的方法修改myid。
7、在主节点上使用hdtest用户编辑配置文件文件中设置PATH
修改profile文件:
[hdtest@master ~]$ cat .bash_profile
export ZOOKEEPER_HOME=/home/hdtest/zoo2/
export PATH=$PATH:$HADOOP_HOME/bin/:$ZOOKEEPER_HOME/bin
保存退出后
[hdtest@master ~]$ source .bash_profile
安装完毕
3、启动并测试zookeeper
1、在全部服务器中执行: zkServer.sh start
2、输入jps命令查看进程:
[hdtest@master ~]$ jps
16404 QuorumPeerMain
14932 JournalNode
15013 NameNode
15345 ResourceManager
2378 Jps
其中,QuorumPeerMain是zookeeper进程,启动正常。
3、查看状态:zookeeper-3.4.3/bin/zkServer.sh status
[hdtest@master ~]$ zkServer.sh status
JMX enabled by default
Using config: /home/hdtest/zoo2/bin/../conf/zoo.cfg
Client port found: 2188
Mode: follower
4、启动客户端脚本:
[hdtest@master ~]$ zkCli.sh -server master:2188
WatchedEvent state:SyncConnected type:None path:null
[zk: zookeeper:2181(CONNECTED) 0]
[zk: zookeeper:2181(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
connect host:port
get path [watch]
ls path [watch]
set path data [version]
rmr path
delquota [-n|-b] path
quit
printwatches on|off
create [-s] [-e] path dataacl
stat path [watch]
close
ls2 path [watch]
history
listquota path
setAcl path acl
getAcl path
sync path
[zk: master:2188(CONNECTING) 0]
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: master:2188(CONNECTED) 0] ls /
[zookeeper]
[zk: master:2188(CONNECTED) 1] ls /zookeeper
[config, quota]
[zk: master:2188(CONNECTED) 2]
5、中止zookeeper进程: zkServer.sh stop