yarn ResourceManager 资源调度 过程
调度器 Scheduler 类似于一个队列,不参与程序执行
AppMaster 作用:监视 Map Reduce 任务 如果挂掉,向调度器 Scheduler 重新申请 资源池
AppManager 作用:监视 AppMaster ,如果挂掉 重新开辟容器启动AM ,该过程中 MR 任务不中断
如何理解 jar包 分片 信息?
yarn 架构主要包括三大组件 resourceManager applicationMaster 和 nodeManager
其中 resourceManager 是全局的资源管理器 负责整个系统的资源管理和分配 包括 调度器 scheduler 和 applicationManager
applicationMaster 是resourceManager 根据用户提交的作业 按照作业的上下文信息 在分配container资源后 通知 nodeManager 为作业创建的 一个applicationMaster
nodeManager 是对 每个yarn节点 进行 资源监控 和 健康状态管理的
yarn 调度流程简单总结为:
客户端提交应用程序给 resourceManager
resourceManager 收到请求后分配 container资源 并 通知 nodeMaster 启动一个 applicationMaster
applicationMaster 运行管理 container 中的任务 ,其中 container 通过心跳机制 向 applicationMaster 发送运行信息
任务完成后 applicationMaster 向 resourceManager 报告任务完成,申请进行 container资源 的释放