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
更多内容,请访问:http://www.cnblogs.com/BlueStarWei
原文地址:https://www.cnblogs.com/BlueStarWei/p/15144905.html