zookeeper 3.6.3集群搭建

技术积累

使用zookeeper最新稳定版本3.6.3搭建集群


方式1:使用3台机器搭建集群(一台一个节点)
方式2:使用1台机器搭建(伪集群,一台3个节点)


使用centos7系统,已安装好jdk,机器之间端口互通


方式1,使用3台机器搭建

下载zookeeper并配置(3台机器都要操作,个别步骤会单独标出)

# 下载
wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz

# 解压移动重命名
mkdir /data/
tar xf apache-zookeeper-3.6.3-bin.tar.gz
mv apache-zookeeper-3.6.3-bin /data/zookeeper-3.6.3

# 创建存放的数据目录和myid标示
mkdir /data/zkdata/

# 第1台
echo "1" > /data/zkdata/myid
# 第2台
echo "2" > /data/zkdata/myid
# 第3台
echo "3" > /data/zkdata/myid

# 修改配置文件(基本默认不动,只用修改数据目录和添加下server节点)
cd /data/zookeeper-3.6.3/
cp conf/zoo_sample.cfg conf/zoo.cfg
vim conf/zoo.cfg

#1修改数据日志目录
dataDir=/data/zkdata/
dataLogDir=/data/zkdata/logs

#2添加server节点(这个1 2 3 要对应各节点数据目录中文件myid的值)
server.1=192.168.16.200:2888:3888
server.2=192.168.16.201:2888:3888
server.3=192.168.16.202:2888:3888

启动zookeeper(3台)

# 启动
/data/zookeeper-3.6.3/bin/zkServer.sh start

# 查看状态
/data/zookeeper-3.6.3/bin/zkServer.sh status

# 停止
/data/zookeeper-3.6.3/bin/zkServer.sh stop

# 重启
/data/zookeeper-3.6.3/bin/zkServer.sh restart

zk.png




方式2,使用1台机器搭建

下载zookeeper并配置

# 下载
wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz

# 解压移动重命名
mkdir -p /data/zk/
tar xf apache-zookeeper-3.6.3-bin.tar.gz
mv apache-zookeeper-3.6.3-bin /data/zk/zookeeper1
cp -r /data/zk/zookeeper1 /data/zk/zookeeper2
cp -r /data/zk/zookeeper1 /data/zk/zookeeper3

# 创建节点存放的数据和日志目录和myid标示
mkdir -p /data/zkdata/zkdata1/logs
mkdir -p /data/zkdata/zkdata2/logs
mkdir -p /data/zkdata/zkdata3/logs

echo "1" > /data/zkdata/zkdata1/myid
echo "2" > /data/zkdata/zkdata1/myid
echo "3" > /data/zkdata/zkdata1/myid

# 配置文件(基本默认不动,只用修改数据目录和日志目录和添加下server节点)
cd /data/zk/zookeeper1/
cp conf/zoo_sample.cfg conf/zoo.cfg

cd /data/zk/zookeeper2/
cp conf/zoo_sample.cfg conf/zoo.cfg

cd /data/zk/zookeeper3/
cp conf/zoo_sample.cfg conf/zoo.cfg

节点配置文件修改

# zookeeper3.5版本后提供了jetty默认后台管理8080端口,访问地址为:http://localhost:8080/commands/stat
# 同一台机器上启动多个节点会有冲突,解决办法:
# 启动脚本中修改 -Dzookeeper.admin.serverPort=xxx
# zoo.cfg配置文件中 修改配置admin.serverPort=xxx
# -Dzookeeper.admin.enableServer=false 在启动脚本中关闭管理控制台

# 修改节点1配置文件
vim conf/zoo.cfg

dataDir=/data/zkdata/zkdata1/
dataLogDir=/data/zkdata/zkdata1/logs
clientPort=2181
admin.serverPort=8081
server.1=192.168.16.206:2881:3881
server.2=192.168.16.206:2882:3882
server.3=192.168.16.206:2883:3883

# 修改节点2配置文件
vim conf/zoo.cfg

dataDir=/data/zkdata/zkdata2/
dataLogDir=/data/zkdata/zkdata2/logs
clientPort=2182
admin.serverPort=8082
server.1=192.168.16.206:2881:3881
server.2=192.168.16.206:2882:3882
server.3=192.168.16.206:2883:3883

# 修改节点3配置文件
vim conf/zoo.cfg

dataDir=/data/zkdata/zkdata3/
dataLogDir=/data/zkdata/zkdata3/logs
clientPort=2183
admin.serverPort=8083
server.1=192.168.16.206:2881:3881
server.2=192.168.16.206:2882:3882
server.3=192.168.16.206:2883:3883

分别启动zookeeper的3个节点

# 启动
/data/zk/zookeeper1/bin/zkServer.sh start
/data/zk/zookeeper2/bin/zkServer.sh start
/data/zk/zookeeper3/bin/zkServer.sh start

# 查看状态
/data/zk/zookeeper1/bin/zkServer.sh status
/data/zk/zookeeper2/bin/zkServer.sh status
/data/zk/zookeeper3/bin/zkServer.sh status

# 停止
/data/zk/zookeeper1/bin/zkServer.sh stop
/data/zk/zookeeper2/bin/zkServer.sh stop
/data/zk/zookeeper3/bin/zkServer.sh stop

# 重启
/data/zk/zookeeper1/bin/zkServer.sh restart
/data/zk/zookeeper2/bin/zkServer.sh restart
/data/zk/zookeeper3/bin/zkServer.sh restart

zk1.png

相关文章

留言