Yarn标签调度实验
2018-03-01 08:47
281 查看
1.环境准备:使用ambari装了有三个节点的集群,hadoop版本要2.6.0以上,本次测试的hadoop版本是2.7.1,具体的节点分配如下:
2.在ambari界面yarn配置页面打开yarn Node Labes功能,如下图:
保存修改的配置,重启yan服务3.添加标签
所有的标签要先添加再使用,切换yarn用户,通过以下命令添加标签:
5.给各个节点打上标签:
注:再给节点指定标签的时候resourcemanger会自动死掉,重启以后,继续指定,直到指定完成。
6.设置,通过队列指定标签
目前还不支持提交应用程序时指定标签,只能通过指定队列,并设置队列的默认标签达到使用标签目的。
添加的队列和标签,以及节点和标签的对应关系如下:
在yarn-site添加属性:
7.测试:
注:
在为节点指定标签的时候,不要把所有的节点都指定标签,否则在使用没有指定标签的队列(如本次测试的default,test_queue_3队列)在跑任务的时候,队列就没有资源可以利用,导致任务无法继续进行。这个要根据自己的需求来定
使用以下命令,可以去掉节点上的标签:
在使用default、test_queue_3队列跑任务就ok了
更多精彩原创文章,详见红象云腾社区
2.在ambari界面yarn配置页面打开yarn Node Labes功能,如下图:
保存修改的配置,重启yan服务3.添加标签
所有的标签要先添加再使用,切换yarn用户,通过以下命令添加标签:
su – yarn yarn rmadmin -addToClusterNodeLabels test_labe_1,test_labe_2添加两个标签test_labe_1,test_labe_24.用命令查看标签
yarn cluster --list-node-labels
5.给各个节点打上标签:
yarn rmadmin -replaceLabelsOnNode "crh-1,test_labe_1" yarn rmadmin -replaceLabelsOnNode "crh-2,test_labe_2" yarn rmadmin -replaceLabelsOnNode "crh-3,test_labe_2"crh-1节点上带的是test_labe_1,crh-2、crh-2节点上带的是test_labe_2,可以通过yarn的resourcemanger UI界面查看标签的分配情况:
注:再给节点指定标签的时候resourcemanger会自动死掉,重启以后,继续指定,直到指定完成。
6.设置,通过队列指定标签
目前还不支持提交应用程序时指定标签,只能通过指定队列,并设置队列的默认标签达到使用标签目的。
添加的队列和标签,以及节点和标签的对应关系如下:
在yarn-site添加属性:
yarn.node-labels.manager-class=org.apache.hadoop.yarn.server.resourcemanager.nodelabels.RMNodeLabelsManager设置队列,指定标签,在yarn配置的Scheduler选项中添加一下内容:
yarn.scheduler.capacity.root.queues=default,test_queue_1,test_queue_2,test_queue_3 yarn.scheduler.capacity.root.default.capacity=10 yarn.scheduler.capacity.root.test_queue_1.capacity=30 yarn.scheduler.capacity.root.test_queue_2.capacity=30 yarn.scheduler.capacity.root.test_queue_3.capacity=30 yarn.scheduler.capacity.root.default.maximum-capacity=100 yarn.scheduler.capacity.root.test_queue_1.maximum-capacity=100 yarn.scheduler.capacity.root.test_queue_2.maximum-capacity=100 yarn.scheduler.capacity.root.test_queue_3.maximum-capacity=100 //*表示所有标签 yarn.scheduler.capacity.root.accessible-node-labels=* yarn.scheduler.capacity.root.test_queue_1.accessible-node-labels=test_labe_1 yarn.scheduler.capacity.root.test_queue_2.accessible-node-labels=test_labe_2 yarn.scheduler.capacity.root.accessible-node-labels.test_labe_1.capacity=60 yarn.scheduler.capacity.root.accessible-node-labels.test_labe_2.capacity=40 yarn.scheduler.capacity.root.test_queue_1.accessible-node-labels.test_labe_1.capacity=100 yarn.scheduler.capacity.root.test_queue_2.accessible-node-labels.test_labe_2.capacity=100 //注意:第一个逗号前的空格不可少,表示无标签 yarn.scheduler.capacity.root.default-node-label-expression= ,test_labe_1,test_labe_2 //注意:值是一个空格 yarn.scheduler.capacity.root.default.default-node-label-expression= //注意:值是一个空格 yarn.scheduler.capacity.root.test_queue_3.default-node-label-expression= yarn.scheduler.capacity.root.test_queue_1.default-node-label-expression=test_labe_1 yarn.scheduler.capacity.root.test_queue_2.default-node-label-expression=test_labe_2保存修改的配置重启yarn使用命令查看队列
7.测试:
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi -Dmapreduce.job.queuename=test_ queue_1 1 1
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi -Dmapreduce.job.queuename=test_ queue_2 1 1
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi -Dmapreduce.job.queuename=test_ queue_3 1 1
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 1 1
注:
在为节点指定标签的时候,不要把所有的节点都指定标签,否则在使用没有指定标签的队列(如本次测试的default,test_queue_3队列)在跑任务的时候,队列就没有资源可以利用,导致任务无法继续进行。这个要根据自己的需求来定
使用以下命令,可以去掉节点上的标签:
yarn rmadmin -replaceLabelsOnNode "crh-3,"
在使用default、test_queue_3队列跑任务就ok了
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 1 1
hadoop jar /usr/crh/5.0.2.4-1136/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi -Dmapreduce.job.queuename=test_queue_3 1 1
更多精彩原创文章,详见红象云腾社区
相关文章推荐
- Yarn配置标签的调度策略,刷新队列报错: default cannot be found during refresh
- Yarn 2.8.x 基于标签的调度
- Yarn三、YARN 资源管理与调度、参数配置
- Yarn的原理与资源调度
- hadoop - hadoop2.6 伪分布式 - 全局配置 和 启用 YARN 进行任务调度与资源管理
- 【操作系统】实验二 作业调度模拟程序
- 操作系统-实验二作业调度模拟程序
- 深度理解yarn架构及其作业调度机制
- Hadoop入门之Yarn调度MR流程
- 操作系统之实验三 进程调度模拟程序
- Hadoop YARN中内存和CPU两种资源的调度和隔离
- Hadoop基础教程-第5章 YARN:资源调度平台(5.1 YARN介绍)(草稿)
- 实验二、作业调度实验
- 1111实验二 作业调度模拟实验
- 实验三 进程调度模拟程序
- [操作系统]实验三进程调度模拟程序
- 操作系统实验之磁盘调度
- 一张图让你轻松搞定yarn资源调度流程
- 实验三 进程调度模拟程序
- 实验二(作业调度)FCFS