前言
从安装vm虚拟机到下载centos7最小化镜像,最后到zk的环境搭建,一步步带你复现踩坑的辛酸历史
序1:vm虚拟机下载及安装
略过,过于简单,这部分内容可能会引起不适
序2:centos最小化镜像下载
http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso
序3:安装3个虚拟机
分别命名为 pc_001,pc_002,pc_003
序4:最小化安装后的必备软件
CentOS7 最小化安装必备软件及常用设置
正文
zookeeper 单机环境
先在pc_001虚拟机里,另外两台不需要操作
1.先cd到要安装的位置,如: /home/twan/apps/
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz
tar -zxvf zookeeper-3.4.12.tar.gz
mkdir -p ./data/zookeeper
mkdir -p ./dataLog/zookeeper
cd /home/twan/apps/zookeeper-3.4.12/conf
cp zoo_sample.cfg zoo.cfg
2.编辑 vim zoo.cfg
dataDir=/home/zk/data/zookeeper
dataLogDir=/home/zk/dataLog/zookeeper
3.验证单机环境:
cd /home/twan/zookeeper-3.4.12/bin
./zkServer.sh start-foreground
zookeeper 集群环境
第一步:拷贝pc_001的zk
请务必确保单机环境启动正常
然后在pc_002和pc_003确保存在 /home/twan/apps, 没有则创建
1.把pc_001的zk复制到pc_002
scp -r /home/twan/apps/zookeeper-3.4.12/ pc_002的ip地址:/home/twan/apps/
2.把pc_001的zk复制到pc_003
scp -r /home/twan/apps/zookeeper-3.4.12/ pc_003的ip地址:/home/twan/apps/
第二步:修改3台pc的zoo.cfg文件, 在文件尾增加
#这里注意:如果当前在pc_001,则ip写4个0,同理,其他两台也是.如下:
server.1=0.0.0.0:2888:3888
server.2=pc_002点ip:2888:3888
server.3=pc_003的ip:2888:3888
第三步:创建myid文件
在pc_001点机器上
cd /home/twan/apps/zookeeper-3.4.12/data/zookeeper
vi myid
内容 1 保存退出
注意点:myid里的内容只写当前的server.x所对应的序号,从1开始.我以前错误的把每台机器都写上1,2,3.
另外两台同理。
完成
以上就是所有必要的操作。然后分别在每台机器里执行:
#在每台机器启动zk
./zkServer.sh start-foreground
#最后你还可以执行验证
./zkCli.sh -server pc_001的ip:2181,pc_002的ip:2181,pc_003的ip:2181
如果一切顺利, 你会看到
为啥pc_003的启动成功不一样,我也不知道,我是另起一个终端执行 ./zkServer.sh status 才知道他是正常运行的.如果你运气好,可能比较顺利,不然你会遇到各种问题。比如以下的一个问题折腾了好久呢,
后来查了很多资料才知道,把当前所在的机器的ip设为4个0.
另外,集群环境启动的时候肯定是一个个的启动,开始启动的机器肯定会报连不上其他机器的错误,待全部启动后,再启动试试,如果提示地址被占用,表明启动是成功的。
在这中间,肯定还有许多人遇到其他的问题,发出来,大家一起看看。
结语
看似简单的zookeeper集群搭建,实则陷阱重重。遇到问题多看看错误日志。
Thanks!