zookeeper集群简单配置

回复 收藏
准备工作:三台(最少)主机,并且为基数台主机,zookeeper规定至少一半以上正常工作才能正常运行,系统为CentOS 7,
zookeeper软件包:zookeeper-3.4.7.tar.gz

在安装zookeeper之前,请先安装jdk,Java环境支持。具体安装jdk步骤简单,不赘述。
下载软件包,放在/usr/local/src目录下,解压
tar -zxvf zookeeper-3.4.7.tar.gz
mv zookeeper-3.4.7  /usr/local/zookeeper(个人习惯,把软件包放在/usr/local下)
进入zookeeper/conf目录下,复制zoo_sample.cfg 命名为zoo.cfg
修改配置:
tickTime=2000
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/logs
initLimit=5
syncLimit=2
clientPort=2181
server.1=IP1:2888:3888     此处红色标记可随意数字

server.2=IP2:2888:3888
server.3=IP3:2888:3888
保存退出;
由于配置文件中有dataDir和dataLogDir,所以要创建两个目录
mkdir -p /data/zookeeper/data
mkdir -p /data/zookeeper/logs
在dataDIr目录下创建server id 文件
vim myid 值为1
注:IP1上的myid的值是server.X 的X值要一致,不一致会搭建不成功。
其余两台主机同样的配置,不同就是myid的值。
启动zookeeper,进入bin目录
cd /usr/local/zookeeper/bin
会发现如下文件:
.cmd文件是windows运行脚本,.sh文件是Linux运行脚本
三台主机分别启动:
./zkServer.sh start

是否成功,则查看状态:
./zkServer.sh status;
若出现follower或者leader的单词,则表示zookeeper集群搭建成功。
常见的错误:
在查看状态的时候,会出现以下代码:
JMX enabled by default
Using config: /usr/local/zk/bin/../conf/zoo.cfg
Error contacting service. It is probably not running
原因之一是:zoo.cfg在制定log输出目录,但是没有创建。
原因之二是:在配置节点主机名和myid不匹配;

三个端口,简单说就是,2181是通讯端口,2888是集群端口,3888是各个zookeeper之间的选举端口(如有一台不能工作,其余几台要争做master,此时要通过3888端口互相“推荐”)

2016-04-08 09:48 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: