前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >0761-7.0.3-如何使用YARN Queue Manager UI配置集群资源

0761-7.0.3-如何使用YARN Queue Manager UI配置集群资源

作者头像
Fayson
发布2020-04-21 11:36:55
2.6K0
发布2020-04-21 11:36:55
举报
文章被收录于专栏:Hadoop实操Hadoop实操

文档编写目的

在CDP DC上,YARN资源的调度程序默认为Capacity Scheduler。我们可以通过YARN Queue Manager UI来界面化配置YARN的资源队列,队列权重,队列资源,以及队列的ACL等。本文主要讲述如何在CDP DC 7.0.3集群上使用YARN Queue Manager UI来控制队列的资源分配和队列的提交策略。

  • 测试环境:

1.Redhat7.6

2.采用root用户操作

3.CM和CDP DC版本为7.0.3

创建队列并配置资源比例

1.在集群创建下列用户,并配置到不同的组。

如下图,用户usera,userb,userc,userd,usere所属的组都跟自己同名。用户userf的组为usere,与用户usere为同一个组。

2.在CM上点击集群,再点击YARN Queue Manager UI进入队列管理界面

3.点击root旁边的三个点,进行子队列的创建,这里分别创建队列usera和userb

点击后,进行添加,设置队列名和CONFIGURED CAPACITY的百分比,这里所有队列的CONFIGURED CAPACITY百分比加起来必须是100%,否则不能保存。

全部添加完之后,如下图

4.分别提交任务到root.usera和root.userb

点击蓝色的application进行查看任务运行情况,再点击下面的Scheduler查看资源分配情况

看一下当前资源分配情况,符合设置

5.修改队列usera和userb的比例,再刷新页面进行查看

修改完成后,再刷新Scheduler页面进行查看,可以看到资源分配已经动态进行了调整。

设置队列的Mapping策略

1.为用户和用户组指定资源池队列

从YARN Queue Manager UI中点击Scheduler Configuration进行Queue Mappings的配置。

代码语言:javascript
复制
u:usera:usera,u:userb:userb,g:usere:usera

输入上面的配置保存,如下图。该配置是把用户usera提交的应用提交到usera队列,把用户userb提交的应用提交到userb队列。然后是usere组的用户提交的应用会默认配置到usera队列中。每个配置之间用逗号分隔。会依次从左到右进行匹配,匹配到第一个符合要求的队列后就提交到该队列,终止匹配。

2.不指定资源池队列,提交应用进行测试。

先klist看当前初始化的principal,然后用下面的命令不指定资源池队列直接进行任务的提交。

代码语言:javascript
复制
[root@cdh02 ~]# klist
[root@cdh02 ~]# hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 1 1

任务跑起来后,在终端看到当前的application为application_1582965765783_0004

再去YARN应用程序查看该application提交到的资源池。

可以看到用户usera在不指定队列的情况下,提交应用到了usera队列。我们配置的策略生效了。

3.同样的,再对其他的用户进行不指定资源池提交任务测试

用户userb提交的应用也提交到了userb,符合我们的配置规则。

userc我们没有配置提交的队列策略,所以在不指定队列的时候,会默认提交到default池。

用户usere和userf都是属于用户组usere,所以他们都提交到了usera队列,符合我们设置的策略。

4.为用户和组配置队列映射到具有相同名称的队列,下面图是指定所有应用程序都提交到与主要组名称相同的队列里。

代码语言:javascript
复制
u:%user:%primary_group

提交任务进行测试

上图可以看到用户usera提交任务到了usera队列,符合要求。下面再用userf来进行测试。

上图也可以看到,用户userf提交任务到了他的主要组usere同名的队列上,但是由于我们并没有创建usere这个资源池队列,所以任务执行失败。符合我们的配置策略。

5.还可以配置用户提交任务到与用户名相同的池里,配置方法如下

提交任务进行测试,也符合配置策略。

总结

1.管理员可以定义默认的映射策略,以将用户提交的应用程序自动提交到指定队列。而无需在提交应用程序时指定队列名称。

2.在勾选了Override Queue Mappings配置后,用户在指定提交的队列时,可以跳过配置的队列映射,而提交到用户指定的资源池队列中。

3.队列映射是使用逗号来进行分隔多个映射的。

4.在使用多个映射分配的情况下,Capacity Scheduler以从左到右的顺序处理映射匹配,以确定首先使用哪个映射。在匹配到第一个符合的映射后,就停止往后继续匹配。

5.对于没有配置的的映射策略,则默认提交到default资源池队列中。

6.可以通过u:%user:%user或者u:%user:%primary_group来配置策略,让用户提交到与自己同名或者与自己的主要组同名的资源池队列中。

7.通过配置CONFIGURED CAPACITY的百分比,来对集群的资源按比例分配到不通的资源池队列中。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档