之前使用hbase时并没有单独安装zookeeper,直接用了它自带的zookeeper。因为现在要搞hadoop的HA,所以决定单独搞出一套。安装很简单,就简单带过了。
安装:
1. 准备安装包
我使用的是CDH4.3版本,到下面的下载地址找去吧:
http://archive.cloudera.com/cdh4/cdh/4/
下载后解压到一个目录下,自己定吧。
我的:/app/cdh4/zookeeper-3.4.5-cdh4.3.0/
2. 修改环境变量
将下面的信息加到/etc/profile
export ZOOKEEPER_HOME=/app/cdh4/zookeeper-3.4.5-cdh4.3.0
export PATH=$PATH:$ZOOKEEPER_HOME/bin
让配置生效:source /etc/profile
3. 创建zookeeper数据存放目录
我的:/app/cdh4/hadoop/zookeeper
4. 配置
编辑配置文件 ${ZOOKEEPER_HOME}/conf/zoo.cfg,conf目录下没有zoo.cfg,借个来。
cp zoo_sample.cfg zoo.cfg
然后编辑:
# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. dataDir=/app/cdh4/hadoop/zookeeper # the port at which the clients will connect clientPort=42181 server.2=server86:42888:43888 server.0=server87:42888:43888 server.1=server88:42888:43888
其中dataDir、clientPort修改信息,server.0、server.1、server.2为添加信息。
5. 在数据存放目录下创建myid文件
分别在zookeeper节点的数据目录/app/cdh4/hadoop/zookeeper下创建文件,命名为“myid”, 编辑该“myid”文件,根据zoo.cfg配置输入编号。如在server87上,“myid”文件内容就是0,在server88上,内容就是1
6. 启动服务
bin/zkServer.sh start
测试:
1. 在一台机器上进行写操作:
$bin/zkCli.sh -server server88:42181
[zk: server88:42181(CONNECTED) 0] create /test test
Node already exists: /mytest
[zk: server88:42181(CONNECTED) 1] ls /test
[]
[zk: server88:42181(CONNECTED) 2] get /test
test
cZxid = 0x100000002
ctime = Fri Aug 23 22:50:57 GMT+08:00 2013
mZxid = 0x100000002
mtime = Fri Aug 23 22:50:57 GMT+08:00 2013
pZxid = 0x100000002
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 0
2. 在一台机器上进行读操作:
$bin/zkCli.sh -server server87:42181
[zk: server87:42181(CONNECTED) 1] ls /test
[]
[zk: server87:42181(CONNECTED) 2] get /test
test
cZxid = 0x100000002
ctime = Fri Aug 23 22:50:57 GMT+08:00 2013
mZxid = 0x100000002
mtime = Fri Aug 23 22:50:57 GMT+08:00 2013
pZxid = 0x100000002
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 0
集群成功启动!阿门!
随笔原创,如有不当或错误之处,还望批评指正,感激涕零!!!
转载请说明出处: http://xmaster.iteye.com/admin/blogs/1930265