Yarn的简述
在开始阅读之前让我们喊出口号:“要想人前显贵,就要人后受罪!”加油嘎嘣儿,加油所有想获得美好未来的你!
学习方法:
1.是什么
2.干什么的
3.原理是什么
4.怎么用
5.如果出现错误有几种,怎么去解决
一、Yarn定义
Yarn:分布式资源管理框架
二、Yarn的组件及其作用
Client
Client:以jar的形式进行提交任务,接受appid,文件存储路径(处理的的代码,代码的配置文件:什么时候运行xxx.jar,以及运行结构交给谁xxx.xml,最后Client端在根据文件存储的路径把文件进行存储。
ResourceManager
1.处理客户端的请求
2.启动和监控ApplicationMaster
3.监控NodeMananger
4.资源分配和调度
NodeManager
1.处理单个节点的资源管理
2.处理来自ResourceManager的命令
3.处理来自ApplicationMaster的命令
ApplicationMaster
1.为应用程序申请资源
2.监控任务
三、Yarn的运行流程
1.Client端提交任务,获得Appid和文件存储路径,将文件存储到hdfs。
2.ResourceManager检测到自身有资源时,开始执行任务,根据NodeManager的资源多少和处理能力的强弱进行分配第一个Container,在Container中启动AppMaster。
3.AppMaster反向向ResourceManager进行注册,获得List列表,根据列表去相应的NodeManager中去让NM启动Container,此时Container容器中会有jvm运行环境,在根据文件存储路径去HDFS中去拉取相关文件进行处理并对其进行监控。当任务执行完成AppMaster会向ResourseManager注销并关闭自己,回收资源。