Yarn 部署 | Yarn on K8S 的弹性介绍

共 1142字,需浏览 3分钟

 ·

2021-07-22 02:06


开源大数据社区 & 阿里云 EMR 系列直播 第十期

主题:Yarn on K8S 的弹性介绍


讲师:霁谦,开源大数据平台高级开发工程师

内容框架:
  • 背景介绍

  • 演进思路

  • 总结和展望

直播回放:扫描文章底部二维码加入钉群观看回放



1
背景介绍   


为什么要使用 Yarn on K8S

  • 作为在离线混部方案

  • 充分利用在离线计算资源

  • 不同集群计算资源共享,缓解“潮汐现象”

  • 推进云原生方案快速落地



2
演进思路   


阶段1:简单部署


局限性:

  • NMPod 挂载固定盘

  • NM 资源固定

  • 规则固定

  • 人工维护成本高

阶段2:节点资源感知



  • NM 支持弹性资源

  • 主动驱逐 Container

  • R调度优化


  • 节点资源感知-- 扩容


NM 通过 list&watch 机制,获取节点可用资源,并且汇报 RM,从而实现动态扩缩容以及资源超发


  • 节点资源感知-缩容

NM 通过 list&watch 机制,获取节点可用资源,需要缩容的话,如果当前使用量超过可分配量,按照策略触发 container 驱逐


阶段3:存算分离


  • Spark native on k8s:k8s 调度 spark driver 和 executor pod,使用 RSS 支持存算分离

  • Yarn on k8s NM 算分离:支持 Tez on RSS


阶段4:灵活的集群弹性伸缩


支持弹性伸缩:动态感知集群负载



3
总结和展望   


总结

  • 打通 K8S 节点感知和 yarn 资源动态上报,以解决节点资源使用冲突,平衡集群内的节点资源使用

  • 提供 RSS 存算分离服务解决 K8S 调度节点本地盘依赖问题,更好的支持计算引擎层 native云原生

  • 通过单独的 auto scaler 服务,提供集群资源横向动态扩缩容,灵活的分时错峰调度能力

展望

  • 在 K8S 的基础上提供更完善的调度策略,如多级队列

  • 使用 Node label 机制为不同级别的在线任务提供资源和集群扩缩容服务

  • 改进 Yarn RM 在扩缩容场景下遇到的调度性能稳定性问题


对应产品介绍,可以直接点击文章下方阅读原文观看视频,也可以扫描文章底部钉钉群二维码,进群观看直播回放哦!




END



阿里巴巴开源大数据技术团队成立交流社区,定期推送精彩案例,技术专家直播,问答区技术同学在线提问答疑,只为营造纯粹的技术交流氛围,欢迎钉钉扫码加入!




👇阅读原文,快速回看直播视频~

浏览 151
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报