第六章:YARN:一种新的Hadoop资源管理器
一个初学者的大数据学习过程
1. YARN 概述
1.1 YARN是什么?
YARN 是Hadoop2.x版本新引入的资源管理系统,直接从MR1演化而来。Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
核心思想: 将MR1中JobTracker的资源管理和作业调度两个功能分开,分别由ResourceManager和ApplicationMaster进程来实现。
ResourceManager:负责整个集群的资源管理和调度。
ApplicationMaster:负责应用程序相关的事务,比如任务调度、任务监控和容错等。
YARN的出现,使得多个计算框架运行在一个集群当中。
每个应用程序对应一个ApplicationMaster。
目前可以支持多种计算框架运行在YARN上面,比如MapReduce、Storm、Spark、Flink等。
1.2 YARN在生态圈中的位置
1.3 YARN与MapReduce关系
- YARN是一个资源管理系统,负责资源管理和调度。
- MapReduce只是运行在YARN上的一个应用程序。
- 如果把YARN看做"android",则MapReduce只是一个"app"。
- MapReduce 1.0是一个独立的系统