Yarn基本知识总结
  2sVs8vrvjmTp 2023年11月21日 25 0

Yarn

   分布式资源管理和任务调度框架

背景

   在一直所常用的架构为MRv1

   但是存在单点故障和限制区群扩充的问题、资源和计算也没有很好的解耦

四大角色 Client ResourceManager NodeManager ApplicationMaster

   Client负责代表用户和RM交互

   RM

       整个集群中只有一个存活,负责资源的调度和管理

       处理Client发来的请求 开启和杀死应用

       负责监控AM 当AM挂掉之后在NM上启动该AM

       监管NM

   NM

       集群中有很多 负责单个节点的资源管理和使用

       处理AM的命令

       接收RM的命令

       周期性向RM汇报节点资源使用情况

   AM    

       数据切分

       向RM申请资源,分配给内部任务

       与NM通信启动停止任务

       任务监管,失败时申请重启

       处理RM的命令

   运行流程

   用户通过Client向RM提交任务

   RM为任务分配一个container,并与NM通信,要求启动AM

   NM启动一个container运行AM

   AM向RM注册 RM就可以直接看到作业的运行状况

   AM申请到资源后 和NM通信 请求启动任务

   NM执行AM命令 启动Container

   container向AM汇报进度 让AM掌握各个任务

   任务完成后 AM向RM申请注销关闭自己

   

   常见的调度策略

           FIFO先进先出    不适用于共享集群、一般不用在生产环境中

           Capacity    容器调度器    队列中默认fifo 也只是fair

           Fair    公平分配

   

   高可用说明

           RM同时有好几个 但是只启动一个

           AM挂掉 RM负责重启 AM会保存已完成的Task AM需要处理内部任务的问题 如Task Failure

           NM挂掉之后 如果Task挂掉 AM负责处理 如果AM挂掉 RM重启一个新的container运行AM

           Task Failure 发送心跳给AM  AM感知到之后尝试恢复

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月21日 0

暂无评论

推荐阅读
2sVs8vrvjmTp