SpringBoot学习之环境搭建篇(一)1.3 - zookeeper

目录

一、单台服务器 - 配置成集群模式

1、下载zookeeper-3.4.14文件

1-1、说明

1-2、本次安装的下载地址

1-3、查找稳定版本地址

2、开始安装zookeeper

3、配置zoo.cfg的内容

3-1、说明

3-2、配置一个zoo.cfg,内容如图所示。

3-3、复制配置好的zoo.cfg,给其它两个节点

3-4、对dataDir地址修改

3-5、对地址修改dataLogDir

3-6、对clientPort端口号更改

4、新增myid

5、启动服务

6、 查看服务是否启动

7、停止服务

8、小问题

二、多台服务器 - 配置成集群模式

1、下载安装zookeeper-3.4.14文件

2、与单机集群不同之处

2-1、server.id=host:port1:port2 的配置

2-2、server.id被称为server ID

2-3、port1:port2的含义


一、单台服务器 - 配置成集群模式

说明:使用zookeeper提供配置管理、名字服务以及分布式同步集群管理;之后程序会采用dubbo分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案(以服务者与消费者的方式在dubbo上注册)。

1、下载zookeeper-3.4.14文件

1-1、说明

3.4.14之后还有3.5.x以上的版本,3.5之后的版本下载跟之前的不一样(3.5.x版本之后,应下载 apache-zookeeper-x.x.x-bin.tar.gz ,而不是 apache-zookeeper-x.x.x.tar.gz

如果3.5之后使用的是 apache-zookeeper-x.x.x.tar.gz安装,启动的时候就会报:Could not find or load main class org.apache.zookeeper.ZooKeeperMain

1-2、本次安装的下载地址

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

1-3、查找稳定版本地址

https://archive.apache.org/dist/zookeeper/stable/

2、开始安装zookeeper

# 1. 创建新的文件目录:zookeeper
mkdir /app/zookeeper/
# 2. 解压下载的文件到指定目录(需要进入到文件同目录下)
tar -xzvf zookeeper-3.4.14.tar.gz -C /app/zookeeper/
# 3. 或在当前目录下解压:
tar -xzvf zookeeper-3.4.14.tar.gz
# 4. 复制三份zookeeper。做成不同的集群
cp -a /app/zookeeper/zookeeper-3.4.14 zookeeper-1
cp -a /app/zookeeper/zookeeper-3.4.14 zookeeper-2
cp -a /app/zookeeper/zookeeper-3.4.14 zookeeper-3
# 5. 在目录/app/zookeeper/zookeeper-1/conf下新增zoo.cfg的文件
cp -a /app/zookeeper/zookeeper-1/conf/zoo_sample.cfg zoo.cfg

3、配置zoo.cfg的内容

3-1、说明

如果ip使用的是阿里云外部ip就会造成无法启用,需要改成0.0.0.0;如下各节点server.X需要配置成

server.1=0.0.0.0:2888:3888

server.2=0.0.0.0:2889:3889

server.3=0.0.0.0:2890:3890

3-2、配置一个zoo.cfg,内容如图所示。

3-3、复制配置好的zoo.cfg,给其它两个节点

# 复制配置好的zoo.cfg,给其它两个节点
cp -a zoo.cfg /app/zookeeper/zookeeper-2/conf/
cp -a zoo.cfg /app/zookeeper/zookeeper-3/conf/

3-4、对dataDir地址修改

zookeeper-2:dataDir=/app/zookeeper/logs/zoo2/data

zookeeper-3:dataDir=/app/zookeeper/logs/zoo3/data

3-5、对地址修改dataLogDir

zookeeper-2:dataLogDir=/app/zookeeper/logs/zoo2/datalog

zookeeper-3:dataLogDir=/app/zookeeper/logs/zoo3/datalog

3-6、对clientPort端口号更改

zookeeper-2:2181

zookeeper-3:2191

4、新增myid

# 用来标识该机器在集群中的机器序号(路径要先新增mkdir 路径)
echo "1" > /app/zookeeper/logs/zoo1/data/myid
echo "2" > /app/zookeeper/logs/zoo2/data/myid
echo "3" > /app/zookeeper/logs/zoo3/data/myid

5、启动服务

sh /app/zookeeper/zookeeper-1/bin/zkServer.sh start
sh /app/zookeeper/zookeeper-2/bin/zkServer.sh start
sh /app/zookeeper/zookeeper-3/bin/zkServer.sh start

6、 查看服务是否启动

sh /app/zookeeper/zookeeper-1/bin/zkServer.sh status
sh /app/zookeeper/zookeeper-2/bin/zkServer.sh status
sh /app/zookeeper/zookeeper-3/bin/zkServer.sh status
# 或
ps -aux | grep zookeeper

7、停止服务

sh /app/zookeeper/zookeeper-1/bin/zkServer.sh stop
sh /app/zookeeper/zookeeper-2/bin/zkServer.sh stop
sh /app/zookeeper/zookeeper-3/bin/zkServer.sh stop

8、小问题

说明:从配置到启东一系列问题

8-1、复制其它两个节点时,忘了更改zoo.cfg的配置

8-2、启动报错

问题:[QuorumPeer[myid=1]/0:0:0:0:0:0:0:0:2171:QuorumPeer$QuorumServer@185] - Resolved hostname: 47.101.176.160 to address: /47.101.176.160

① 刚开始增加了端口允许通过(TCP协议),但是还没有解决链接问题

② 最后网上找了下,发现是阿里云服务器上配置时,host需要是0.0.0.0,即下所示

server.1=0.0.0.0:2888:3888

server.2=0.0.0.0:2889:3889

server.3=0.0.0.0:2890:3890

二、多台服务器 - 配置成集群模式

说明:操作和单台及器配置方式一样,不同之处在于配置

1、下载安装zookeeper-3.4.14文件

① 把下载好的zookeeper-3.4.14文件,分别复制到其它几个机器上

② 并按照单机集群的配置方式一样,配置之后的内容

2、与单机集群不同之处

2-1、server.id=host:port1:port2 的配置

说明:host即ip地址,使用的是不同机器对外的ip地址;port1和port2各机器配置可以一样,如下所示:

server.1=47.101.176.11:2889:3888

server.2=47.101.176.12:2889:3889

server.3=47.101.176.13:2889:3890

2-2、server.id被称为server ID

注:用来标识该机器在集群中的机器序号

① 在每台机器的dataDir目录下创建myid文件

② 文件内容即为该机器对应的Server ID数字

③ 如下所示:在不同的服务器分别执行

     echo "1" > /app/zookeeper/zoo/data/myid

     echo "2" > /app/zookeeper/zoo/data/myid

     echo "3" > /app/zookeeper/zoo/data/myid

2-3、port1:port2的含义

· port1用于指定Follower服务器与Leader服务器进行通信和数据同步的端口

· port2用于进行Leader选举过程中的投票通信

· 如:server.1=IP1:2889:3889【2889:访问 zookeeper 的端口;3889:重新选举 leader 的端口】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员的微笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值