如何解决为什么我的Yarn显示的内存12 GB比主机32GB少
我正在使用EMR,并且我的任务节点具有32 GB的内存。但是,当我登录到YARN UI时。它说只有12 GB的备忘录。
是的,我知道操作系统和正在运行的其他服务应使用一些内存。但是20 GB太多了。
在主机上
free -h
total used free shared buffers cached
Mem: 30G 18G 12G 88K 128M 12G
-/+ buffers/cache: 5.6G 25G
Swap: 0B 0B 0B
在另一台计算机上。
free -h
total used free shared buffers cached
Mem: 30G 11G 18G 88K 75M 8.5G
-/+ buffers/cache: 3.4G 27G
Swap: 0B 0B 0B
那么即使有18 GB的可用空间后,为什么Yarn也只能显示12 GB的可用空间?
解决方法
在Google上进行了一些搜索后,发现它受到毛线设置的限制。普拉迪普在他的评论中也提出了同样的建议。
我在群集上进行了以下设置
- 找出任务和核心节点的实例组ID。为此,请使用以下命令。
aws emr describe-cluster --cluster-id j-xxxxxx | jq -r '.Cluster.InstanceGroups[] | select(.InstanceGroupType == "CORE").Id'
aws emr describe-cluster --cluster-id j-xxxxxx | jq -r '.Cluster.InstanceGroups[] | select(.InstanceGroupType == "TASK").Id'
- 创建JSON配置以更新您的emr。您将必须创建两个配置文件,一个用于TASK组,另一个用于Core组。或者,您可以在每次更新后简单替换
InstanceGroupId
的值。
[
{
"InstanceGroupId":"<output_of_above_command>","Configurations":[
{
"Classification":"yarn-site","Properties":{
"yarn.nodemanager.resource.memory-mb":"32768"
},"Configurations":[]
}
]
}
]
- 最后运行命令以更新实例组。
aws emr modify-instance-groups --cluster-id j-******* --instance-groups file://instaceGroup.json
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。