首页 文章

YARN shell命令用于获取运行应用程序所使用的容器和vcore的数量

提问于
浏览
4

hadoop job -list 似乎只显示mapreduce作业,但是我的资源管理器UI为YARN上运行的所有作业(包括Spark和Tez等)显示了"Allocated CPU VCores"和"Allocated Memory MB"之类的内容 .

如何通过命令行而不是转到UI来获取这些结果?

1 回答

  • 3

    YARN支持不同类型的应用程序 . "MapReduce"是YARN支持的一种应用程序 . 如果使用 hadoop job (已弃用,则应使用 mapred job )或 mapred job ,则只能操作MapReduce作业 .

    要查看不同类型的应用程序(mapreduce,spark等)的状态,您应该使用YARN CLI .

    对于例如 "yarn application -list -appStates ALL" ,列出所有应用程序的状态 . 此命令的输出包含一列 "Application-Type" ,表示应用程序的类型(例如,用于MapReduce应用程序的MAPREDUCE) .

    您可以获取有关应用程序,应用程序尝试,容器等的详细信息 . 这里给出了2.7.1版Hadoop的命令:https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YarnCommands.html .

    但是,这些命令不会通过CLI返回“已分配的CPU VCores”和“Allocated Memory MB”等详细信息 .

    yarn application -status {Application ID} 命令以 "MB-seconds""vcore-seconds" 的形式返回 "Aggregate Resource Allocation"

    对于例如 -status 我的一个应用程序返回:

    Aggregate Resource Allocation : 12865641 MB-seconds, 1041 vcore-seconds

相关问题