zookeeper的安装和集群搭建

1:准备

我们还是准备上次搭建 rocketmq 集群的四台虚拟机来搭建,分别是 rocketmq-151, rocketmq-152, rocketmq-153, rocketmq-154

2:集群搭建

2.1:源码下载

ZooKeeper 官网地址:https://zookeeper.apache.org
我们进去到官网
在这里插入图片描述
点击下载后页面会跳转到选择版本页
在这里插入图片描述
来到下载页面,点击下载即可
在这里插入图片描述

2.2:上传到 rocketmq-151 中并解压文件夹

通过 xftp 将源码上传到 rocketmq-151 中,我是存放到了 zookeeper 的文件夹中。
来到 zookeeper 文件夹,继行解压

cd zookeeper/

# 解压
 tar xf apache-zookeeper-3.7.0-bin.tar.gz 

# 重命名
mv apache-zookeeper-3.7.0-bin apache-zookeeper-3.7.0

在这里插入图片描述

2.3:修改配置文件

我们来到配置文件的文件夹,首先复制一份模板作为存根(个人习惯),再去配置配置文件

cd apache-zookeeper-3.7.0/conf/
ls
cp zoo_sample.cfg  zoo.cfg
vi zoo.cfg 

在这里插入图片描述
前面的一些配置信息,我们修改一下持久化目录,在下面添加如下内容

# 修改持久化目录
# 我这边修改成   /var/zookeeper/zk

server.1=192.168.10.151:2888:3888
server.2=192.168.10.152:2888:3888
server.3=192.168.10.153:2888:3888
server.4=192.168.10.154:2888:3888

在这里插入图片描述

2.4:创建持久化目录并创建 myid

前面我们设置了持久化目录,但实际上我并没有这个目录,所以需要我们创建,创建完成后,我们去到那个目录

mkdir -p   /var/zookeeper/zk
cd  /var/zookeeper/zk

在这里插入图片描述
在这个目录下创建 myid ,并把前面设置的 myid 写入进去

# 创建 myid ,写入1
vi myid

在这里插入图片描述

2.5:将源码复制到其余三台机器

1:将 zookeeper 文件夹远程复制到 152

cd /home/

# 将 zookeeper 文件夹远程复制到 152 相同的目录下,中间需要输入yes 和密码
 scp -r  ./zookeeper/ 192.168.10.152:`pwd` 

在这里插入图片描述
2:将 zookeeper 文件夹远程复制到 153,中间需要输入yes 和密码

 scp -r  ./zookeeper/ 192.168.10.153:`pwd` 

在这里插入图片描述
3:将 zookeeper 文件夹远程复制到 154,中间需要输入yes 和密码

 scp -r  ./zookeeper/ 192.168.10.154:`pwd` 

在这里插入图片描述

2.6:152,153,154 创建 myid 文件夹

1:首先是 152

# 创建 文件夹
mkdir -p /var/zookeeper/zk

# 将2 写入myid ,myid 不存在的话自动创建
echo 2 > /var/zookeeper/zk/myid 

# 查看myid 的数据
cat  /var/zookeeper/zk/myid 

在这里插入图片描述
2:然后是 153

# 创建 文件夹
mkdir -p /var/zookeeper/zk

# 将3 写入myid ,myid 不存在的话自动创建
echo 3 > /var/zookeeper/zk/myid 

# 查看myid 的数据
cat  /var/zookeeper/zk/myid 

在这里插入图片描述
3:最后是 154

# 创建 文件夹
mkdir -p /var/zookeeper/zk

# 将4 写入myid ,myid 不存在的话自动创建
echo 4 > /var/zookeeper/zk/myid 

# 查看myid 的数据
cat  /var/zookeeper/zk/myid 

在这里插入图片描述

2.7:四台机器配置环境变量

1:对于 151机器

vi /etc/profile

输入以下内容

# zookeeper
export ZOOKEEPER_HOME=/home/zookeeper/apache-zookeeper-3.7.0
export PATH=$PATH:$ZOOKEEPER_HOME/bin

在这里插入图片描述
然后,执行命令,刷新配置 ,就可以在任何地方输入 zk+Tab键 ,去发现 zookeeper 指令了

source /etc/profile

在这里插入图片描述
2:因为四台机器的配置文件都是一样的,所以我这边直接通过覆盖来完成,过程中输入密码

scp  /etc/profile  192.168.10.152:/etc
scp  /etc/profile  192.168.10.153:/etc
scp  /etc/profile  192.168.10.154:/etc

在这里插入图片描述
完成后需要在另外三台机器执行刷新配置的操作,我这里操作全部会话,也可以分别去刷新

source /etc/profile

在这里插入图片描述

2.8:关闭防火墙

四台机器都要执行以下命令:

# 查看防火墙状态
systemctl status firewalld 

# 暴力:禁用防火墙
systemctl stop firewalld  

# 查看防火墙状态
systemctl status firewalld 

在这里插入图片描述

2.9:启动客户端

经过我们上面的操作,启动方式有两种

# 后台启动
zkServer.sh  start

# 前台启动(我们使用这个,可以查看日志)
zkServer.sh  start-foreground

根据我们前面的论述,谁的 myid 比较大,过半选举的时候就会被选择成 leader
我们分别启动四台机器,通过前台启动
在这里插入图片描述
查看 节点角色
先打开 153,

zkServer.sh status

在这里插入图片描述
先打开 154

zkServer.sh status

在这里插入图片描述
可以看出 154 是 leader,153 是跟随者。

2.10:选主测试

我们手动断开 154,停几秒,观察 153 的角色信息
先断开 154
在这里插入图片描述
查看 153 的角色信息,已经从跟随者变成了 leader

zkServer.sh status

在这里插入图片描述

3:简单使用

3.1:连接客户端

四个机器中的任何一个都可以建立连接,默认连接本机。

zkCli.sh

在这里插入图片描述

3.2:常用命令

# 显示根
ls /

# 创建节点,”“ 中是数据,”“不能省略     格式: create /节点名称/...  ”数据“
create  /k1  "k1"
create /k1/k2 "k2"

# 设置节点数据
set  /k1 "other"

# 获取节点信息
get   /k1

# 创建临时节点
create -e /xoxo ""  

# 删除节点
rmr  /k1/k2


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值