大数据和机器学习 > 开源大数据平台 E-MapReduce > 正文

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




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

相关文章
集群类型之信息共享节点集群
集群类型之信息共享节点集群
17 0
Yarn队列租户配置教程(实践记录)
Yarn队列租户配置教程(实践记录)
228 0
没有了可用Task slot,Flink新增任务会怎样?
在执行任务的时候,所需的slot如果不够用,会发生什么情况,又如何处理呢,请随本文一同快速实战体验
158 0
Linkerd 2.10(Step by Step)—4. 如何配置外部 Prometheus 实例
Linkerd 2.10(Step by Step)—4. 如何配置外部 Prometheus 实例
81 0
【Elastic Engineering】Elasticsearch:运用 shard 过滤器来控制索引分配给哪个节点
Elasticsearch:运用 shard 过滤器来控制索引分配给哪个节点
108 0
分布式作业 Elastic Job 如何动态调整?
前面分享了两篇分布式作业调度框架 Elastic Job 的介绍及应用实战。 ElasticJob-分布式作业调度神器 分布式作业 Elastic Job 快速上手指南! Elastic Job 提供了简单易用的运维平台,方便用户监控、动态修改作业参数、作业操作及查询作业。
137 0
阿里云注册集群—混合集群-创建节点池并扩容
注册集群弹性节点池用于管理一组线上节点资源,您可以通过节点池为您的线下集群扩容线上ECS节点。本文主要介绍如何创建注册集群弹性节点池。
559 0
EMR Spark Relational Cache 利用数据预组织加速查询
本文介绍了EMR Spark的Relational Cache如何从数据量较大的Cube中快速提取出所需数据加速查询的原理。通过列式存储、文件索引、Z-Order等技术,我们可以快速过滤数据,大大减少实际发生的IO数据量,避免IO瓶颈的出现,从而优化整体查询性能。
1150 0
使用EMR Spark Relational Cache跨集群同步数据
Relational Cache是EMR Spark支持的一个重要特性,主要通过对数据进行预组织和预计算加速数据分析,提供了类似传统数据仓库物化视图的功能。除了用于提升数据处理速度,Relational Cache还可以应用于其他很多场景,本文主要介绍如何使用Relational Cache跨集群同步数据表。
1794 0
阿里云EMR是云原生开源大数据平台,为客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、ClickHouse、StarRocks、Delta、Hudi等开源大数据计算和存储引擎,计算资源可以根据业务的需要调整。EMR可以部署在阿里云公有云的ECS和ACK平台。
+关注
鸿初
阿里云-EMR团队成员,致力于推广开源大数据在云上的应用
文章
问答
视频
相关电子书
更多
服务器迁移到阿里云的step by step
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载