gpt4 book ai didi

hadoop - JMX服务器中的 yarn 调度程序队列配置错误

转载 作者:行者123 更新时间:2023-12-02 20:44:13 25 4
gpt4 key购买 nike

我在YARN中定义了两个节点标签:streamonline,每个标签包括3个具有1024 MB RAM和1个核心的节点。 (总共有6个nodemanager)。我定义了两个队列streamQonlineQ,它们分别映射到标签为streamonline的节点。没有带有default_partition标签的节点。因此,配置了Capacity_scheduler.xml:

<!-- configuration of queue-root -->


<property>
<name>yarn.scheduler.capacity.root.queues</name>
<value>streamQ,onlineQ</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.accessible-node-labels</name>
<value>*</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.accessible-node-labels.stream.capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.accessible-node-labels.online.capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.default-node-label-expression</name>
<value>*</value>
</property>


<!-- configuration of queue-streamQ -->


<property>
<name>yarn.scheduler.capacity.root.streamQ.capacity</name>
<value>50</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.streamQ.maximum-capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.streamQ.accessible-node-labels</name>
<value>stream</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.streamQ.accessible-node-labels.stream.capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.streamQ.accessible-node-labels.online.capacity</name>
<value>0</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.streamQ.default-node-label-expression</name>
<value>stream</value>
</property>


<!-- configuration of queue-streamQ -->


<property>
<name>yarn.scheduler.capacity.root.onlineQ.capacity</name>
<value>50</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.maximum-capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.accessible-node-labels</name>
<value>online</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.accessible-node-labels.online.capacity</name>
<value>100</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.accessible-node-labels.stream.capacity</name>
<value>0</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.default-node-label-expression</name>
<value>online</value>
</property>

</configuration>

当我运行在onlineQ队列上提交的应用程序时,它仅使用来自带有在线标签的节点的资源。在带有 stream标签的节点关闭的情况下(这意味着只有3个带有 online标签的节点管理器正在运行),我在YARN JMX服务器数据中遇到了一些不一致之处,其中显示:

根队列数据:
{
"name" : "Hadoop:service=ResourceManager,name=QueueMetrics,q0=root",
"modelerType" : "QueueMetrics,q0=root",
"tag.Queue" : "root",
"tag.Context" : "yarn",
"tag.Hostname" : "namenode",
"AvailableMB" : 3072,
"AvailableVCores" : 3,
}

streamQ数据:
{
"name" : "Hadoop:service=ResourceManager,name=QueueMetrics,q0=root,q1=streamQ",
"modelerType" : "QueueMetrics,q0=root,q1=streamQ",
"tag.Queue" : "root.streamQ",
"tag.Context" : "yarn",
"tag.Hostname" : "namenode",
"AvailableMB" : 1536,
"AvailableVCores" : 1,
}

在线Q数据:
{
"name" : "Hadoop:service=ResourceManager,name=QueueMetrics,q0=root,q1=onlineQ",
"modelerType" : "QueueMetrics,q0=root,q1=onlineQ",
"tag.Queue" : "root.onlineQ",
"tag.Context" : "yarn",
"tag.Hostname" : "namenode",
"AvailableMB" : 1536,
"AvailableVCores" : 1,
}

问题出在 AvailableMBAvailableVCores中。根队列数据是所需的,但是我期望 streamQ队列中的资源为零,而 onlineQ队列中的资源为3072MB,核心为3。但这不是!那是因为属性:
<property> 
<name>yarn.scheduler.capacity.root.streamQ.capacity</name>
<value>50</value>
</property>

<property>
<name>yarn.scheduler.capacity.root.onlineQ.capacity</name>
<value>50</value>
</property>

但这仅适用于没有标签的节点资源(位于default_partition中)!有什么问题?

最佳答案

我将Hadoop版本从2.7.5更改为2.8.3后,它解决了。

关于hadoop - JMX服务器中的 yarn 调度程序队列配置错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48686116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com