在Linux操作系统中安装zookeeper和搭建集群

zookeeper安装

官网网址https://zookeeper.apache.org/releases.html
在这里插入图片描述

安装JDK

将JDK1.8文件上传到Linux操作系统中/src/locad/src文件下.
过程链接

安装zookeeper

//解压
tar -xvf apache-zookeeper-3.6.1-bin.tar.gz
//删除安装包
rm apache-zookeeper-3.6.1-bin.tar.gz
//改名
mv apache-zookeeper-3.6.1-bin zookeepers
//进入根目录
cd zookeepers/
//创建data/log
mkdir data log
//进入conf
cd conf/
//复制zoo_sample.cfg为zoo.cfg
cp zoo_sample.cfg  zoo.cfg
//修改zoo.cfg
vim zoo.cfg
//修改12.13行
 12 dataDir=/usr/local/src/zookeepers/data
 13 dataLogDir=/usr/local/src/zookeepers/log
 :wq //保存
 //进入bin
cd /usr/local/src/zookeepers/bin
//启动zk
sh zkServer.sh start

操作zk

sh zkServer.sh start     或者  ./zkServer.sh start
sh zkServer.sh stop
sh zkServer.sh status

Zookeeper集群安装

准备文件夹

cd /usr/local/src/zookeepers/
mkdir zkCluster
cd zkCluster
mkdir zk1 zk2 zk3 zk4 zk5
mkdir {zk1,zk2,zk3,zk4,zk5}/{data,log}

添加myid文件,定义编号.

分别在zk1/zk2/zk3/zk4/zk5中的data文件夹中创建新的文件myid.其中的内容依次为1/2/3/4/5,与zk节点号对应.

cd /usr/local/src/zookeepers/zkCluster/zk1/data
vim myid
//输入数字:1
//然后保存退出Esc:wq
//重复1/2/3/4/5

编辑配置文件

将zoo_sample.cfg 复制为zoo1.cfg之后修改配置文件

cd /usr/local/src/zookeepers/conf
[root@localhost conf]# cp zoo_sample.cfg  zoo1.cfg
[root@localhost conf]# vim zoo1.cfg
dataDir=/usr/local/src/zookeepers/zkCluster/zk1/data
dataLogDir=/usr/local/src/zookeepers/zkCluster/zk1/dlog
# the port at which the clients will connect
clientPort=2181
server.1=192.168.126.129:2887:3887
server.2=192.168.126.129:2888:3888
server.3=192.168.126.129:2889:3889
server.4=192.168.126.129:2890:3890
server.5=192.168.126.129:2891:3891
[root@localhost conf]# cp zoo1.cfg  zoo2.cfg
[root@localhost conf]# cp zoo1.cfg  zoo3.cfg
...
//注:修改对应文件目录名zk2/zk3...和端口2182/2183...
[root@localhost conf]# vim zoo2.cfg 
[root@localhost conf]# vim zoo3.cfg 
...

ZK集群测试

通过下面的命令启动zk集群.

sh zkServer.sh start   zoo1.cfg
sh zkServer.sh stop    zoo1.cfg
sh zkServer.sh status  zoo1.cfg

检查主从关系,从机情况说明.去bin目录打开

sh zkServer.sh start   zoo1.cfg &
sh zkServer.sh start   zoo2.cfg &
sh zkServer.sh start   zoo3.cfg &
sh zkServer.sh start   zoo4.cfg &
sh zkServer.sh start   zoo5.cfg
sh zkServer.sh status  zoo1.cfg 
sh zkServer.sh status  zoo2.cfg
sh zkServer.sh status  zoo3.cfg
...
[root@localhost bin]# sh zkServer.sh status zoo2.cfg
ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeepers/bin/../conf/zoo2.cfg
Client port found: 2182. Client address: localhost.
Mode: leader
[root@localhost bin]# sh zkServer.sh status zoo1.cfg
ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeepers/bin/../conf/zoo1.cfg
Client port found: 2181. Client address: localhost.
Mode: follower
[root@localhost bin]# sh zkServer.sh status zoo3.cfg
ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeepers/bin/../conf/zoo3.cfg
Client port found: 2183. Client address: localhost.
Mode: follower

关于zookeeper集群说明

Zookeeper集群中leader负责监控集群状态,follower主要负责客户端链接获取服务列表信息.同时参与投票.

猜你喜欢

转载自blog.csdn.net/SkyCloud_/article/details/107517940