Hadoop 由MapReduce和HDFS组成,1.x版本设计缺陷是单点故障,即MR的JobTracker和HDFS的NameNode两个核心服务均存在单点问题,这使得Hadoop在相当长时间内仅适合离线存储和离线计算。
Hadoop 2.0由三个分支组成,分别是HDFS、MapReduce和YARN,YARN是Hadoop 2.x中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度。YARN不仅限于MapReduce一种框架使用,也可以供其他框架使用,Spark、Storm等。
Yarn的作用:解耦资源与计算
角色:
ResouceManager:主节点,核心,集群节点的资源管理
NodeManager:与ResouceManager汇报资源,管理Container的生命周期
Container:附属于NodeManager中,封装了CPU、MEM、I/O大小等的多维资源以及环境变量,启动命令等任务相关的信息
ApplicationMaster:为应用程序申请资源,并分配给内部任务