usecase=>使用下面的配置创建两个Yarn队列:q1和q2。
[
{
"Classification": "capacity-scheduler",
"Properties": {
"yarn.scheduler.capacity.root.queues" : "Q1,Q2",
"yarn.scheduler.capacity.root.Q1.capacity" : "60",
"yarn.scheduler.capacity.root.Q2.capacity" : "40",
"yarn.scheduler.capacity.root.Q1.accessible-node-labels" : "*",
"yarn.scheduler.capacity.root.Q2.accessible-node-labels" : "*",
"yarn.scheduler.capacity.root.Q1.accessible-node-labels.CORE.capacity" : "60",
"yarn.scheduler.capacity.root.Q2.accessible-node-labels.CORE.capacity" : "40",
"yarn.scheduler.capacity.root.Q1.accessible-node-labels.CORE.maximum-capacity" : "60"
}
},
{
"Classification": "yarn-site",
"Properties": {
"yarn.acl.enable": "true",
"yarn.resourcemanager.scheduler.class": "org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler"
}
}
]
预期行为:q1不应使用超过60%的核心节点,因此40%的核心节点始终可用于q2。请参阅文档以了解队列配置。另一个参考了解最大容量配置在这本书。
实际行为:q1使用超过60%,即队列“q1”的“绝对已用容量”大于“绝对已配置最大容量”。
这与Yarn文件不符。我想了解这种行为背后的原因。以及其他解决方案。
更新1:这个问题似乎只出现在核心节点上。如果我在下面指定,它对任务节点的效果与预期一样。yarn.scheduler.capacity.root.q1.最大容量:60
emr在Yarn节点标签下创建核心节点作为核心。默认情况下,emr创建此节点标签。有关Yarn节点标签和使用Yarn节点标签功能的emr 5.19.0的更多信息。imho,当对核心节点使用Yarn节点标签特性时,emr要么过度使用,要么已经破坏了核心节点的这种配置。
暂无答案!
目前还没有任何答案,快来回答吧!