ZooKeeper集群环境安装与配置

来源:互联网 发布:如何提升淘宝等级 编辑:程序博客网 时间:2024/05/19 17:04

原文:出自本人的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

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. #dataDir=/tmp/zookeeper  
  2. dataDir=/usr/zookeeper-3.4.5/data  
  3. clientPort=2181  
  4. initLimit=10  
  5. syncLimit=5  
  6. tickTime=2000  
  7. server.1=192.168.1.1:2888:3888  
  8. server.2=192.168.1.2:2888:3888  
  9. 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的端口:

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2181 –j ACCEPT  
  2. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2888 –j ACCEPT  
  3. -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

0 0
原创粉丝点击