架构说明:
Dubbo 建议使用 Zookeeper 作为服务的注册中心。Zookeeper 集群中只要有过半的节点是正常的情况下,那么整个集群对外就是可用的。正是基于这个特性, 要将 ZK 集群的节点数量要为奇数(2n+1: 如 3、 5、 7 个节点)较为合适

ZK集群部署规划:

环境

版本详细

zookeeper版本

zookeeper-3.4.12

Centos版本

6.8

jdk版本

1.8.0_144

ZK集群环境部署:

主机

端口

端口2

端口3

目录

192.168.43.188

2181

2888

3888

/app/zk_01

192.168.43.44

2181

2888

3888

/app/zk_02

192.168.43.24

2181

2888

3888

/app/zk_03

zk端口说明:

端口

说作用明

2181

对cline端提供服务

2888

集群内机器通讯使用(Leader监听此端口)

3888

选举leader使用

zk常用命令:

命令

说明

./zkServer.sh start

启动zk

./zkServer.sh stop

停止zk

./zkServer.sh status

查看zk状态

./zkServer.sh restart

重新启动zk

文章目录

一、ZK下载

1. 分别在188,44,24下载或复制

主机名

IP地址

官网

​https://archive.apache.org/dist/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz ​

wget下载

​wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz​

二、解压/安装/配置

2.1. node1_188_zk01

#解压到/app目录下
tar -zxf zookeeper-3.4.12.tar.gz -C /app/
#重命名
mv zookeeper-3.4.12/ zk_01
#进入conf目录
cd /app/zk_01/conf/
#更新备份配置文件
cp zoo_sample.cfg zoo.cfg
#进入zk根目录下
cd zk_01/
#创建dataDir目录和dataLogDir日志目录
mkdir dataDir
mkdir dataLogDir
#添加数据目录和日志文件目录
cd /app/zk_01/conf/
vim zoo.cfg
dataDir=/app/zk_01/dataDir
dataLogDir=/app/zk_01/dataLogDir

2.2. node2_44_zk02

#解压到/app目录下
tar -zxf zookeeper-3.4.12.tar.gz -C /app/
#重命名
mv zookeeper-3.4.12/ zk_02
#进入conf目录
cd /app/zk_02/conf/
#更新备份配置文件
cp zoo_sample.cfg zoo.cfg
#进入zk根目录下
cd zk_02/
#创建dataDir目录和dataLogDir日志目录
mkdir dataDir
mkdir dataLogDir
#添加数据目录和日志文件目录
cd /app/zk_02/conf/
vim zoo.cfg
dataDir=/app/zk_02/dataDir
dataLogDir=/app/zk_02/dataLogDir

2.3. node3_24_zk03

#解压到/app目录下
tar -zxf zookeeper-3.4.12.tar.gz -C /app/
#重命名
mv zookeeper-3.4.12/ zk_03
#进入conf目录
cd /app/zk_03/conf/
#更新备份配置文件
cp zoo_sample.cfg zoo.cfg
#进入zk根目录下
cd zk_03/
#创建dataDir目录和dataLogDir日志目录
mkdir dataDir
mkdir dataLogDir
#添加数据目录和日志文件目录
cd /app/zk_03/conf/
vim zoo.cfg
dataDir=/app/zk_03/dataDir
dataLogDir=/app/zk_03/dataLogDir

三、集群配置

3.1. node_188_zk01

#创建myid文件,写入0
cd /app/zk_01
echo 0 > dataDir/myid
#添加集群配置
vim /app/zk_01/conf/zoo.cfg
#添加集群信息
server.0=192.168.43.188:2888:3888
server.1=192.168.43.44:2888:3888
server.2=192.168.43.24:2888:3888

3.2. node2_44_zk02

#创建myid文件,写入1
cd /app/zk_02
echo 1 > dataDir/myid
#添加集群配置
vim /app/zk_02/conf/zoo.cfg
#添加集群信息
server.0=192.168.43.188:2888:3888
server.1=192.168.43.44:2888:3888
server.2=192.168.43.24:2888:3888

3.3. node3_24_zk03

#创建myid文件,写入2
cd /app/zk_03
echo 2 > dataDir/myid
#添加集群配置
vim /app/zk_03/conf/zoo.cfg
#添加集群信息
server.0=192.168.43.188:2888:3888
server.1=192.168.43.44:2888:3888
server.2=192.168.43.24:2888:3888

四、启动/连接zookeeper集群

4.1. node_zk01_188

#进入zk根目录,
cd zk01/
#启动zk01
bin/zkServer.sh start
#查看zk启动状态
bin/zkServer.sh status

Linux 环境 zookeeper集群安装、配置、测试_Zookeeper

4.2. node2_zk02_44

#进入zk根目录,
cd zk02/
#启动zk01
bin/zkServer.sh start
#查看zk启动状态
bin/zkServer.sh status

Linux 环境 zookeeper集群安装、配置、测试_zookeeper_02

4.3. node3_zk03_24

#进入zk根目录,
cd zk03/
#启动zk01
bin/zkServer.sh start
#查看zk启动状态
bin/zkServer.sh status

Linux 环境 zookeeper集群安装、配置、测试_zookeeper_03