Step by step,学习EMR集群的fair类型资源池-阿里云开发者社区

开发者社区> 鸿初> 正文

Step by step,学习EMR集群的fair类型资源池

简介:
+关注继续查看

集群越大,跑的业务越多,越需要资源池管理。资源调度是yarn的核心。


EMR现在支持在业务视角操作yarn资源池了,资源池文档介绍了如何使用。


企业用户往往会选择使用fair调度类型的资源池。本文以一家大数据分析公司业务发展为故事背景,一步步的介绍如何使用fair调度。fair调度详细参数信息可参见官方文档


一个数据分析师

公司刚开始,业务团队只有小明一个数据分析师。一个人用整个集群,默认资源池配置即可。随便跑作业,随便杀作业。


三个数据分析师

公司发展,业务团队小明,张华,李萍三个数据分析师了。还用默认资源池不分队列,一个人把资源用满其他人就用不了了。杀作业很容易杀掉别人的作业,互相影响,出了问题无法定位。

于是采用三个人均分资源策略,创建三个资源池,只设置名字和权重1,管理访问控制的用户名。放置策略采用用户名为队列。gateway上建了三个操作系统账户xiaoming,zhanghua,liping,三个分析师用自己的系统账户提交作业,管理作业。

创建资源池-管理访问控制

16767fda5f836dc601e10165bef3bebf3889b6d9

资源池设置

b42faca52d2589fd69c7a53757a17f6819e92ee7b42faca52d2589fd69c7a53757a17f6819e92ee7



设置放置规则

95b6b11478c3cb8b8dc4889675556215b63c1687


创建操作系统账户略。



最小资源保障

虽然权重均分了,但大家发现,如果小明跑任务已经占用了全部资源,张华,李萍跑任务依然要等待小明作业释放了部分资源才能跑起任务。这是因为权重只有分配资源时生效,已占用的资源不会释放。

所以要增加最小内存,内核数的配置,保障每个队列至少有这些资源可用,重要任务可以跑起来。每个队列保障32000MB内存,8内核数。

fc808b3a17bc53d75732820583f245294a6d87fb




多部门混合使用

公司继续发展,除了业务部A,又成立了市场部B,营销部C。都要使用集群。业务上,分析任务也有了每天运行的生产任务和临时查数据,开发测试的日常任务的区别。

初步混用

为了管理各个部门的资源配置,系统管理员给各个部门创建了资源池,并控制各个资源池上限。每个部门资源池又创建了生产子队列,各个分析师的用户子队列。放置规则采用组名映射队列方式,gateway上给各部门创建用户组,每个部门的用户,生产任务各创建一个用户。

部门和用户队列

3568aaaef5dc01de0a05edb0b73c1b41b55be97c

放置规则


e6c0891de918856cdc662412bdd6f4d7e1b0fded



生产任务保障

如果数据分析师日常任务占用了大量资源,生产任务可能得不到资源保障。需要配置抢占策略,确保生产任务能获得需要的资源。

生产资源池配置禁止抢占该资源池的资源,抢占份额为0.8,抢占超时时间为30秒。这样当生产任务不够权重的0.8,30秒后就会kill日常任务,给生产任务释放资源。

068dae12bc2afaa9708e23295173a5ac7993f6bc




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
竟有如此缤纷的 AIR 学习指导:推荐《Adobe AIR 完整入门与开发实录》
AIR一方面提供与Flash等量齐观的API,一方面拥抱市场上大批的 UI 框架,如何将这二者合二为一将对开发者的参考价值很大。教学第一,该书不是API文档乏味的复述,并有大量的例子与视频教学,学习AIR起来就可达到事半功倍的效果。
478 0
进化算法可以不再需要计算集群,开普敦大学的新方法用一块GPU也能刷新MNIST记录
他们实验中只使用了一块GTX1070 GPU,训练时间6到24小时,就可以取得这样的成果,他们觉得非常满意。他们的研究也首次尝试了把神经进化用在一维卷积网络的创造中,用来解决情感分析、包括嵌入层的优化问题。
1330 0
机器学习和AI如何影响餐饮业
最近,COVID-19大流行以及它如何与食品企业的制造或破产联系在一起,成为人们关注的焦点。在讨论食品工业时,可能最后想到的事情之一是现代技术,尤其是人工智能和机器学习。
2233 0
学习:重写hashCode()方法的原则
摘自 Effective Java 1、把某个非零常数值,如17,保存在一个叫result的int类型变量中。 2、对于对象中每一个相关域f,完成以下步骤: a.为该域计算int类型的散列码c:   i.如果该域是boolean类型,则计算(f?0:1)。
591 0
+关注
鸿初
阿里云-EMR团队成员,致力于推广开源大数据在云上的应用
21
文章
30
问答
来源圈子
更多
E-MapReduce是构建于阿里云ECS弹性虚拟机之上,利用开源大数据生态系统,包括Hadoop和Spark,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。加入钉钉群聊阿里云E-MapReduce交流2群,点击进入查看详情 https://qr.dingtalk.com/action/joingroup?code=v1,k1,cNBcqHn4TvG0iHpN3cSc1B86D1831SGMdvGu7PW+sm4=&_dt_no_comment=1&origin=11
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载