一、需求说明
配置队列优先级
容量调度器,支持任务优先级的配置,在资源紧张时,优先级高的任务将优先获取资源。默认情况,Yarn将所有任务的优先级限制为0,若想使用任务的优先级功能,须开放该限制
。
二、修改配置
yarn-site.xml
<property>
<name>yarn.cluster.max-application-priority</name>
<value>5</value>
</property>
三、更新配置到服务器
上传yarn-site.xml
到102,然后,用xsync同步脚本同步到103,104.
重启Hadoop
。
四、执行任务
任务提交时
,指定优先级命令:
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar pi 5 2000000
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar pi -D mapreduce.job.priority=5 5 2000000
-D mapreduce.job.priority=5
指定任务优先级。
从下图可以看出,第四个任务是最后提交的,第一个任务执行完成后,直接执行第四个任务,而不是执行2,3任务。
也可以在任务提交后,修改优先级
语法:
yarn application -appID <ApplicationID> -updatePriority 优先级