IT评测·应用市场-qidao123.com技术社区

标题: 【八】Zookeeper3.7.1集成Hadoop3.3.4集群安装 [打印本页]

作者: 泉缘泉    时间: 2024-8-5 12:37
标题: 【八】Zookeeper3.7.1集成Hadoop3.3.4集群安装
1.根本原理

ZooKeeper 是一个分布式协调服务,用于分布式体系中管理配置信息、命名、同步和集群服务。它提供了一种简单的接口来访问存储在其文件体系中的数据,同时为复杂的分布式体系提供了高可用性和划一性保障。以下是 ZooKeeper 的根本原理:
1 . 数据模型和 ZNode

2 . 划一性保证
ZooKeeper 提供了划一性保障,确保以下条件:

3 . Leader 选举和复制


5 . 高可用性和容错

6 . ZAB 协议
ZooKeeper 利用的 ZAB 协议(ZooKeeper Atomic Broadcast)是一种基于投票的协议,确保了事件的顺序划一性和数据的复制。它包罗两部分:选举阶段(用于选举 Leader)和 广播阶段(用于复制数据)。
7 . 典型应用
ZooKeeper 常用于分布式体系中的服务注册和发现、分布式锁、配置管理、分布式消息队列等。其高可用性和划一性特性使其成为这些场景中的关键组件。
总之,ZooKeeper 通过提供可靠的分布式协调机制和数据划一性保障,为分布式体系的构建和管理提供了强有力的支持。
2.下载并解压ZooKeeper

1 . 环境准备
hostnameipubuntu1172.16.167.131ubuntu2172.16.167.132ubuntu3172.16.167.133 2 . 下载ZooKeeper 3.7.1(或其他兼容版本)的二进制文件
  1. https://archive.apache.org/dist/zookeeper/zookeeper-3.7.1/
复制代码

3 . 解压缩文件并将其移动到适当的目录:
  1. tar -xzf apache-zookeeper-3.7.1-bin.tar.gz
  2. mv apache-zookeeper-3.7.1-bin /usr/local/zookeeper
复制代码
3.配置环境变量

1 . 编辑/etc/profile文件,添加ZooKeeper的环境变量:
  1. vim /etc/profile
复制代码
2 . 添加以下内容:
  1. export ZOOKEEPER_HOME=/usr/local/zookeeper
  2. export PATH=$PATH:$ZOOKEEPER_HOME/bin
复制代码
3 . 刷新环境变量:
  1. source /etc/profile
复制代码
4 . 将环境变量分发到其他节点并刷新

4.配置ZooKeeper

1 . 进入ZooKeeper的配置目录:
  1. cd /usr/local/zookeeper/conf
复制代码
2 . 复制zoo_sample.cfg为zoo.cfg:
  1. cp zoo_sample.cfg zoo.cfg
复制代码
3 . 编辑zoo.cfg文件,举行根本配置:
  1. vim zoo.cfg
复制代码
根据你的集群环境修改以下内容,目录一定要注意:
  1. tickTime=2000
  2. dataDir=/var/lib/zookeeper
  3. clientPort=2181
  4. initLimit=10
  5. syncLimit=5
  6. server.1=ubuntu1:2888:3888
  7. server.2=ubuntu2:2888:3888
  8. server.3=ubuntu3:2888:3888
复制代码


5.创建数据目录并初始化myid

1 . 在每个ZooKeeper节点上创建数据目录:
  1. mkdir -p /var/lib/zookeeper
  2. chmod -R 755 /var/lib/zookeeper
复制代码
2 . 在每个节点的数据目录中创建myid文件,并写入对应的服务器编号(1,2,3):
  1. echo "1" > /var/lib/zookeeper/myid  # 在ubuntu1上
  2. echo "2" > /var/lib/zookeeper/myid  # 在ubuntu2上
  3. echo "3" > /var/lib/zookeeper/myid  # 在ubuntu3上
复制代码
6.启动ZooKeeper

1 . 在每个节点上启动ZooKeeper服务:
  1. zkServer.sh start
复制代码
2 . 验证每个节点ZooKeeper是否正常启动:
  1. zkServer.sh status
复制代码

7.配置ZooKeeper集成到Hadoop

1 . 修改Hadoop的core-site.xml文件,添加ZooKeeper的Quorum配置:
  1. vim $HADOOP_HOME/etc/hadoop/core-site.xml
复制代码
2 . 添加以下内容:
  1. <property>
  2.   <name>ha.zookeeper.quorum</name>
  3.   <value>ubuntu1:2181,ubuntu2:2181,ubuntu3:2181</value>
  4. </property>
复制代码

8.重启Hadoop

1 . 重新启动Hadoop集群以应用新的配置:
  1. stop-all.sh
  2. start-all.sh
复制代码

9.ZooKeeper状态检查


  1. zkCli.sh -server ubuntu1:2181
复制代码

  1. ls /
  2. stat
复制代码
创建一个新的节点:
  1. create /mytest "testdata"
复制代码
验证节点创建:
  1. ls /
复制代码
删除节点:
  1. delete /mytest
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4