版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/W609392362/article/details/79560532
YARN是一个资源调度平台,负责为运算程序提供服务器运算资源。相当于一个分布式的操作系统,而mapReduce相当于一个运行在其上的应用程序。
YARN的重要概念:
1、不知到程序运行的内部机制
2、只提供资源调度(应用程序向其请求资源,分配资源)
3、管理角色,resourcemanager,负责程序资源的调度,监控程序。
4、nodemanager为应用程序分配资源
5、做到应用程序与调度平台的解耦,也就是说只要应用程序遵循它的规范,就可以和它整合。
yarn中运行运算程序的示例步骤
1、客户端向yarn申请运行一个job程序
2、yarn返回一个jobid以及提交资源用的stageDir目录
3、向yarn提交MR程序相关的资源文件(各种组件的配置,切片信息)
4、通知yarn,job资源文件提交完毕
5、初始化任务
6、每个计算节点领取到任务
7、分配资源容器container
8、通知nodemanger启动一个MRAPPmaster进程
9、申请运算资源,nodemanger分配资源
10、创建任务加入队列
11、每个nodemanger领到任务