启动hadoop没有resourcemanager_5.hadoop-MR YARN架构理论与集群搭建
MR原语
输入(格式化k,v)数据集map映射成一个中间数据集(k,v)reduce
相同"的key为一组,调用一次reduce方法,方法内迭代这一组数据进行计算
计算框架
Partition
Partition主要作用就是将map的结果发送到相应的reduce。这就对partition有两个要求:
1)均衡负载,尽量的将工作均匀的分配给不同的reduce。
2)效率,分配速度一定要快。
Shuffle
:框架内部实现机制
分布式计算节点数据流转:连接MapTask与ReduceTask
样例
理解
Map:
读懂数据
映射为KV模型
并行分布式
计算向数据移动
Reduce:
数据全量/分量加工
Reduce中可以包含不同的key
相同的Key汇聚到一个Reduce中
相同的Key调用一次reduce方法
排序实现key的汇聚
K,V使用自定义数据类型
作为参数传递,节省开发成本,提高程序自由度
Writable序列化:使能分布式程序数据交互
Comparable比较器:实现具体排序(字典序,数值序等)
运行架构
MR1
MRv1角色:
JobTracker
核心,主,单点
调度所有的作业
监控整个集群的资源负载
TaskTracker
从,自身节点资源管理
和JobTracker心跳,汇报资源,获取Task
Client
作业为单位
规划作业计算分布
提交作业资源到HDFS
最终提交作业到JobTracker
弊端:
JobTracker:负载过重,单点故障
资源管理与计算调度强耦合,其他计算框架需要重复实现资源管理
不同框架对资源不能全局管理
MR2
hadoop YARN
YARN架构
YARN:解耦资源与计算
ResourceManager
主,核心
集群节点资源管理
NodeManager
与RM汇报资源
管理Container生命周期
计算框架中的角色都以Container表示
Container:【节点NM,CPU,MEM,I/O大小,启动命令】
默认NodeManager启动线程监控Container大小,超出申请资源额度,kill
支持Linux内核的Cgroup
YARN优势
YARN:Yet Another Resource Negotiator;
Hadoop 2.0新引入的资源管理系统,直接从MRv1演化而来的;
核心思想:将MRv1中JobTracker的资源管理和任务调度两个功能分开,分别由 ResourceManager和ApplicationMaster进程实现
ResourceManager:负责整个集群的资源管理和调度
ApplicationMaster:负责应用程序相关的事务,比如任务调度、任务监控和容错等
YARN的引入,使得多个计算框架可运行在一个集群中
每个应用程序对应一个ApplicationMaster
目前多个计算框架可以运行在YARN上,比如MapReduce、Spark、Storm等
MRv2:On YARN
MR-ApplicationMaster-Container
作业为单位,避免单点故障,负载到不同的节点
创建Task需要和RM申请资源(Container)
Task-Container
Client:
RM-Client:请求资源创建AM
AM-Client:与AM交互
将MapReduce作业直接运行在YARN上,而不是由JobTracker和TaskTracker构建的MRv1系统中
基本功能模块
YARN:负责资源管理和调度
MRAppMaster:负责任务切分、任务调度、任务监控和容错等
MapTask/ReduceTask:任务驱动引擎,与MRv1一致
每个MapRduce作业对应一个MRAppMaster
MRAppMaster任务调度
YARN将资源分配给MRAppMaster
MRAppMaster进一步将资源分配给内部的任务
MRAppMaster容错
失败后,由YARN重新启动
任务失败后,MRAppMaster重新申请资源
环境搭建
mapred-site.xml
mapreduce.framework.nameyarn
yarn-site.xml
yarn.nodemanager.aux-servicesmapreduce_shuffleyarn.resourcemanager.ha.enabledtrueyarn.resourcemanager.cluster-idcluster1yarn.resourcemanager.ha.rm-idsrm1,rm2yarn.resourcemanager.hostname.rm1node03yarn.resourcemanager.hostname.rm2node04yarn.resourcemanager.zk-addressnode02:2181,node03:2181,node04:2181
启动:
node1:启动所有nodemanager
start-yarn.sh
node3,node4:启动resourcemanager
yarn-daemon.sh start resourcemanager
样例:
执行jar
cd /usr/hadoop-2.5.1/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.5.1.jar wordcount /wordcount/input /wordcount/output
监控页:
node04:8088
启动hadoop没有resourcemanager_5.hadoop-MR YARN架构理论与集群搭建相关推荐
- redis 一般启动几个 哨兵_Redis6.0主从、哨兵、集群搭建和原理
点击上方蓝色字体,选择"设为星标" 回复"资源"获取更多资源 大数据技术与架构点击右侧关注,大数据开发领域最强公众号! 暴走大数据点击右侧关注,暴走大数据! 由 ...
- 【Hadoop】单机、伪分布式、完全分布式集群搭建
搭建Hadoop本地模式 本地模式就是单机装hadoop. 安装hadoop 上传hadoop包 通过winSCP上传hadoop包到/opt/soft/文件夹下 [root@bigdata111 s ...
- flink on yarn HA高可用集群搭建
无论以什么样的模式提交Application到Yarn中运行,都会启动一个yarn-session(Flink 集群),依然是由JobManager和TaskManager组成,那么JobManage ...
- kuberbetes的架构与kubernetets集群搭建
目录 一.k8s概述 1.k8s是什么 2.K8S是做什么用的? 3.为什么要使用K8S? 4.k8s架构图解 5.角色与功能 1)Master管理节点(管理节点) 2)node计算节点 6.mast ...
- Mycat高可用架构原理_Mycat集群搭建_HA高可用集群_高可用_单表存储千万级_海量存储_分表扩展---MyCat分布式数据库集群架构工作笔记0027
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 前面我们已经讲了,对于数据库来说,mycat可以,我们通过搭建一主一从,双主双从,来实现数据库集群 ...
- 深入浅出学大数据(五)Hadoop再探讨High Availability(HA)集群搭建及YARN原理介绍
大家好,我是不温卜火,昵称来源于成语-不温不火,本意是希望自己性情温和.作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己所犯的错误希望能够帮助到很多和自己一样 ...
- Hadoop架构中各个集群在开发中的作用
学习大数据,如果只是零零散散地学习各个模块,就会深陷其中,很难深入了解hadoop架构中各个集群的作用.那么在实际开发中,究竟是怎样的一个流程呢?先看下面一张流程图: 接下来就用一些大白话,来讲解每个 ...
- Hadoop(二): YARN(资源管理器 RM)、HBase高可用集群搭建
目录 一.Hadoop的高可用原理概述 1.1 原理概述 1.2 实验环境要求 二.高可用集群的搭建 2.1 搭建Zookeeper 2.2 搭建HA的高可用 2.3 YARN(资源管理器 RM)高可 ...
- 3台机器配置hadoop集群_Hadoop学习之路(三)Hadoop集群搭建和简单应用
概念了解 主从结构:在一个集群中,会有部分节点充当主服务器的角色,其他服务器都是从服务器的角色,当前这种架构模式叫做主从结构. 主从结构分类: 1.一主多从 2.多主多从 Hadoop中的HDFS和Y ...
最新文章
- ewebeditor 上传大内容文本注意点
- 第四次人口普查数据_第七次人口普查预估:单身男性比女性多3000万?你在其中吗?...
- 美特斯邦威java面试_在美特斯邦威工作一个月,我学到了什么
- 中国电动汽车充电桩行业十四五发展预测及未来战略规划建议报告2022-2027年版
- ICLR 2021投稿中值得一读的NLP相关论文
- 为什么不用简书写文章
- ReactiveCocoa基础
- 开启 NFS 文件系统提升 Vagrant 共享目录的性能
- cobbler安装4个报错汇总及解决方法:ImportError
- 软件设计师考试-计算机网络与网络安全部分的笔记
- DirectX 龙书 混合 理解
- Adobe CS5 序列号及配置方法
- 校内胡策 T9270 mjt树
- JAVA WEB开发技术作业 HTML国家奖学金申请审批表
- 未来的外科手术可能由气泡代劳
- python下的一个好用的日历库,支持农历和公历互转,是一个很好用的日期包
- java实现dwg转pdf
- 《企业管理概论》在线平时作业1
- Lawliet|C++学习笔记1——输入输出
- 2020DCIC智慧海洋建设算法赛学习01-赛题北京及地理数据分析常用工具