hadoop 的 框架 ZooKeeper 入门

来源:互联网 发布:软件评测中心招聘 编辑:程序博客网 时间:2024/05/19 00:43

首先先了解一下 ZooKeeper 是什么?

  1.  Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoop 的分布式协调服务;
  2. 它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等

那么ZooKeeper 又有什么作用呢?用一张图片来做一个简单的了解

那么hadoop 又为什么要用 ZooKeeper 来处理事件呢?

ZooKeeper能够提供通用的分布式锁服务,用以协调分布式应用;使用Zookeeper的事件处理确保整个集群只有一个NameNode,存储配置信息等.最主要的是ZooKeeper具有简单、富有表现力、高可用性、采用松耦合交互方式等这些特性。

下面开始搭建一个Zookeeper的集群

  • ZooKeeper集群至少3个节点(hadoop0,hadoop1,hadoop2),并且节点之间的系统时间一致。

             在hadoop0上,解压缩、重命名、设置环境变量
        在hadoop0的$ZOOKEEPER_HOME/conf下,mv zoo_sample.cfg zoo.cfg

  •  编辑zoo.cfg文件

               修改dataDir=/usr/local/zk/data
         新增了三行 server.0=hadoop0:2888:3888
         server.1=hadoop1:2888:3888
         server.2=hadoop2:2888:3888

  • 在hadoop0上, 创建目录 mkdir -p /usr/local/zk/data

  •  在data目录中,创建文件myid,内容是0

  •  把zk目录、环境变量文件复制到hadoop1、hadoop2中

              scp -r /usr/local/ZooKeeper  hadoop1:/usr/local

  •  在hadoop1、hadoop2中修改文件myid,把内容改为1、2

  •  在hadoop0、hadoop1、hadoop2上,分别执行启动命令zkServer.sh start

  • 查看节点Mode,执行命令zkServer.sh status

使用shell操作zookeeper

  • 执行zkCli.sh进入ZooKeeper的shell环境
  •  常见的操作:

          ls  /
        create  /example  abcd
        get  /example
        set  /example   asdfadsf


ZooKeeper的一个入门水平也差不多了偷笑




原创粉丝点击