Apache Hadoop YARN 是开源 Hadoop 分布式处理框架中的资源管理和作业调度技术。作为 Apache Hadoop 的核心组件之一,YARN 负责将系统资源分配给在 Hadoop 集群中运行的各种应用程序,并调度要在不同集群节点上执行的任务。
CapacityScheduler允许多租户安全地共享大型集群,以便在分配的容量限制下及时为其应用程序分配资源,同时最大化吞吐量和群集的利用率。
可到EMR控制台->左侧的【组件管理】找到yarn进行配置,在yarn的配置文件yarn-site.xml中开启Fair Scheduler。如下图1:
CapacityScheduler的配置文件位于hadoop目录下的etc/hadoop/capacity-scheduler.xml。CapacityScheduler有一个名为root的预定义队列。系统中的所有队列都是root队列的子节点。
可以通过在yarn.scheduler.capacity.root.queues配置中,使用逗号分隔的子队列列表来设置更多队列。
下面是一个示例,其中包含三个顶级子队列a,b和c以及a和b的一些子队列:
我们通过EMR控制台,左侧的【组件管理】进入Yarn的Web UI界面:
需要查看提交到yarn的应用作业情况
yarn application [options]
参数 | 说明 |
---|---|
-list | 打印RM上所有的应用信息。如果需要过滤出某个状态的应用,可以使用-appStates;使用-appTypes则可以过滤某个类型的应用 |
-appStates <States> | 打印RM上符合states的应用信息。 States 的取值范围为:ALL, NEW, NEW_SAVING, SUBMITTED, ACCEPTED, RUNNING, FINISHED, FAILED, KILLED |
-appTypes <Types> | 打印RM上符合Types的应用信息。 |
-status <ApplicationId> | 查看应用ID对应的应用情况 |
yarn application -kill <ApplicationId>
说明:<ApplicationId> 可用 -list 查看到,或者登陆YARN快捷访问URL查看。
提交运行一个YARN的应用jar包。用户可以将写好的YARN代码打包成jar文件,用这个命令去运行它
yarn jar <jar> [mainClass] args...
参数 | 说明 |
---|---|
<jar> | 对应的jar包 |
mainClass | jar包mian函数入口的class类名 |
args... | 运行需要传入的参数 |
yarn logs -applicationId <application ID> [options]
参数 | 说明 |
---|---|
-applicationId <application ID> | 指定应用程序ID,可用 -list 查看到,或者登陆YARN快捷访问URL查看。 |
-appOwner <AppOwner> | 应用的所有者(如果没有指定就是当前用户)应用程序的ID可以在yarn.resourcemanager.webapp.address配置的路径查看(即:User) |
-containerId <ContainerId> | containerId, 如果指定了containerId,则必须连nodeAddress一起指定 |
-nodeAddress <NodeAddress> | 节点地址的格式:nodename:port, 如果指定了nodeAddress,则必须连containerId一起指定 |
yarn node [options]
参数 | 说明 |
---|---|
-all | 所有的节点,不管是什么状态的。 |
-list | 列出所有RUNNING状态的节点。支持-states选项过滤指定的状态,节点的状态包 含:NEW,RUNNING,UNHEALTHY,DECOMMISSIONED,LOST,REBOOTED。支持--all显示所有的节点。 |
-states <States> | 和-list配合使用,用逗号分隔节点状态,只显示这些状态的节点信息。 |
-status <NodeId> | 打印指定节点的状态。 |
yarn container [options]
参数 | 说明 |
---|---|
-list <Application Attempt Id> | 应用程序尝试的Containers列表 |
-status <ContainerId> | 打印Container的状态 |
yarn version
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。