Hadoop Yarn内存资源隔离实现原理-基于线程监控的内存隔离方案

Hadoop YARN通过资源隔离确保不同任务的Container独立使用计算资源,避免相互干扰。内存隔离采用线程监控,因内存超限可能导致应用被杀死。本文以hadoop-2.5.0-cdh5.3.2为例,解释为何应用内存会超过预设上限及Java程序为何需要内存隔离,并详细阐述内存隔离的配置参数和实现原理。
摘要由CSDN通过智能技术生成

Hadoop Yarn 的资源隔离是指为运行着不同任务的 “Container” 提供可独立使用的计算资源,以避免它们之间相互干扰。目前支持两种类型的资源隔离: CPU 和内存,对于这两种类型的资源, Yarn 使用了不同的资源隔离方案。

注:Hadoop Yarn内存资源隔离实现原理-基于线程监控的内存隔离方案,本文以 hadoop-2.5.0-cdh5.3.2 为例进行说明。

 

hadoop 的资源隔离是指为运行着不同任务的 “Container” 提供可独立使用的计算资源,以避免它们之间相互干扰。目前支持两种类型的资源隔离: CPU 和内存,对于这两种类型的资源, Yarn 使用了不同的资源隔离方案。

对于 CPU 而言,它是一种 “ 弹性 ” 资源,使用量大小不会直接影响到应用程序的存亡,因此 CPU 的资源隔离方案采用了 Linux Kernel 提供的轻量级资源隔离技术Cgroups ;对于内存而言,它是一种 “ 限制性 ” 资源,使用量大小直接决定着应用程序的存亡, Cgroups 会严格限制应用程序的内存使用上限,一旦使用量超过预先定义的上限值,就会将该应用程序 “ 杀死 ” ,因此无法使用 Cgroups 进行内存资源隔离,而是选择了线程监控的方式。

 

Hadoop

 

需要解释一下:为什么应用程序的内存会超过预先定义的上限值? J

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值