弹性资源池的实际CUs、CU范围、规格的含义
弹性资源池相关基本概念
本节介绍实际CUs、已使用CUs、CU范围、包周期CU(规格)的含义。
- 实际CUs是弹性资源池当前分配的可用于运行作业的计算资源总量(单位CUs)。同时作为计费的直接依据。
- 实际CUs的计算规则:
- 计费模式:
表1 计费模式 计费模式
计费对象
说明
按需
按照实际CUs大小收费。
参考弹性资源池计费模式说明。
包年包月
分为规格内、超出规格的两部分来计费
- 规格的部分按包周期计费。
- 超出规格的部分:(实际CUs-规格)的部分按需计费。成本优化:为了满足该场景下更优惠的计费,则可以通过规格变更的方式,将弹性资源池的规格扩大到与实际CUs一致,则所有实际CUs按包周期计费,整体相比原来更优惠。
详细操作指导请参考弹性资源池规格变更。
- 实际CUs与弹性资源池扩容的关系
弹性资源池的“扩容”或“缩容”就是指调整资源池的“实际CUs”。
- 实际CUs的分配示例:
如表2所示,弹性资源池实际CUs分配的计算过程如下:
- 计算队列maxCU之和:sum(队列maxCU)= 32 + 56 = 88CUs。
- 比较队列maxCU之和与弹性资源池maxCU,两者取最小值:min(88CUs,112CUs) = 88CUs。
- 再与弹性资源池minCU做比较取最大值:max(88CUs,64CUs)=88CUs
- 检查88CUs是否为16CU的倍数,由于88不能被16整除,故向上取整为96CUs。
- 定义:
已使用CUs等于当前时刻真正被作业或任务占用且正在运行的CU数量。已使用CUs存在5分钟延迟。
- 与实际CUs的区别:
实际CUs是平台为该资源池分配的总量;已使用CUs是其中“正在跑任务”的那一部分。
- 约束与限制
Spark引擎、Flink引擎允许实际CUs > 已使用CUs,差值即为“空闲可立即使用”部分。
CU范围是弹性资源池扩缩容的“安全栅栏”,由“最小CU”和“最大CU”两条边界组成,弹性资源池的实际CUs在这个区间里自动伸缩,避免无限制的资源扩容风险。
计算实际CUs时,如果计算结果小于minCU则取minCU值为实际CUs的值;如果计算结果大于maxCU那么取maxCU为实际CUs的值。即实际CUs会始终保持在CU范围的区间内。
- 最小CU(minCU)
包周期模式下,购买弹性资源池时设置的最小CU即弹性资源池的包周期CU(规格),可通过“包周期CU变更”调高最小CU。
即当弹性资源池规格扩容时,CU范围的最小值与弹性资源池的包周期CU(规格)联动,当弹性资源池的规格变化后,CU范围的最小值会修改为与包周期CU(规格)一致,而最大CU 不变。
弹性资源池缩容时,实际CUs不会低于该值,确保总有资源可立即接管作业。
弹性资源池中所有队列的最小CU数之和需要小于等于弹性资源池的最小CU数。
- 最大CU(maxCU)
弹性资源池中任意一个队列的最大CU必须小于等于弹性资源池的最大CU。
弹性资源池至少可以满足弹性资源池中所有队列按最小CU运行,尽量满足队列按最大CU运行。
包周期CU(规格)是使用包周期方式购买的CU量,购买弹性资源池时包周期CU(规格)即设置的CU范围的最小CU。
购买弹性资源池时选择的CU范围的最小值即弹性资源池规格。规格是包周期弹性资源池特有的。规格部分以包周期的计费,规格之外的部分按需计费。即将会产生包周期外的按需费用。
队列的最大CU直接影响实际CU分配,如果实际CUs超出规格,超出部分将按需计费。如需降低该场景下的整体成本,则可以通过弹性资源池规格变更的操作,扩大弹性资源池的包周期CU(规格)。规格变更成功后,新的包周期CU(规格)范围内所有资源均按照包年包月计费,相比变更前(部分按需计费)更优惠。
详细操作指导请参考弹性资源池规格变更。
