目录

  • 一、YARN-HA 工作机制
  • 二、配置 YARN-HA 集群
  • 三、HADOOP HA 的最终规划

一、YARN-HA 工作机制

官方文档:http://hadoop.apache.org/docs/r3.1.3/hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.htm

YARN-HA 工作机制

二、配置 YARN-HA 集群

环境准备

  • 环境准备

  • 修改 IP

  • 修改主机名及主机名和 IP 地址的映射

  • 关闭防火墙

  • ssh 免密登录

  • 安装 JDK,配置环境变量等

配置 Zookeeper 集群

核心问题

A、如果当前 active rm 挂了,其他 rm 怎么将其他 standby rm 上位。核心原理跟 hdfs 一样,利用了 zk 的临时节点。

B、当前 rm 上有很多的计算程序在等待运行,其他的 rm 怎么将这些程序接手过来接着跑。rm 会将当前的所有计算程序的状态存储在 zk 中,其他 rm 上位后会去读取,然后接着跑。

具体配置

A、yarn-site.xml

<configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 启用 resourcemanager ha --><property><name>yarn.resourcemanager.ha.enabled</name><value>true</value></property><!-- 声明两台 resourcemanager 的地址 --><property><name>yarn.resourcemanager.cluster-id</name><value>cluster-yarn1</value></property><!--指定 resourcemanager 的逻辑列表--><property><name>yarn.resourcemanager.ha.rm-ids</name><value>rm1,rm2,rm3</value></property><!-- ========== rm1 的配置 ========== --><!-- 指定 rm1 的主机名 --><property><name>yarn.resourcemanager.hostname.rm1</name><value>hadoop102</value></property><!-- 指定 rm1 的 web 端地址 --><property><name>yarn.resourcemanager.webapp.address.rm1</name><value>hadoop102:8088</value></property><!-- 指定 rm1 的内部通信地址 --><property><name>yarn.resourcemanager.address.rm1</name><value>hadoop102:8032</value></property><!-- 指定 AM 向 rm1 申请资源的地址 --><property><name>yarn.resourcemanager.scheduler.address.rm1</name><value>hadoop102:8030</value></property><!-- 指定供 NM 连接的地址 --><property><name>yarn.resourcemanager.resource-tracker.address.rm1</name><value>hadoop102:8031</value></property><!-- ========== rm2 的配置 ========== --><!-- 指定 rm2 的主机名 --><property><name>yarn.resourcemanager.hostname.rm2</name><value>hadoop103</value></property><property><name>yarn.resourcemanager.webapp.address.rm2</name><value>hadoop103:8088</value></property><property><name>yarn.resourcemanager.address.rm2</name><value>hadoop103:8032</value></property><property><name>yarn.resourcemanager.scheduler.address.rm2</name><value>hadoop103:8030</value></property><property><name>yarn.resourcemanager.resource-tracker.address.rm2</name><value>hadoop103:8031</value></property><!-- ========== rm3 的配置 ========== --><!-- 指定 rm1 的主机名 --><property><name>yarn.resourcemanager.hostname.rm3</name><value>hadoop104</value></property><!-- 指定 rm1 的 web 端地址 --><property><name>yarn.resourcemanager.webapp.address.rm3</name><value>hadoop104:8088</value></property><!-- 指定 rm1 的内部通信地址 --><property><name>yarn.resourcemanager.address.rm3</name><value>hadoop104:8032</value></property><!-- 指定 AM 向 rm1 申请资源的地址 --><property><name>yarn.resourcemanager.scheduler.address.rm3</name><value>hadoop104:8030</value></property><!-- 指定供 NM 连接的地址 --><property><name>yarn.resourcemanager.resource-tracker.address.rm3</name><value>hadoop104:8031</value></property><!-- 指定 zookeeper 集群的地址 --><property><name>yarn.resourcemanager.zk-address</name><value>hadoop102:2181,hadoop103:2181,hadoop104:2181</value></property><!-- 启用自动恢复 --><property><name>yarn.resourcemanager.recovery.enabled</name><value>true</value></property><!-- 指定 resourcemanager 的状态信息存储在 zookeeper 集群 --><property><name>yarn.resourcemanager.store.class</name><value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateSt ore</value></property><!-- 环境变量的继承 --><property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLAS SPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value></property></configuration>

B、同步更新其他节点的配置信息,分发配置文件

[fancyry@hadoop102 etc]$ xsync hadoop/

启动 YARN

A、在 hadoop102 或者 hadoop103 中执行:

[fancyry@hadoop102 ~]$ start-yarn.sh

B、查看服务状态

[fancyry@hadoop102 ~]$ yarn rmadmin -getServiceState rm1

C、可以去 zkCli.sh 客户端查看 ResourceManager 选举锁节点内容

