1 yarn
yarn [--config confdir] [COMMAND | CLASSNAME]
1.1 参数:
1.1.1 resourcemanager
参数选项 | 描述 |
---|
-format-state-store | RMStateStore格式化. 如果过去的应用程序不再需要,则清理RMStateStore, RMStateStore仅仅在ResourceManager没有运行的时候,才运行RMStateStore |
-remove-application-from-state-store | 使用 -remove-application-from-state-store <appId> 从RMStateStore中删除应用程序 |
示例:
yarn resourcemanager -format-state-store
yarn resourcemanager -remove-application-from-state-store application_1620979527782_46718
1.1.2 nodemanager
yarn nodemanager
1.1.3 timelineserver
作用:
启动 timeline server。
示例:
yarn timelineserver
1.1.4 sharedcachemanager
作用:
启动Shared Cache Manager。
示例:
yarn sharedcachemanager
1.1.5 proxyserver
作用:
启动web proxy server。
示例:
yarn proxyserver
1.1.6 top
作用:
类似linux里的top命令,查看正在运行的程序资源使用情况
示例:
yarn top
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/355aae8a27062c374c5c68d49543f4f0.png)
1.1.7 version
yarn version
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e926b056153305364f9d7a34fe3ca4e9.png)
1.1.8 classpath --glob
yarn classpath --glob
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/42763abfc6ee1f06493571acca93402c.png)
查看路径。
yarn classpath
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e32dcaab6a852c7229f125fef90fba8d.png)
1.1.9 yarn jar [mainClass] args…
yarn jar [mainClass] args...
1.1.10 registrydns
yarn registrydns
1.1.11 schedulerconf
yarn schedulerconf [options]
参数 | 描述 |
---|
-add <"queuePath1:key1=val1,key2=val2;queuePath2:key3=val3"> | 添加分号分隔的队列配置。 |
-remove <"queuePath1;queuePath2"> | 移除队列,队列必须为STOPED状态,才能被删除。 |
-update<"queuePath1:key1=val1,key2=val2;queuePath2:key3=val3"> | 更新队列配置。 |
-global <key1=val1,key2=val2> | 更新调度器全局配置。 |
2 yarn application
yarn application COMMAND
参数 | 描述 |
---|
-appStates | 与 -list 配合使用,基于应用程序的状态来过滤,多个状态用逗号分隔状态。有效的状态:ALL,NEW,NEW_SAVING,SUBMITTED,ACCEPTED,RUNNING,FINISHED,FAILED,KILLED |
-appTypes | 与 -list 配合使用,基于应用程序的类型来过滤,多个应用程序用逗号分隔 |
-help | 帮助列表 |
-kill | 杀死指定的应用程序 |
-list | 从 ResourceManager 获取应用程序列表. 使用 -appTypes 基于应用程序的类型来过滤 使用 -appStates 基于应用程序的状态来过滤 |
-movetoqueue | 将应用程序移动到不同的队列 |
-queue | 与 movetoqueue配合使用,移到指定队列 |
-status | 获取应用程序的状态 |
- 获取某状态的应用列表
yarn application -list -appStates RUNNING
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/083f7f6e7e2e9d53648b6d76b127abb9.png)
- 获取某应用类型应用列表
yarn application -list -appTypes SPARK
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/04207e8a59654f178c18c67f06969f0a.png)
- 杀掉已经提交的到yarn上的应用
yarn application -kill application_1620979527782_46922
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/26a17dccba0f15c18e2578e153badc48.png)
- 获取某应用的状态
yarn application -status application_1620979527782_46922
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/3a4f70c8362a0cac86e9d98dbe8644c5.png)
- 将任务换队列
yarn application -movetoqueue application_1620979527782_46922 -queue kb_bigdata_day
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/36c21b60bb3b2b1b7be8dec44010cb7b.png)
3 yarn applicationattempt
yarn applicationattempt COMMAND
参数 | 描述 |
---|
-help | 帮助列表 |
-list | 获取应用程序尝试的列表 |
-status | 获取应用程序尝试的状态 |
- 获取应用程序尝试的列表
yarn applicationattempt -list application_1620979527782_46109
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/765ac0df1ab84ab223aee4d2d2676ecf.png)
- 获取应用程序尝试的状态
yarn applicationattempt -status appattempt_1620979527782_46109_000002
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e0431180f223545ee49fa4f2c64a30ae.png)
4 yarn container
yarn container [options]
命令选项 | 描述 |
---|
-help | 帮助 |
-list <Application Attempt Id> | 应用程序尝试的Containers列表 |
-status \<ContainerId> | 打印Container的状态 |
-signal <container ID [signal command]> | |
- 应用程序尝试的Containers列表
yarn container -list appattempt_1620979527782_46109_000002
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ae8d9b6e1b9a27e20c1869b38332cd89.png)
- 打印Container的状态
yarn container -status container_1620979527782_46109_02_000001
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/01fac13135ded2d81b87f04c014ef9ac.png)
3. 获取Container的信号状态
yarn container --signal container_1620979527782_46109_02_000001
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8d21789b62feb28276234a95186bd011.png)
5 yarn node
yarn node [options]
参数 | 描述 |
---|
-all | 与 -list 打印所有节点的报告 |
-list | 获取所有 RUNNING 状态的节点。 支持 -states 选项过滤指定的状态。节点状态包括 NEW,RUNNING,UNHEALTH,DECOMMISSIONED,LOST 和 REBOOTED |
-states | 与 -list 配合使用,用逗号分隔节点状态,只显示这些状态的节点信息 |
-status <Node-Id> | 获取指定节点的状态 |
- 查看所有节点的报告
yarn node -all -list
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/607ef46ad8f298fb16a0270a6f823354.png)
- 获取所有 RUNNING 状态的节点
yarn node -list
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/256bcdea48971dbe4243efc925736831.png)
- 显示某状态的节点信息
yarn node -list -states RUNNING
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/7089cee4583c71c661d1bb761187359f.png)
- 获取指定节点的状态
yarn node -status bj00-a-080-027-bdy.xxx.com:25319
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/d02f73edd282ef46086e3223fee60eb0.png)
6 yarn queue
yarn queue [options]
参数 | 描述 |
---|
-help | 帮助列表 |
-status | 获取队列的状态 |
- 查看某队列的状态
yarn queue -status kb_bigdata_hour
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f4c9280ecea5752708ba448eb1b83c9b.png)
7 yarn logs
yarn logs -applicationId <application ID> [options]
注:应用程序没有完成,该命令是不能打印日志的。
命令选项 | 描述 |
---|
-applicationId <application ID> | 指定应用程序ID,应用程序的ID可以在yarn.resourcemanager.webapp.address配置的路径查看(即:ID) |
-appOwner <AppOwner> | 应用的所有者(如果没有指定就是当前用户)应用程序的ID可以在yarn.resourcemanager.webapp.address配置的路径查看(即:User) |
-containerId <ContainerId> | Container Id |
-help | 帮助 |
-nodeAddress <NodeAddress> | 节点地址的格式:nodename:port (端口是配置文件中:yarn.nodemanager.webapp.address参数指定) |
- 查看指定应用程序的日志信息
yarn logs -applicationId application_1620979527782_46962
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/796c587e069e59bd6265bf34b0df9f7b.png)
- 查看指定应用和应用的所有者的日志信息
yarn logs -applicationId application_1620979527782_46962 -appOwner bd
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/0a977bd10ddc4a2342a092681eac0d51.png)
- 查询指定应用和容器的的日志信息
yarn logs -applicationId application_1620979527782_0010 -containerId container_1620979527782_0010_01_000001
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/da58a8df170a35df8b93b6cc714aff24.png)
- 查看指定应用、容器及节点地址的日志信息
yarn logs -applicationId application_1620979527782_0010 -containerId container_1620979527782_0010_01_000001 -nodeAddress bj00-a-080-027-bdy.xxx.com:6925
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/67f38bd52cdd1a680165a40a19d94fcf.png)
8 yarn daemonlog
yarn daemonlog -getlevel <host:httpport> <classname>
yarn daemonlog -setlevel <host:httpport> <classname> <level>
参数选项 | 描述 |
---|
-getlevel <host:httpport> <classname> | 打印运行在host:port的守护进程的日志级别。这个命令内部会连接http://<host:port>/logLevel?log=<name> |
-setlevel <host:httpport> <classname> <level> | 设置运行在host:port的守护进程的日志级别。这个命令内部会连接http://<host:port>/logLevel?log=<name> |
针对指定的守护进程,获取/设置日志级别.
[root@hadoopcluster78 ~]$ hadoop daemonlog -getlevel hadoopcluster82:50075 org.apache.hadoop.hdfs.server.datanode.DataNode
Connecting to http:
Submitted Log Name: org.apache.hadoop.hdfs.server.datanode.DataNode
Log Class: org.apache.commons.logging.impl.Log4JLogger
Effective level: INFO
9 yarn rmadmin
参数 | 描述 |
---|
-refreshQueues | 重载队列的ACL、状态和调度器特定的属性,ResourceManager将重新加载mapred-queues配置文件 |
-refreshNodes [-g [timeout in seconds] -client \| server] | 动态刷新dfs.hosts dfs.hosts.exclude配置,无需重启NameNode。dfs.hosts:列出了允许连入NameNode的datanode清单(IP或者机器名)dfs.hosts.exclude:列出了禁止连入NameNode datanode清单(IP或者机器名)重新读取hosts和exclude文件,更新允许连到Namenode的或那些需要退出或入编的Datanode的集合。 |
-refreshSuperUserGroupsConfiguration | 刷新用户组的配置 |
-refreshUserToGroupsMappings | 刷新用户到组的映射 |
-refreshAdminAcls | 刷新 ResourceManager 的 ACL 管理 |
-refreshServiceAcl | ResourceManager 重载服务级别的授权文件 |
-getGroups [username] | 获取指定用户所属的组 |
-help [cmd] | 显示指定命令的帮助,没有指定,则显示全部指令帮助 |
-addToClusterNodeLabels [label1,label2,label3] (label splitted by “,”) | 添加到集群节点标签。默认是true |
-removeFromClusterNodeLabels [label1,label2,label3] (label splitted by “,”) | 移除标签 |
-replaceLabelsOnNode [label1,label2,label3] (label splitted by “,”) | 替换节点标签,目前不支持在单个主机上指定多个标签。 |
-directlyAccessNodeLabelStore | 直接访问节点标签库,已经废弃,未来会移除。如果你配置了yarn.node-labels.fs-store.root-dir到一个本地目录,而不是分布式目录,则此命令只能在资源管理器节点上运行。 |
-refreshClusterMaxPriority | 刷新集群最大优先级 |
-updateNodeResource [NodeID] [MemSize] [vCores] ([OvercommitTimeout]) | 更新指定的节点资源。 |
-updateNodeResource [NodeID] [ResourceTypes]([OvercommitTimeout]) | 更新指定的节点上的资源类型。资源类型是逗号分隔的键值对,例如:memory-mb=1024M,vcores=1,resource1=2G,resource2=4m,resource1=2G,resource2=4m |
-transitionToActive [–forceactive] | 尝试将目标服务转为 Active 状态。如果使用了–forceactive选项,不需要核对非Active节点。如果采用了自动故障转移,这个命令不能使用。虽然你可以重写–forcemanual选项,你需要谨慎。 |
-transitionToStandby | 将服务转为 Standby 状态. 如果采用了自动故障转移,这个命令不能使用。虽然你可以重写–forcemanual选项,你需要谨慎。 |
-failover [–forcefence] [–forceactive] | 启动从serviceId1 到 serviceId2的故障转移。如果使用了-forceactive选项,即使服务没有准备,也会尝试故障转移到目标服务。如果采用了自动故障转移,这个命令不能使用。 |
-getServiceState | 返回服务的状态。(注:ResourceManager不是HA的时候,时不能运行该命令的) |
-getAllServiceState | 返回所有服务的状态。 |
-checkHealth | 请求服务器执行健康检查,如果检查失败,RMAdmin将用一个非零标示退出。(注:ResourceManager不是HA的时候,时不能运行该命令的) |
yarn rmadmin -getGroups bd
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/6f01c8672dea74eac7db6ba2f0a97996.png)
yarn rmadmin -getAllServiceState
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/2639753011af5f6f517d537d2ec158b1.png)
10 yarn scmadmin
运行分片缓存管理器管理客户端。
yarn scmadmin [options]
参数选项 | 描述 |
---|
-help | Help |
-runCleanerTask | 运行清理任务 |