YARN:通过applicationId获取容器

时间:2016-07-26 15:30:33

标签: hadoop yarn

我想列出特定MR作业运行容器的节点 我只有application_id 是否可以使用 Hadoop REST API 和/或通过命令行来实现?

2 个答案:

答案 0 :(得分:2)

这可以使用yarn命令来完成。

  1. 运行yarn applicationattempt -list <Application Id>以获得应用尝试ID
  2. 运行yarn container -list <Application Attempt Id>以获取容器ID
  3. 运行yarn container -status <Container Id>获取任何特定容器的主机。

如果您希望在bash脚本中使用此命令,或者想为具有大量容器的应用程序获取每台主机,则可能需要解析出try / Container ID和主机,但这至少是一个开始。 / p>

答案 1 :(得分:0)

您可以使用资源管理器UI找到它们。在现有应用程序中按ID查找应用程序,然后单击包含ID的链接。您将看到您的应用程序统计信息。点击跟踪网址,然后点击“历史记录”链接。在那里,您将能够在地图操作中找到任务并重新进行选择。您可以打开每个任务并查看信息,分配给哪个节点,尝试的nubmer,每个任务的日志和尝试以及许多其他有用的信息。

要从命令行获取有关容器状态的信息,可以使用bash中的yarn container -status命令