[fancyry@hadoop102 ~]$ zkCli.sh
[zk: localhost:2181(CONNECTED) 16] get -s
/yarn-leader-election/cluster-yarn1/ActiveStandbyElectorLockcluster-yarn1rm1 cZxid = 0x100000022
ctime = Tue Jul 14 17:06:44 CST 2020 mZxid = 0x100000022
mtime = Tue Jul 14 17:06:44 CST 2020 pZxid = 0x100000022
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x30000da33080005 dataLength = 20
numChildren = 0

C、web 端查看 hadoop102:8088 和hadoop103:8088 的 YARN 的状态

三、HADOOP HA 的最终规划

将整个 ha 搭建完成后,集群将形成以下模样

Hadoop HA (四) --------- YARN-HA 配置相关推荐

  1. 什么是Hadoop - HDFS - MapReduce - YARN - HA

    Hadoop 为什么要有Hadoop? 从计算机诞生到现今,积累了海量的数据,这些海量的数据有结构化.半结构化.非 结构的数据,并且这些海量的数据存储和检索就成为了一大问题. 我们都知道大数据技术难题 ...

  2. 搭建hadoop2.6.0 HA及YARN HA

    以前用hadoop2.2.0只搭建了hadoop的高可用,但在hadoop2.2.0中始终没有完成YARN HA的搭建,直接下载了hadoop最新稳定版本2.6.0完成了YARN HA及HADOOP ...

  3. Hadoop HA on Yarn——集群配置

    集群搭建 因为服务器数量有限,这里服务器开启的进程有点多: 机器名 安装软件 运行进程 hadoop001 Hadoop,Zookeeper NameNode, DFSZKFailoverContro ...

  4. hadoop集群的yarn ha配置,亲测

    YARN HA部署 yarn-site.xml文件:<!--启用resourcemanager ha--><property><name>yarn.nodemana ...

  5. hadoop3节点hdfs ha,yarn ha配置

    2019独角兽企业重金招聘Python工程师标准>>> 0 各机器职责 进程 node1 node2 node3 NN NameNode 1 1 DN DateNode 1 1 1 ...

  6. Flink On Yarn HA 安装和配置

    正常基于 Yarn 提交 Flink 程序,无论是使用 yarn-session 模式还是 yarn-cluster 模 式 , 基 于 yarn 运 行 后 的 application 只 要 ki ...

  7. HADOOP HA之NameNode HA集群配置与应用

    目录 前言 一.HADOOP HA之NameNode HA集群配置 1.修改hadoop-env.sh 2.修改core-site.xml 3.修改hdfs-site.xml 4.修改workers ...

  8. Centos7.6+Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    本文转自https://mshk.top/2019/03/centos-hadoop-zookeeper-hbase-hive-spark-high-availability/,因为原链接打不开,故在 ...

  9. Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...

  10. hadoop完全分布式搭建HA(高可用)

    首先创建5台虚拟机(最少三台),并且做好部署规划 ip地址 主机名 安装软件 进程 192.168.xx.120 master jdk,hadoop,zookeeper namenode,ZKFC,R ...

最新文章

  1. 继承QTreeWidgetItem发生error: 'staticMetaObject' is not a member of 'QTreeWidgetItem' 错误
  2. powerbi输入数据_Power BI 的多种共享方式
  3. 有查看自己dian nao mi |W| ma 的软件
  4. MySQL索引的查看创建和删除
  5. [转帖]虚拟内存探究 -- 第二篇:Python 字节
  6. 成绩排序 九度教程c语言,九度OJ 1089 数字反转
  7. 前端学习(3226):回调形式的ref
  8. python split函数 空格_python上手--10行代码读懂红楼梦
  9. 深度学习——从文件中载入训练数据
  10. 并发编程中,你加的锁未必安全
  11. android内存占用分析,Android App性能评测分析-内存篇
  12. r语言提取列名_玩转数据处理120题之P1-P20(R语言tidyverse版本)
  13. 易语言写的一个去广告小软件
  14. returned message 找不到可安装的 ISAM。.
  15. Rhadoop集群搭建
  16. 肖哥所有课程/HCNA HCNP/安全/云计算/虚拟化/linux/视频教程/资料软件下载链接
  17. 软件开发中JAVA编程语言的应用
  18. matlab生成范德蒙矩阵
  19. ios ipa文件分析
  20. 桌面快捷方式图标不能删除的原因以及处理方法

热门文章

  1. 常用的MATLAB网络资源
  2. 妻子决定你未来的事业高度
  3. 第07讲B文件与文件夹操作
  4. Java debugger模式调试
  5. 垃圾图像分类 ResNet34 python
  6. 控制理论中的几种稳定性
  7. char和varchar的区别
  8. MPU6050传感器数据处理
  9. 苹果ipa签名工具免越狱下载_iOS 13.5.5 beta 越狱来了,支持手机版越狱
  10. 大数据生态:Hadoop生态圈