您的位置:首页 > 其它

ZooKeeper集群环境安装与配置

2014-02-08 17:54 393 查看
原文:出自本人的Linux博客http://blog.csdn.net/unix21/
ZooKeeper版本:3.4.5
约定:3台虚拟机
前提:需要安装JDK,关于Linux环境JDK安装配置参考我的另一帖Linux环境安装卸载JDK以及安装Tomcat和发布Java的web程序

ZooKeeper官网:http://zookeeper.apache.org/
1.下载解压
# wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz # tar zxvf zookeeper-3.4.5.tar.gz
# cd zookeeper-3.4.5

2.配置

1).建立数据目录

# mkdir data

2).编辑配置文件

# cd /usr/zookeeper-3.4.5/conf

conf目录下修改文件名 zoo_sample.cfg 改为 zoo.cfg

# mv zoo_sample.cfg zoo.cfg

# vim ./conf/zoo.cfg

#dataDir=/tmp/zookeeper
dataDir=/usr/zookeeper-3.4.5/data
clientPort=2181
initLimit=10
syncLimit=5
tickTime=2000
server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888
注意千万不要把IP写错了,不然启动后会报奇怪的错误!

快照是需要的#mkdir data
如果需要事务#mkdir datalog
新建配置文件zoo.cfg,保存在conf子目录下,写入以下内容:

tickTime=# Zookeeper服务器心跳时间,单位毫秒
dataDir= # 数据持久化路径
clientPort=# 连接端口
initLimit=# 投票选举新leader的初始化时间。
syncLimit=# Leader与Follower之间的最大响应时间单位,响应超过syncLimit*tickTime,Leader认为Follwer挂掉,从服务器列表中删除Follwer
dataLogDir=# 日志保存路径 这个要自己新建,具体目录根据自己的实际情况为准!
3).新增myid文件
# cd /usr/zookeeper-3.4.5/data

在data目录下创建文件,文件名为“myid”, 编辑该“myid”文件,并在对应的IP的机器上输入对应的编号。
如在192.168.1.1上,“myid”文件内容就是1,在192.168.1.2上,内容就是2,在192.168.1.3上,内容就是3

3.修改防火墙
如果是用iptable的话,在/etc/sysconfig/iptables中加入ZooKeeper的端口:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2181 –j ACCEPT
 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2888 –j ACCEPT
 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3888 –j ACCEPT
执行防火墙重启命令:
# service iptables restart

4.启动ZooKeeper

启动
# /usr/zookeeper-3.4.5/bin/zkServer.sh start
[root@localhost conf]# /usr/zookeeper-3.4.5/bin/zkServer.sh start
JMX enabled by default
Using config: /usr/zookeeper-3.4.5/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED



停止
# /usr/zookeeper-3.4.5/bin/zkServer.sh stop

重启
# /usr/zookeeper-3.4.5/bin/zkServer.sh restart

5.检查状态
# /usr/zookeeper-3.4.5/bin/zkServer.sh status
可能需要安装nc包
# yum install nc



ZooKeeper会自动选出Leader,一旦Leader挂了会选出新的Leader。

Leader/Follower会通过选举算法进行选择。
6.客户端登陆
# /usr/zookeeper-3.4.5/bin/zkCli.sh -server 127.0.0.1:2181


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: