Zookeeper的简单应用

来源:互联网 发布:代购日本刀知乎 编辑:程序博客网 时间:2024/06/08 10:25

        首先,Zookeeper是一个高效而可靠地协同工作系统,它用在协调在分布式应用上的各种服务。Zookeeper主要是用来处理类似下面这样的场景问题:消息在网络中的两个节点间传输时,由于网络错误或者其他问题导致传输过程发生错误,则发送方无法得知接受方是否得到完整的传输信息,为了确保消息是否以准确到达,发送方必须再次向接收方发送消息询问,否则无法准确得知自己发送的消息是否准确到达。

     Zookeeper可以集中对这类问题进行监控,它可以构建一个有效防止单点失效以及处理负载的分布式应用系统,它可以提供协作和失效恢复服务,管理用于备份和数据迁移的问题。

     Zookeeper工作原理图如下所示:

                 

 

 

     各个服务器之间的关系就像“领导”跟“群众”的关系,“群众”只会选择选择其中一个作为他们的leader,当这个leader出现问题了(比如腐败了),“群众”会再次投票选举一个新的leader,以此类推。当然具体怎么选举有内部的选举算法作支撑。

    linux下Zookeeper的三台机器搭建的小集群环境下简单配置如下:

     ①下载Zookeeper,http://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/,并解压到目录:/home/johey/hadoop/zookeeper-3.4.4

    ②将conf目录下的zoo_sample.cfg文件改名为:zoo.cfg,并做如下配置:

    

tickTime=2000initLimit=10syncLimit=5dataDir =/home/johey/tmp/zookeeper/dataclientPort =2181server.1=192.168.11.6:7000:7001server.2=192.168.11.7:7000:7001server.3=192.168.11.8:7000:7001


  ③在相应的服务器dataDir目录下分别建立myid文件,写入相应的编号,如机器192.168.11.6的myid内容为1.使用命令 . /zkServer.sh  start开启服务。

 

原创粉丝点击