ZooKeeper集群的搭建

1. Zookeeper集群搭建指的是ZooKeeper分布式模式安装。通常由2n+1台
   server组成。这是因为为了保证Leader选举.(基于Paxos算法的实现)能够
   得到多数的支持,所以ZooKeeper集群的数量一般为奇数。
2. Zookeeper运行需要java环境,所以需要提前安装jdk。对于安装
  leader+follower模式的集群,大致过程如下:leader+follower+ Observer
			2.1 配置主机名称到IP地址映射配置
			2.2 修改ZooKeeper配置文件
			2.3 远程复制分发安装文件
			2.4 设置myid
			2.5 启动ZooKeeper集群
			
如果要想使用Observer模式,可在对应节点的配置文件添加如下配置:
peerType=observer  
其次,必须在配置文件指定哪些节点被指定为Observer,如:
server.1:node1:2181:3181:observer 

这里,我们安装的是leader+follower模式

1: 第一步:下载zookeeeper的压缩包,下载网址如下
http://archive.apache.org/dist/zookeeper/
下载完成之后,上传到我们的linux的/export/software(自己创建)路径下准备进行安装

2: 第二步:解压

在afu01主机上,解压zookeeper的压缩包到/export/server路径下去,然后准备进行安装
cd /export/software
tar -zxvf zookeeper-3.4.6.tar.gz -C /export/server/

3: 第三步:修改配置文件

在afu01主机上,修改配置文件
cd /export/server/zookeeper-3.4.6/conf/
cp zoo_sample.cfg zoo.cfg
mkdir -p /export/server/zookeeper-3.4.6/zkdatas/
vim  zoo.cfg


修改以下内容
#Zookeeper的数据存放目录
dataDir=/export/server/zookeeper-3.4.6/zkdatas
# 保留多少个快照
autopurge.snapRetainCount=3
# 日志多少小时清理一次
autopurge.purgeInterval=1
# 集群中服务器地址

server.1=afu01:2888:3888
server.2=afu02:2888:3888
server.3=afu03:2888:3888

4: 第四步:添加myid配置

在afu01主机的/export/server/zookeeper-3.4.6/zkdatas/这个路径下创建一个文件,文件名为myid ,文件内容为1
echo 1 > /export/server/zookeeper-3.4.6/zkdatas/myid 

5: 第五步:安装包分发并修改myid的值

在afu011主机上,将安装包分发到其他机器
第一台机器上面执行以下两个命令
scp -r  /export/server/zookeeper-3.4.6/ afu02:/export/server/
scp -r  /export/server/zookeeper-3.4.6/ afu03:/export/server/

第二台机器上修改myid的值为2
echo 2 > /export/server/zookeeper-3.4.6/zkdatas/myid

第三台机器上修改myid的值为3
echo 3 > /export/server/zookeeper-3.4.6/zkdatas/myid

6: 第六步:三台机器启动zookeeper服务

三台机器分别启动zookeeper服务
这个命令三台机器都要执行
/export/server/zookeeper-3.4.6/bin/zkServer.sh start

三台主机分别查看启动状态(leader,flower)
/export/server/zookeeper-3.4.6/bin/zkServer.sh  status

还可以使用jps命令查看Zookeeper的进程

到此 : ZooKeeper 安装配置完成

附录: Zookeeper的一键启动的shell脚本

vim zk.sh 创建编辑新文件

#写入一下内容
if [ start = $1 ]
 then
        echo -e "\033[31m -----------开始启动 Zookeeper---------------- \033[0m"
 else
        echo -e "\033[31m -----------开始停止 Zookeeper---------------- \033[0m"
fi

sleep 1

for host in afu01 afu02 afu03
do
  ssh root@$host "source /etc/profile; /export/server/zookeeper-3.4.6/bin/zkServer.sh $1"
done

if [ start = $1 ]
 then
        echo -e "\033[31m -----------Zookeeper开启完毕---------------- \033[0m"
 else
        echo -e "\033[31m -----------Zookeeper停止完毕---------------- \033[0m"
fi


sh zk.sh start  #开启zk
sh zk.sh stop   #关闭zk

在这里插入图片描述
此目录为 zk日志目录

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值