0


zk集群搭建

ZooKeeper集群搭建

1.准备工作

1.1准备三台虚拟机

192.168.17.128    VM01
192.168.17.129    VM02
192.168.17.130    VM03

1.2修改虚拟机主机名

# 输入以下命令,编辑文件vim /etc/hosts

按i进入编辑,在文件末尾加入以下内容

192.168.17.128    VM01
192.168.17.129    VM02
192.168.17.130    VM03

按Esc,输入:wq,保存并退出

在这里插入图片描述

重启虚拟机

# 执行命令,重启虚拟机reboot

输入hostname查看效果

hostname

在这里插入图片描述

重复上述步骤,在其他虚拟机上执行相同操作

1.3配置ssh服务,进行免密登录

输入ssh-keygen -t rsa,之后一直回车

ssh-keygen -t rsa

在这里插入图片描述

输入ssh-copy-id +主机名(密码是你的root密码)

ssh-copy-id +主机名

给自己做免密登录

重复上述步骤,在其他虚拟机上也做免密登录

1.4关闭防火墙

# 关闭防火墙
systemctl stop firewalld
# 永久关闭防火墙
systemctl disable firewalld

在这里插入图片描述

重复上述步骤,在其他虚拟机上执行相同操作

1.5准备ZooKeeper安装包

在官网下载自己做需要的资源https://zookeeper.apache.org/releases.html

在虚拟机/opt/目录下创建文件目录module,并将ZooKeeper安装包上传至/opt/module/目录下

在这里插入图片描述

2.解压资源

# 进入/opt/module/目录下cd /opt/module
# 解压tar-zxvf apache-zookeeper-3.8.0-bin.tar.gz
# 将解压后的文件移动至zookeeper目录下mv apache-zookeeper-3.8.0-bin zookeeper

注:根据实际情况将文件名替换为自己上传的安装包

3.修改配置文件

# 进入/zookeeper/conf目录cd ./zookeeper/conf
# 添加zookeeper配置文件cp zoo_sample.cfg zoo.cfg
# 创建数据存放目录mkdir /opt/module/zookeeper/conf/data
#编辑zoo.cfgvim zoo.cfg
# 添加如下内容server.1=VM01:2188:2888
server.2=VM02:2188:2888
server.3=VM03:2188:2888
# 修改dataDirdataDir=/opt/module/zookeeper/conf/data

在这里插入图片描述

# 配置文件保存退出后,进入data目录cd ./data
# 生成myid文件,指定myid服务号echo"1"> myid

4.将ZooKeeper目录分发到其他节点

# 将zookeeper目录分发到其他节点scp-r /opt/module/zookeeper VM02:/opt/module/zookeeper
scp-r /opt/module/zookeeper VM03:/opt/module/zookeeper

5.修改其他节点的myid文件

登录VM02节点

#指定myid服务号为 2vim /opt/module/zookeeper/conf/data/myid

登录VM03节点

#指定myid服务号为 3vim /opt/module/zookeeper/conf/data/myid

6.编写操作ZooKeeper集群的脚本

# 进入zookeeper的bin目录下cd /opt/module/zookeeper/bin
# 创建zookeeper启动脚本vim zk.sh
# 添加如下内容#!/bin/bashcase$1in"start"){foriin VM01 VM02 VM03
    doecho -------------------------------- $i zookeeper 启动 ---------------------------
        ssh$i"/opt/module/zookeeper/bin/zkServer.sh start"done};;"stop"){foriin VM01 VM02 VM03
    doecho -------------------------------- $i zookeeper 停止 ---------------------------
        ssh$i"/opt/module/zookeeper/bin/zkServer.sh stop"done};;"status"){foriin VM01 VM02 VM03
    doecho -------------------------------- $i zookeeper 状态 ---------------------------
        ssh$i"/opt/module/zookeeper/bin/zkServer.sh status"done};;esac

修改脚本权限

# 保存退出后,修改zk.sh脚本执行权限chmod +x ./zk.sh

脚本的命令说明

# 启动集群命令
./zk.sh start
# 停止集群命令
./zk.sh stop
# 查看集群状态命令
./zk.sh status

7.启动集群

# 进入zookeeper目录cd /opt/module/zookeeper
# 启动zookeeper集群
./bin/zk.sh start

在这里插入图片描述

注:有的zk集群启动会报如下错误

检查以下java环境是否正确

# 检查java环境java-version

在这里插入图片描述

如果java环境正确,则编辑zkEnv.sh

启动zk时,首先会加载zkEvn.sh脚本文件

# 编辑zkEnv.shvim /opt/module/zookeeper/bin/zkEnv.sh

在这里插入图片描述

通过配置文件发现,在加载配置文件的时候他会验证JAVA_HOME环境变量,验证不通过的话就会报下面错误

Error: JAVA_HOME is not set and java could not be found inPATH.

直接把JAVA_HOME的配置信息,写在zkEvn.sh脚本文件

在这里插入图片描述

之后就可以顺了启动了

标签: zookeeper linux

本文转载自: https://blog.csdn.net/weixin_45263201/article/details/127928182
版权归原作者 梦中人w 所有, 如有侵权,请联系我们删除。

“zk集群搭建”的评论:

还没有评论