Zookeeper之伪集群配置

 

集群通常配置在多台服务器上,伪集群是指将集群配置到一台服务器上。现在很多分布式应用都采用集群配置,但是在测试环节,由于资源的局限性、以及测试的方便,常常将集群配置到一台服务器上,即使用伪集群来达到集群效果。

在真实的集群环境中,可以参照伪集群的配置方式,实现真实的集群配置。

本文可以参照Zookeeper安装 - blue星空 - 博客园 (cnblogs.com)加强理解。

下面主要讲解Zookeeper伪集群的配置,该伪集群包含:一个leader、两个follow,一个observer。

  • 下载zookeeper安装包
链接  :https://pan.baidu.com/s/1ftS8orpWhXTqNeSu920O9w
提取码:Winn
  • 解压zookeeper安装包
tar -zxvf zookeeper-3.4.5.tar.gz -C apps/
  • 创建zkdata目录以及子目录zk1、zk2、zk3、zk4:用于配置dataDir
##切换到安装目录下
cd /root/apps/packages/zookeeper-3.4.5

mkdir zkdata
mkdir zkdata/zk1
mkdir zkdata/zk2
mkdir zkdata/zk3
mkdir zkdata/zk4
  • 创建并存储myid
echo 1 > zkdata/zk1/myid
echo 2 > zkdata/zk2/myid
echo 3 > zkdata/zk3/myid
echo 4 > zkdata/zk4/myid
  • 创建配置文件
cd conf

cp zoo_sample.cfg zoo1.cfg
cp zoo_sample.cfg zoo2.cfg
cp zoo_sample.cfg zoo3.cfg
cp zoo_sample.cfg zoo4.cfg
  • 修改配置文件
复制代码
##修改数据目录
sed -i 's#/tmp/zookeeper#/root/apps/packages/zookeeper-3.4.5/zkdata/zk1#g' zoo1.cfg
sed -i 's#/tmp/zookeeper#/root/apps/packages/zookeeper-3.4.5/zkdata/zk2#g' zoo2.cfg
sed -i 's#/tmp/zookeeper#/root/apps/packages/zookeeper-3.4.5/zkdata/zk3#g' zoo3.cfg
sed -i 's#/tmp/zookeeper#/root/apps/packages/zookeeper-3.4.5/zkdata/zk4#g' zoo4.cfg

##修改端口号
sed -i "s#2181#2182#g" zoo2.cfg
sed -i "s#2181#2183#g" zoo3.cfg
sed -i "s#2181#2184#g" zoo4.cfg

##配置集群信息
echo "server.1=172.23.34.13:2001:3001
server.2=172.23.34.13:2002:3002
server.3=172.23.34.13:2003:3002
server.4=172.23.34.13:2004:3003:observer" >> zoo1.cfg

echo "server.1=172.23.34.13:2001:3001
server.2=172.23.34.13:2002:3002
server.3=172.23.34.13:2003:3002
server.4=172.23.34.13:2004:3003:observer" >> zoo2.cfg

echo "server.1=172.23.34.13:2001:3001
server.2=172.23.34.13:2002:3002
server.3=172.23.34.13:2003:3002
server.4=172.23.34.13:2004:3003:observer" >> zoo3.cfg

echo "server.1=172.23.34.13:2001:3001
server.2=172.23.34.13:2002:3002
server.3=172.23.34.13:2003:3002
server.4=172.23.34.13:2004:3003:observer" >> zoo4.cfg
复制代码
  • 配置环境变量
#修改/etc/profile
export ZOOKEEPER_HOME=/root/apps/packages/zookeeper-3.4.5
export PATH=$PATH:$ZOOKEEPER_HOME/bin

##刷新配置文件,使配置生效
source /etc/profile
  • 启动服务器
zkServer.sh start /root/apps/packages/zookeeper-3.4.5/conf/zoo1.cfg
zkServer.sh start /root/apps/packages/zookeeper-3.4.5/conf/zoo2.cfg
zkServer.sh start /root/apps/packages/zookeeper-3.4.5/conf/zoo3.cfg
zkServer.sh start /root/apps/packages/zookeeper-3.4.5/conf/zoo4.cfg
  • 查看状态
zkServer.sh status /root/apps/packages/zookeeper-3.4.5/conf/zoo1.cfg
zkServer.sh status /root/apps/packages/zookeeper-3.4.5/conf/zoo2.cfg
zkServer.sh status /root/apps/packages/zookeeper-3.4.5/conf/zoo3.cfg
zkServer.sh status /root/apps/packages/zookeeper-3.4.5/conf/zoo4.cfg
  • 启动客户端
zkCli.sh -server 172.23.34.13:2181,172.23.34.13:2182,172.23.34.13:2183,172.23.34.13:2184

 

posted @   blue星空  阅读(283)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示