火山引擎 E-MapReduce(EMR)控制台支持您对 YARN 集群队列资源进行可视化管理,包括队列新增、队列更名和队列删除。同时可以根据用户组配置队列映射,确保指定用户组的任务按照规则提交到特定队列。
说明
EMR 软件栈版本与具体服务的详情,请参阅文档 EMR 版本概述。
说明
需将新增的用户添加到对应的用户组中。
说明
新增队列后,需点击Refresh Queue,使队列生效。
使用Capacity Scheduler调度器队列映射(Queue Mapping)特性,在capacity-scheduelr.xml配置文件中使用yarn.scheduler.capacity.queue-mappings配置用户或用户组提交作业的默认队列规则,通过使提交作业强制使用Queue Mappings中规定的映射。
在集群页面,单击 服务管理 > YARN > 服务参数 > capacity-scheduler 进行修改,定位到队列的参数配置
这里配置了2个队列developerQueue,qaQueue的映射关系,每个队列跟可视化的配置一致使用 PlacementRule
进行用户到队列的映射:在 capacity-scheduler.xml
中修改如下默认配置为true
。
<property> <name>yarn.scheduler.capacity.queue-mappings-override.enable</name> <value>true</value> </property>
新增队列配置:
<property> <name>yarn.scheduler.capacity.queue-mappings</name> <value> g:developer:developerQueue,g:qa:qaQueue </value> </property>
注意
其中yarn.scheduler.capacity.queue-mappings的值符合如下规则: u:%user:queueA,g:%group:queueB
:%user
是一个占位符,表示用户的用户名;%group
是用户所属的第一个用户组。这条规则的意思是,如果作业是由指定的用户组提交的,它会被自动提交到相应的队列。
在上面的配置中,指定了 developer组提交的作业到 developerQueue中, qa组提交的作业到qaQueue中。
注意
PlacementRule
的配置非常灵活,您可以根据实际需求调整规则,使其更好地适应您的组织架构。通过上述步骤,您可以基于用户组自动将作业提交到不同的队列中,从而帮助更好地管理和分隔不同项目或部门的资源使用。
登陆集群,使用 hadoop提交或者 spark-sql提交,使用不同用户提交YARN作业来做快速验证。
访问YARN ResourceManager UI页面,详细操作请参考访问链接。
在YARN ResourceManager UI页面可以查看用户提交的作业和队列。
举例