Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。本文侧重于zookeeper的快速搭建。具体分为单机配置和集群模式两部分。
一、单机模式
1、配置JDK环境,略过。
2、获取及下载zookeeper
下载地址:http://mirror.bit.edu.cn/apache/zookeeper/stable/ ,
- #wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
- #tar zxvf zookeeper-3.4.6.tar.gz -C /usr/local
- #cd /usr/local
- #mv zookeeper-3.4.6 zookeeper
3、配置cfg文件
复制cfg配置文件
- #cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
并将配置文件中的datadir修改存放zookeeper的直实路径,如:
- dataDir=/opt/zookeeper
4、创建数据目录并启动zookeeper
- #mkdir -p /opt/zookeeper
- #/usr/local/zookeeper/bin/zkServer.sh start
5、检测是否启动成功
- #/usr/local/zookeeper/bin/zkCli.sh
- 或
- #echo stat|nc localhost 2181
二、集群模式
前两步操作和单机模式下的操作相同,这里略过,直接从第三步开始。
3、配置 cfg文件
修改配置文件的内容如下:
- tickTime=2000
- dataDir=/opt/zookeeper
- clientPort=2181
- initLimit=5
- syncLimit=2
- server.1=192.168.1.1:2888:3888
- server.2=192.168.1.2:2888:3888
- server.3=192.168.1.3:2888:3888
具体可以参看:http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html#sc_RunningReplicatedZooKeeper
这里要注意下server.1这个后缀,表示的是192.168.1.1这个机器,在机器中的server id是1 。
4、创建server id
在/opt/zookeeper目录下创建myid文件,并将机器ID写入该文件,如本例中的是1 。另外两台机器做同样的操作
5、启动zookeeper
按顺序依次启动1、2、3主机
- #/usr/local/zookeeper/bin/zkServer.sh start
启动完成后,检测方法同单机模式一样,通过如下方式检测
- #/usr/local/zookeeper/bin/zkCli.sh
- 或
- #echo stat|nc localhost 2181