ZooKeeper(一)linux上单机与集群的搭建

环境:

Centos 7、zookeeper-3.4.6.tar.gz 

一、单机版的搭建过程

1,上传zookeeper安装包并解压

上传安装包到服务器上后使用 tar -zxvf zookeeper-3.4.6.tar.gz 命令进行解压

2,在解压后的目录中使用 mkdir data 创建data目录

3,重命名并修改conf/目录下配置文件zoo_simple.cfg

使用命令 mv zoo_sample.cfg zoo.cfg  、 进行重命名;

使用vim命令修改里面的data目录信息

 

4,修改完成后启动ZooKeeper 服务并查询启动后状态

    在 /bin 目录下使用 ./zkServer.sh start 命令进行启动;

    使用 ./zkServer.sh status 命令查看当前启动状态;Mode:standalong 表示单节点服务。

二、zookeeper集群的搭建过程

1,创建一个单独的目录用来存放多个zk的安装目录(因为电脑只有一个虚拟机,所以采用不同端口实现集群效果)

        创建集群安装目录:/home/zookeeper/cluster。

2,上传zk安装包到该目录下,并解压重命名,并复制三份分别为zookeeper01、zookeeper02、zookeeper03

        并在下面上传了文件zookeeper-3.4.6.tar.gz 。

        使用命令:tar -zxvf zookeeper-3.4.6.tar.gz 进行解压。

        然后 使用命令 mv zookeeper-3.4.6 zookeeper01 修改目录名称为zookeeper01。

        使用命令 cp -r  zookeeper01 zookeeper0N 复制两个02 03 的安装目录。

 

3,在三个不同的安装目录下均创建data目录、并在data目录下创建myid文件存储节点编号

       使用命令:mkdir data; cd data ; touch myid; 并在myid文件中开始位置写入该节点的编号信息。

其中 1 、2、3 表示当前节点的编号信息,下一步会用到该信息。

4,在/conf 目录下修改文件zoo_sample.cfg,并修改端口以及日志路径和集群信息

        使用命令 mv zoo_sample.cfg zoo.cfg  、 进行重命名;

        使用vim命令修改里面的data目录、端口 以及添加集群节点信息;clientPort每个节点都使用不同的节点端口。尾部新增的server.myid=ip:port1:port2 其中myid为上一步中data/myid 文件中的值。port1和port2 都时不同的端口设置于与clientPort 不一样。

02、03 节点下的zoo.cfg 信息;

5,分别启动所有节点服务,并查看选举结果。

分别在各个节点下的bin目录下 使用 ./zkServer.sh start 进行启动。

使用 ./zkServer.sh status 命令查看启动状态。

6,zk的选举过程

当启动第一个节点server1时,启动中的服务中只有自己,server1 将选举投票给自己,自己获得一票。并且目前启动的服务节点数量不足所有节点数量的一半,该节点的状态仍为looking 状态。

当启动第二个节点server2时,第二个节点比较已启动myid值,发现自己的比较大,投票给自己活得一票。server1发现有新节点加入,将重新发起投票,在比较myid值之后将票投给server2,server2 活得两票。此时系统中启动的节点以及投票数量大于等于所有节点数量的一半。此时已经选出leader。此时server1 则为follower,状态由looking更新为following。server2当选leader,状态由looking更新为leading。

当启动第三个节点server3时,发现系统已经选出了 leader,server3遵从半数原则将票投给server2。此时选举结束。

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值