Num Off开关容器在Yarn资源管理器UI中是什么意思?

Ara*_*ram 0 hadoop mapreduce hadoop-yarn hortonworks-data-platform

我有一个ETL工作,占用大量CPU和内存,并且运行了很长时间。我在调试时观察到的第一件事如下(来自资源管理器GUI上的作业)

  • Num Node本地容器(满意)= 6
  • Num Rack本地容器(满意)= 00
  • Num Off开关容器(满意)= 11367

我们只有两个机架。我需要回答以下三个问题的帮助

  1. Num Off开关容器是什么意思?
  2. 如何识别这些“关闭开关”容器以及它们运行在哪个节点上?
  3. 关闭开关容器是否会导致作业处理时间变慢?

Tah*_*qvi 5

1。Num Off开关容器是什么意思? 上述情况是off switch locality由Delay Scheduler引起的:

                | router|
              +-----------+
             /             \
    +-----------+        +-----------+
    |rack switch|        |rack switch|
    +-----------+        +-----------+
    | data node |        | data node |
    +-----------+        +-----------+
    | data node |        | data node |
    +-----------+        +-----------+
Run Code Online (Sandbox Code Playgroud)

这是通过延迟调度程序进行的数据局部性(1.Node local 2. Rack local 3. off交换机)的最坏情况,并且内存和vcore已通过交换机分配在不同的机架上,并且带宽更高。

延迟调度程序将传入任务分配给位于不同机架上的关闭交换机节点,以避免任务匮乏

对于YARN中不同的调度程序,配置变量存在节点和机架阈值:

容量SCH:-使用此属性yarn.scheduler.capacity.rack-locality-additional-delay,完成了非本地交换容器分配的本地性。

Capacity-scheduler.xml

<property>
  <name>yarn.scheduler.capacity.node-locality-delay</name>
  <value>-1</value>
  <description>Number of missed scheduling opportunities after which the              CapacityScheduler attempts to schedule rack-local containers.
Typically this should be set to number of racks in the cluster, this
feature is disabled by default, set to -1.
 </description>
</property>
Run Code Online (Sandbox Code Playgroud)

https://issues.apache.org/jira/browse/YARN-4189-JIRA进行改进如果集群使用Fair调度程序,则:

https://hadoop.apache.org/docs/r2.7.4/hadoop-yarn/hadoop-yarn-site/FairScheduler.html

yarn.scheduler.fair.locality.threshold.rack

https://cs.stanford.edu/~matei/papers/2010/eurosys_delay_scheduling.pdf用于延迟计划。

2.如何识别这些“关闭开关”容器以及它们在哪个节点上运行?

相信要查看应用程序的容器,我认为我们需要通过尝试ID进行特定的应用程序尝试,然后在其中找到容器及其节点。我在RM ui中找不到任何直接链接到关闭开关容器的链接

3.关闭开关容器是否会导致作业处理时间变慢?

是的,从上面我们可以得出结论,网络开销将减慢作业处理速度。