环境简介:
虚拟机 centos7
zookeeper:apache-zookeeper-3.6.3-bin
文件下载地址:apache-zookeeper-3.6.3-bin.tar.gzhttps://dlcdn.apache.org/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gzhttps://dlcdn.apache.org/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
官网其它版本下载:
zookeeper官网http://zookeeper.apache.org/releases.htmlhttp://zookeeper.apache.org/releases.html
准备工作:
1、关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、进入目录
cd /opt/
3、下载文件:
wget http://192.168.2.6/apache-zookeeper-3.6.3-bin.tar.gz
我把文件放到了主机的iis下,所以这里的地址是我本机。
一、解压zookeeper
tar -zxvf apache-zookeeper-3.6.3-bin.tar.gz
二、修改文件名
mv apache-zookeeper-3.6.3-bin zookeeper
三、创建目录
mkdir -p /opt/zookeeper/logs
mkdir -p /opt/zookeeper/data
四、修改配置文件
1、进入zookeeper文件夹中conf文件夹
cd zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
将原本的 dataDir 替换为下面的内容
#替换
dataDir=/opt/zookeeper/data
#增加
dataLogDir=/opt/zookeeper/logs
server.1=192.168.65.11:2888:3888
server.2=192.168.65.12:2888:3888
server.3=192.168.65.13:2888:3888
五、其他配置:
在192.168.65.11服务器上:
echo "1" > /opt/zookeeper/data/myid
在192.168.65.12服务器上:
echo "2" > /opt/zookeeper/data/myid
在192.168.65.13服务器上:
echo "3" > /opt/zookeeper/data/myid
六、启动zookeeper
在每个节点上的/zookeeper/bin/目录下,均需操作:
cd /opt/zookeeper/bin
./zkServer.sh start (启动)
./zkServer.sh status (查看状态)#所有节点都已启动后才可查看
客户端连接
zkCli.sh -server 192.168.65.12:2181
表示集群配置成功。quit 退出客户端连接
问题集锦:
当防火墙关闭,IP能够ping通,myid数字正确
查看日志 logs/zookeeper*.out
As I'm leaving the listener thread, I won't be able to participate in leader election any longer
Cannot open channel to 3 at election address
出现这些错误信息,
需要将myid1主机zoo.cfg文件中ip改为
server.1=0.0.0.0:2888:3888
server.2=192.168.65.12:2888:3888
server.3=192.168.65.13:2888:3888
其他节点依次类推,myid2的zoo.cfg为
server.1=192.168.2.17:2888:3888
server.2=0.0.0.0:2888:3888
server.3=192.168.2.19:2888:3888
重启zookeeper
这种情况出现在虚拟机上,虚拟机本身ip和填写ip不一致,比如虚拟机是10ip段。