前言 
  YARN 提供 WEB UI 服务,在 Hadoop 2.9.0 版本中,提供新 WebUI V2 服务,可提供对运行在 YARN 框架上的应用程序的可视化。 
1. 用户命令 
  用户命令主要包括对Application、ApplicationAttempt、Classpath、Container、Jar、Logs、Node、Queue和Version的使用。
1.1 application 
  使用方式:
1 yarn application [options] 
 
 
查看所有的Application 
仅显示状态为 SUBMITTED、ACCEPTED、RUNNING 应用。 
 
 
1 yarn application -kill application_1573364048641_0004 
 
1 yarn application -status application_1614179148030_0001 
 
1 yarn application -list -appStates ALL 
 
查看类型为MAPREDUCE的Application列表 
 
1 yarn application -list -appTypes MAPREDUCE 
 
移动一个Application到default队列 
注意:  如果使用 FairScheduler 时,使用此命令移动应用程序从 A 队列到 B 队列时,出于公平考虑,它在 A 队列所分配的资源会在 B 队列中重新资源分配。如果加入被移动的应用程序的资源超出 B 队列的 maxRunningApps 或者 maxResources 限制,会导致移动失败。 
 
1 yarn application -movetoqueue application_1573364048641_0004 -queue default 
 
修改一个Application的优先级 
注:  整数值越高则优先级越高 
 
1 yarn application -updatePriority 0 -appId application_1573364048641_0006 
 
1.2 jar 
  使用方式:
1 yarn jar x.jar [mainClass] args... 
 
  使用 yarn jar 提交运行 MapReduce 应用,命令如下所示:
1 yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar wordcount /input /output 
 
1.3 applicationattempt 
  使用方式:
1 yarn applicationattempt [options] 
 
1 yarn applicationattempt -help 
 
1 yarn applicationattempt -fail appattempt_1573364048641_0004_000001 
 
1 yarn applicationattempt -list application_1614179148030_0001 
 
查看具体某一个applicationattemp的报告 
 
1 yarn applicationattempt -status appattempt_1614179148030_0001_000001 
 
1.4 container 
  使用方式:
1 yarn container [options] 
 
 
查看某一个applicationattempt下所有的container 
注:  应用在 YARN 时,才能够查看出 Contanier 容器信息。 
 
1 yarn container -list appattempt_1614179148030_0001_000001 
 
1.5 logs 
  使用方式:
1 yarn logs -applicationId <application ID> [options] 
 
 
1 yarn logs -applicationId application_1614179148030_0001 
 
-查看应用程序某个container运行所在节点的log
1 yarn logs -applicationId application_1614179148030_0001 -containerId container_e01_1614179148030_0001_01_000001 
 
1.6 classpath 
  获取 yarn 的类路径,执行命令,显示如下结果:
1 2 [hadoop@hadoop1 hadoop-3.3.1]$ yarn classpath /data/hadoop-3.3.1/etc/hadoop:/data/hadoop-3.3.1/share/hadoop/common/lib/*:/data/hadoop-3.3.1/share/hadoop/common/*:/data/hadoop-3.3.1/share/hadoop/hdfs:/data/hadoop-3.3.1/share/hadoop/hdfs/lib/*:/data/hadoop-3.3.1/share/hadoop/hdfs/*:/data/hadoop-3.3.1/share/hadoop/mapreduce/*:/data/hadoop-3.3.1/share/hadoop/yarn:/data/hadoop-3.3.1/share/hadoop/yarn/lib/*:/data/hadoop-3.3.1/share/hadoop/yarn/* 
 
1.7 queue 
  使用方式:
 
 
1.8 node 
  使用方式:
 
 
 
-查看yarn所有从节点
 
 
-查看yarn所有节点的详情
1 yarn node -list -showDetails 
 
1 yarn node -list -states RUNNING 
 
1 yarn node -status hadoop1:45046 
 
1.9 version 
  使用方式:
 
2. 管理命令 
  对于 Hadoop 集群的管理员使用的相关命令,主要包括daemonlog、nodemanager、proxymanager、resourcemanager、rmadmin、scmadmin、sharedcachemanager和timelineserver命令。
2.1 resourcemanager 
1 yarn resourcemanager [options] 
 
 
格式化resourcemanager的RMStateStore 
清除 RMStateStore,如果不再需要以前的应用程序,则将非常有用。只有在 ResourceManager 没有运行时才能使用此命令。 
 
1 yarn resourcemanager -format-state-store 
 
删除RMStateStore中的Application 
从 RMStateStore 删除该应用程序,只有在 ResourceManager 没有运行时才能使用此命令。 
 
1 yarn resourcemanager -remove-application-from-state-store <appId>  
 
2.2 nodemanager 
 
2.3 proxyserver 
 
  如果启动 YARN ProxyServer 服务,需要在yarn-site.xml文件中配置如下属性:
1 2 3 4 <property > 	<name > yarn.web-proxy.address</name >  	<value > hadoop3:8089</value >  </property > 
 
2.4 daemonlog 
  使用方式:
1 2 yarn daemonlog -getlevel <host:httpport> <classname> yarn daemonlog -setlevel <host:httpport> <classname> <level> 
 
 
1 yarn daemonlog -getlevel hadoop2:8088  org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl  
 
1 yarn daemonlog -setlevel hadoop2:8088 org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl DEBUG 
 
2.5 rmadmin 
  使用方式:
 
 
重新加载mapred-queues配置文件 
重新加载队列的 ACL,状态和调度程序特定的属性,ResourceManager 将重新加载 mapred-queues 配置文件。 
 
1 yarn rmadmin -refreshQueues 
 
1 yarn rmadmin -refreshNodes 
 
在ResourceManager上刷新NodeManager的资源 
 
1 yarn rmadmin -refreshNodesResources 
 
1 yarn rmadmin -refreshSuperUserGroupsConfiguration 
 
1 yarn rmadmin -refreshAdminAcls 
 
获取ResourceManager服务的Active/Standby状态
  1 yarn rmadmin -getAllServiceState 
 
  1 yarn rmadmin -getServiceState rm1 
 
  1 yarn rmadmin -getServiceState rm2 
 
 
ResourceManager服务执行健康检查 
请求 ResourceManager 服务执行健康检查,如果检查失败,RMAdmin 工具将使用非零退出码退出。 
 
1 2 yarn rmadmin -checkHealth rm1 yarn rmadmin -checkHealth rm2 
 
2.6 timelineserver 
1 yarn-daemon.sh start timelineserver 
 
2.7 scmadmin 
  scmadmin 是 ShareCacheManager(共享缓存管理)的管理客户端,使用方式:
 
 
执行清理任务  1 yarn scmadmin -runCleanerTask 
 
先启动 SCM 服务(SharedCacheManager服务)  1 yarn-daemon.sh start sharedcachemanager