在 YARN 中为 CLI 提交的作业设置 applicationTags 属性

set applicationTags property in YARN for jobs submitted by CLI

我想跟踪 YARN 中的一些相关应用程序。它们是通过命令行提交的,例如

yarn jar hadoop-mapreduce-examples.jar pi 10 100

Python 确实有 easy-to-use YARN client 那 returns 如下:

finalStatus = SUCCEEDED
id = application_1458083392566_0929
state = FINISHED
name = QuasiMonteCarlo
applicationType = MAPREDUCE
user = awoolford
applicationTags = 
[...etc...]

我注意到有一个 applicationTags 属性。这将是跟踪相关应用程序组的理想方式。我尝试通过 HADOOP_CLIENT_OPTS 设置它,例如

HADOOP_CLIENT_OPTS="-DapplicationTags=batch123,chunk62" hadoop jar [...etc...]

...但是当我尝试通过 Python 客户端检索它们时,applicationTags 字符串没有出现在 YARN 中。

问)如何从命令行提交 YARN 作业并填充 applicationTags 属性?

需要设置的属性称为mapreduce.job.tags(参见Jira)。因此,对于计算 Pi MapReduce 示例,您可以像这样标记作业:

yarn jar hadoop-mapreduce-examples.jar pi -Dmapreduce.job.tags=myJobTag 10 100

感谢来自 Cloudera 的 Neerja Khattar 了解如何执行此操作。