zookeeper的集群安装 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    zookeeper是针对大型分布式系统的高可靠的协调系统,

zookeeper的集群安装

。由此,我们可知,zookeeper是个协调系统,它的作用对象是分布式系统。那么,为什么分布式系统需要一个协调系统呢?原因如下:

    开发分布式系统是件灰常困难复杂的事情,其中的困难主要体现在分布式系统的“部分失败”。“部分失败”是指信息在网络的两个节点之间传送的时候,如果网络出现了故障,发送者无法知道接收者是否收到了这个信息,而且这中故障的原因很复杂,接收者可能在出现网络错误之前已经接收到了信息,也可能没有收到,由或者接收者的进程死掉了。发送方能够获取真实情况的唯一办法是重新连接到接收方,询问接收方错误的原因,这就是分布式系统开发的“部分失败”的问题。

    zookeeper就是解决分布式系统“部分失败”的框架。zookeeper不是让分布式系统避免“部分失败”问题,而是让分布式系统当碰到部分失败的时候,可以正确处理此类问题,让分布式系统能正常的运行。换言之,zookeeper是用来保证数据在zookeeper集群之间的事务性一致。

    那么,该如何部署zookeeper的集群呢?

    1、zookeeper服务器集群规模不小于3个节点,要求各个服务器之间系统时间保持一致。

    2、下载zookeeper安装包,下载地址:http://zookeeper.apache.org/。

    3、在hadoop1的/usr/local/目录下,解压缩安装包,并设置环境变量,如下图:

   

    4、在conf目录下,重命名文件,如下图:

   

    5、编辑文件,执行vi zoo.cfg

    修改dataDir,如下:

   

    新增:

   

    6、创建目录,执行mkdir /usr/local/zk/data,并在该目录下创建文件myid,如下:

   

    myid赋值为0,

电脑资料

zookeeper的集群安装》(https://www.unjs.com)。

    7、把zk目录复制到hadoop2和hadoop3节点上,如下:

   

    8、把hadoop2中myid的值修改为1,hadoop3中myid的值修改为2;

    9、启动,在3个节点上分别执行命令zkServer.sh start,如下:

   

    10、检验,在3个节点上分别执行命令zkServer.sh status,如下:

   

   

    zookeeper的角色

    1、领导者leader:负责投票的发起和决议,更新系统的状态;

    2、学习着learner:包括跟随着follower和观察者observer,follower用于接收客户端的请求并向客户端返回结果,在选举过程中参与投票;

    3、observer可以接收客户端的连接,将写请求转发给leader,但observer不参与投票过程,只同步leader的状态,observer的目的是为了扩展系统,提高读取的速度;

    4、客户端client:请求的发起方。

最新文章