本文仅记录zookeeper集群搭建的过程,留待日后查看、使用。
一、硬件机器:
192.168.183.195 master-node
192.168.183.194 data-node1
192.168.183.196 data-node2
二、集群搭建
在master-node机器上进行如下操作:
1、下载zookeeper
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
2、解压
tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/
3、修改配置文件
cd /usr/local/zookeeper-3.4.14
cp zoo.cfg.sample zoo.cfg
修改的zoo.cfg文件的内容:
dataDir=/tmp/zookeeper
dataLogDir=/tmp/zookeeper/log
server.1=master-node:2888:3888
server.2=data-node1:2888:3888
server.3=data-node2:2888:3888
进入 /tmp文件夹 创建zookeeper
cd /tmp
mkdir zookeeper
进入zookeeper文件夹 创建myid文件
echo 1 > myid
============================
到此master-node机器配置完成,如果为了加深印象可以在其他俩台机器重复操作,只不过,myid文件的内容应该不同于master-node,其他俩台改为2,3
如果为了方便可以使用scp命令,直接传输
==================
三、启动
在三台机器上分别操作:
进入zookeeper的安装路径,运行、启动:
bin/zkServer.sh start
启动之后验证:
bin/zkServer.sh status
类似输出为:
红色标记部分可能为:follower和leader
正常情况下到此群集搭建完毕。
============================
四、遇到的问题:
1、在zookeeper安装目录下运行 bin/zkServer.sh status 查看状态的命令时输出:
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.14/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
这个是由于的我server.N里面的hostname手滑打错了,这个是多个机器手动配置容易出现的问题,归根结底还是不仔细。。
这个问题解决之后还是不能运行,才发现我把myid放在了/tmp文件夹下,将myid文件放入/tmp/zookeeper/中,重启、查看状态,完成集群搭建