0881-7.1.7-如何配置动态队列调度功能

2022-06-14 11:41:55 浏览数 (1)

作者:唐辉

1.文档编写目的

动态队列调度功能可以通过在预定义时间重新配置属性值来动态更改系统状态。目前还是技术预览版,生产使用需谨慎考虑

动态队列调度功能仅支持队列级资源分配配置。此外,该功能仅在relative 和absolute资源分配模式下受支持。

动态队列配置功能能够设置将预定义配置应用于 YARN 队列管理器系统的时间。

以下场景适合使用动态队列调度功能: 

需要为集群安排两个队列状态,即状态 A 和状态 B。状态 A 应在上午 8 点至晚上 8 点使用,状态 B 应在晚上 8 点至上午 8 点使用。在这种情况下,需要创建两个调度规则:

  • 调度规则 A 在上午 8 点生效,并将动态配置状态-A 应用于集群。
  • 调度规则 B 在晚上 8 点生效,并将动态配置状态-B 应用于集群。
  • 测试环境

1.CDP7.1.7 、CM 7.4.4

2.操作步骤

2.1操作步骤

启用YARN Queue Manager Dynamic,配置步骤如下:

1.在Cloudera Manager页面, 打开 YARN Queue Manager > 配置 

2.找到 YARN Queue Manager Dynamic Configuration Tech Preview

3.选中YARN Queue Manager Webapp Default Group.

4.并保存重启YARN 和 YARN Queue Manager.

如下图:

2.2配置动态队列

重启完成后,从群集>YARN Queue Manager UI 进入YARN 队列管理页面,如下:

可以看到多了一个Schedul(Tech Preview) 页签。

默认有一个default队列占用100%,首先在root队列下创建一个队列fayson,这里配置为50%,现在default和fayson 各50%。

然后到Schedul(Tech Preview) 页签配置动态队列:

然后点击 Add,添加动态队列,这里可以添加多个动态队列信息,但是需要用户自己确认时间是否会有冲突。通常的做法是根据资源池每天的闲时和繁忙时间段做调整。比如配置的动态队列faysontest 则是12:00 AM 触发,faysontest2则是 1:00 PM 触发,意味着每天12:00 AM-1:00 PM 之间使用的队列配置是faysontest,而1:00 PM-12:00 AM则是使用的faysontest2 的动态配置

然后在root 根队列中左键点击如下图的更多选项,选择编辑子队列信息

比如想要设置fayson 队列在某个时间段占用率为70%,那么可以如下修改并保存

保存后会有预览信息如下,确认无误可以点击Next->:

然后设置动态队列触发时间,本次为测试测试为每2分钟触发一次,也就是2分钟后看到的动态资源池就是上图设置的: fayson:70%,default:30%,也可以按每天的某个点或者每周的某个点、星期几来触发

然后配置动态队列的名称用于区分,这里设置名称为:Dynamic Queue Test

最后一步确认配置,保存并添加备注:

然后查看如下,也可以通过view 来查看或者通过Edit 来修改刚刚编辑的动态队列,如果要删除动态队列,需要先Disable 。

2分钟后发现刚刚配置的动态队列已生效。

3.参考文档

在使用动态队列时需要注意,如果调度两个或多个动态配置同时应用,就会发生动态队列配置相关的调度冲突。尽管动态配置的重复模式可以是开放式的,但是并不能很好的检查到调度冲突。由于动态队列调度系统是一个接一个地执行冲突的动态配置,没有任何预定的顺序。为了防止对同一属性的并发更改。必须确保多个动态队列调度的配置没有冲突。

参考文档:

代码语言:javascript复制
https://docs.cloudera.com/cdp-private-cloud-base/7.1.7/yarn-allocate-resources/topics/yarn-dynamic-queue-scheduling.html

0 人点赞