前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >聊聊EMR Hadoop集群关于资源分配这些事

聊聊EMR Hadoop集群关于资源分配这些事

原创
作者头像
EMR小助手
发布2020-11-13 16:58:38
1.4K0
发布2020-11-13 16:58:38
举报

导语

EMR用户常常会将使用不同资源管理系统的组件混合部署在同一个集群,这样会出现资源竞争的情况。若各组件资源超额配置,可能有机器宕机的风险。本文将从案例分析来聊聊混部集群资源配置需要注意的事项

背景

EMR用户反馈多台机器发生了重启,影响集群使用,需要查明原因

定位分析及原因

1、从宕机机器选了一台,在EMR控制台查看该节点资源监控,可以看出机器宕机的直接原因是内存被打爆。什么原因导致的呢

2、继续查看宕机时间点前几分钟的节点监控发现,presto-server,yarn消耗内存占到了90%多,yarn还在不停的分配container资源。

3、查看yarn、presto组件的资源配置项,发现yarn可使用节点内存资源达90%,而presto-server可占用节点内存资源为48G,不算其他组件和机器操作系统的资源占用,这两项远远超出了机器内存的128G。到此定位这次宕机原因是组件资源超额配置。

扩展

EMR集群常用的计算组件比如hive,spark,flink可以使用yarn作为其资源管理系统,但假如集群部署了hbase,impala,presto,storm等组件,就有必要考虑集群资源使用分配的问题,以防超额配置导致节点宕机的风险。下面介绍下各组件与节点有关的资源配置项。

1、yarn 计算资源由yarn-site.xml中的以下配置项决定

代码语言:javascript
复制
yarn.nodemanager.resource.memory-mb      yarn最大可用节点内存
yarn.nodemanager.resource.cpu-vcores     yarn最大可用节点vcore,默认情况和节点cpu相同

2、impala 内存资源由impalad.flgs以下配置项决定

代码语言:javascript
复制
-mem_limit  单个Impalad节点上能用到的内存上限

3、presto 内存由config.properties以下配置决定

代码语言:javascript
复制
query.max-memory-per-node 单个Query在单个Worker上允许的最大user memory
query.max-total-memory-per-node: 单个Query在单个Worker上允许的最大user memory + system memory

4、hbase 需注意RegionServer的堆占用内存的大小,另外还需考虑到预留操作系统和datanode等其他进程内存

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 导语
  • 背景
  • 定位分析及原因
  • 扩展
相关产品与服务
弹性 MapReduce
弹性 MapReduce (EMR) 是基于云原生技术和泛 Hadoop 生态开源技术的安全、低成本、高可靠的开源大数据平台。提供易于部署及管理的 Hive、Spark、HBase、Flink、StarRocks、Iceberg、Alluxio 等开源大数据组件,帮助客户高效构建云端企业级数据湖技术架构。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档