初学zookeeper,搭建过程记录下来,以便自己以后方便查看。
准备三台虚拟机
192.168.192.128
192.168.192.129
192.168.192.130
首先三台都安装好java环境,我选择的的1.8.0_151的版本 详情安装过程点击查看
准备好zookeeper的安装包
第一步
解压到你准备的目录 比如 /usr/local
tar -zxvf zookeeper-3.4.9.tar.gz -C /usr/local
第二步
编辑配置文件
cd /usr/local/zookeeper-3.4.9/conf
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
#修改为下面的样子 注意结合自己的ip
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper
dataLogDir=/data/zookeeper/logs
clientPort=2181
server.1=192.168.192.128:2888:3888
server.2=192.168.192.130:2888:3888
server.3=192.168.192.129:2888:3888
创建文件夹
mkdir -pv /data/zookeeper
创建myid文件
echo "1" > /data/zookeeper/myid
#注意 三台机器的myid和自己的zoo.fcg里的server.x 对应上 而且不能重复
第三步
启动zookeeper
cd /usr/local/zookeeper-3.4.9/bin
./zkServer.sh start
检测是否启动
[root@zk1]netstat -antp | grep -E "2181|2888|3888"
tcp6 0 0 :::2181 :::* LISTEN 1262/java
tcp6 0 0 192.168.192.130:3888 :::* LISTEN 1262/java
tcp6 0 0 192.168.192.130:3888 192.168.192.129:47800 ESTABLISHED 1262/java
[root@zk2]# netstat -antp | grep -E "2181|2888|3888"
tcp6 0 0 192.168.192.128:3888 :::* LISTEN 1235/java
tcp6 0 0 :::2181 :::* LISTEN 1235/java
[root@zk3]# netstat -antp | grep -E "2181|2888|3888"
tcp6 0 0 192.168.192.128:3888 :::* LISTEN 1234/java
tcp6 0 0 :::2181 :::* LISTEN 1234/java
拥有两个3888端口为leader 目前zk1为leader
连接测试
[root@localhost zk2]cd /usr/local/zookeeper-3.4.9/bin
[root@localhost zk2 bin]# ./zkCli.sh -server 192.168.192.128:2181
Connecting to 192.168.192.128:2181
......
......
......
[zk: 192.168.192.128:2181(CONNECTED) 0]
[zk: 192.168.192.128:2181(CONNECTED) 0] quit
Quitting...
2021-11-11 14:05:51,444 [myid:] - INFO [main:ZooKeeper@684] - Session: 0x17d09668e000001 closed
2021-11-11 14:05:51,446 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@519] - EventThread shut down for session: 0x17d09668e000001
[root@zk2]#
出现的问题
如果telnet测试连接出现问题,检测是否关闭防火墙和selinux