Yarn命令

概述

yarn命令是调用的bin/yarn脚本。执行yarn命令时如果不带上参数信息则会打印yarn命令的帮助信息。

yarn命令的用法:

yarn有一个命令参数解析框架,可以用来解析通用命令参数以及运行类。命令参数及描述如下表:

–config confdir 覆盖默认配置目录,默认配置目录为: ${HADOOP_PREFIX}/conf。
–loglevel loglevel 覆盖默认日志级别,可选的日志级别为:FATAL,ERROR,WARN,INFO,DEBUG,以及TRACE,默认日志级别为INFO。
GENERIC_OPTIONS(通用命令参数) 一套在多种命令里面都可能会用到参数项,具体见通用命令项表
COMMAND COMMAND_OPTIONS 各种命令以及其参数,接下来主要讲述的内容。大致可以分为普通用户命令和系统管理员命令两大类。

通用项列表:

命令选项 描述
-archives <comma separated list of archives> 用逗号分隔计算中未归档的文件,仅仅针对job
-conf <configuration file> 制定应用程序的配置文件
-D <property>=<value> 使用给定的属性值
-files <comma separated list of files> 用逗号分隔的文件,拷贝到Map reduce机器,仅仅针对job
-jt <local> or <resourcemanager:port> 指定一个ResourceManager,仅仅针对job
-libjars <comma seperated list of jars> 将用逗号分隔的jar路径包含到classpath中去,仅仅针对job

用户命令

主要是Hadoop集群普通用户常用的命令

application

主要用来打印应用信息、杀死应用进程。

用法:

参数项详情:

-appId <ApplicationId> 指定要操作的应用ID
-appStates <States> 和-list命令一起使用,基于应用状态来过滤应用。多个状态用逗号分隔。可用状态为:ALL, NEW, NEW_SAVING, SUBMITTED, ACCEPTED, RUNNING, FINISHED, FAILED, KILLED
-appTypes <Types> 使用-list命令,基于应用类型来过滤应用,如果应用类型有多个,用逗号分隔
-list 列出从RM返回的应用程序,使用-appTypes参数实现基于应用类型的过滤,使用-appStates参数使用基于应用状态的过滤
-kill <ApplicationId> kill指定的应用程序
-status <ApplicationId> 打印应用程序的状态
-updatePriority <Priority> 更新应用优先级,可以使用“appId”指定应用ID

applicationattempt

打印application attempt的报告。

用法:

参数项详情:

-help 帮助
-list <ApplicationId> 打印指定应用的application attempt列表
-status <Application Attempt Id> 打印application attempt的状态

classpath

打印获取Hadoop相关的jar以及其他必需的库所用的类路径

用法:

container

打印container信息。

用法:

参数项:

-help 帮助
-list <Application Attempt Id> 应用程序尝试的Containers列表
-status <ContainerId> 打印Container的状态

jar

运行jar文件,用户可以将写好的YARN代码打包成jar文件,用这个命令去运行它。

用法:

logs

转存container日志。

用法:

参数项:

-applicationId <application ID> 指定应用程序ID,应用ID可以在yarn.resourcemanager.webapp.address配置的路径查看(即:ID)
-appOwner <AppOwner> 应用的所有者(默认当前用户)
-containerId <ContainerId> Container Id
-help 帮助
-nodeAddress <NodeAddress> 节点地址,格式:nodename:port (端口是配置文件中:yarn.nodemanager.webapp.address参数指定),如果指定了containerId,就必须指明nodeAddress

node

打印节点信息。

用法:

参数项:

-all 和-list一起使用,列出所有的节点
-list 列出所有RUNNING状态的节点,使用-states选项过滤指定状态的节点,使用-all显示所有的节点
-states <States> 和-list配合使用,过滤指定状态的节点,多个状态以逗号分隔,可用状态为:NEW,RUNNING,UNHEALTHY,DECOMMISSIONED,LOST,REBOOTED
-status <NodeId> 打印指定节点的状态

queue

打印队列信息。

用法:

参数项:

help 帮助
-status <QueueName> 打印队列的状态

version

打印Hadoop版本信息。

用法:

管理员命令

为Hadoop集群管理员提供的命令。

daemonlog

在守护进程中为指定类获取/设置日志级别。

用法:

参数项:

-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>

举例:

nodemanager

启动nodemanager。

用法:

proxyserver

启动web proxy server。

用法:

resourcemanager

启动ResourceManager。

用法:

参数:

-format-state-store 格式化RMStateStore。如果之前的应用可以丢弃,则清理RMStateStore, 仅可以在ResourceManager没有运行的时候执行

rmadmin

运行ResourceManager管理客户端。

用法:

参数详情:

-refreshQueues 重载队列的ACL,状态和调度器特定的属性,ResourceManager将重载mapred-queues配置文件
-refreshNodes 在ResourceManager刷新hosts信息;
dfs.hosts:列出了允许连入NameNodedatanode清单(IP
或者机器名);
dfs.hosts.exclude:列出了禁止连入NameNodedatanode清单(IP
或者机器名);
重新读取
hostsexclude文件,更新允许连到Namenode的或那些需要退出或入编的Datanode的集合。
-refreshUserToGroupsMappings 刷新用户到组的映射。
-refreshSuperUserGroupsConfiguration 刷新用户组的配置
-refreshAdminAcls 刷新ResourceManager的ACL管理
-refreshServiceAcl ResourceManager重载服务级别的授权文件。
-getGroups [username] 获取指定用户所属的组。
-transitionToActive [–forceactive] [–forcemanual] <serviceId> 尝试将目标服务转为 Active 状态。如果使用了–forceactive选项,不需要核对非Active节点。如果采用了failover,这个命令不能使用。虽然可以重写–forcemanual选项,但需要谨慎。
-transitionToStandby [–forcemanual] <serviceId> 将服务转为 Standby 状态. 如果采用了failover,这个命令不能使用。虽然可以重写–forcemanual选项,但需要谨慎。
-failover [–forceactive] <serviceId1> <serviceId2> 启动从serviceId1 到 serviceId2的故障转移。如果使用了-forceactive选项,即使服务没有准备,也会尝试故障转移到目标服务。如果采用了自动故障转移,这个命令不能使用。
-getServiceState <serviceId> 返回服务的状态。(注:ResourceManager不是HA,不能运行该命令)
-checkHealth <serviceId> 请求服务器执行健康检查,如果检查失败,RMAdmin将用一个非零标示退出。(注:ResourceManager不是HA,不能运行该命令的)
-help [cmd] 显示指定命令的帮助,如果没有指定,则显示命令的帮助

scmadmin

运行Shared Cache Manager管理客户端。

用法:

参数:

-help Help
-runCleanerTask 运行cleaner任务

sharedcachemanager

启动Shared Cache Manager。

用法:

timelineserver

启动TimeLineServer

用法:

##########

发表评论