CPU QoS CPU资源份额 CPU 资源预留 CPU 资源限额 三个名词解释(随手记)

以下内容基于华为 FusionCompute 关于计算虚拟化相关文档整理。
由于各家厂商技术实现有区别,本文内容适用于华为 FusionCompute 虚拟化,其他厂商如 SmartX、深信服、Nutanix、VMware 等,请阅读其相关技术文档确认。

什么是CPU QoS

虚拟机的CPU QoS用于保证虚拟机的计算资源分配,隔离虚拟机间由于业务不同而导致的计算能力相互影响,满足不同业务对虚拟机计算性能的要求,最大程度复用资源,降低成本

创建虚拟机时,可根据虚拟机预期部署业务对CPU的性能要求而指定相应的CPU QoS。不同的CPU QoS代表了虚拟机不同的计算能力。指定CPU QoS的虚拟机,系统对其CPU的QoS保障,主要体现在计算能力的最低保障和资源分配的优先级。

CPU QoS包含如下三个参数:

  1. CPU 资源份额
  2. CPU 资源预留
  3. CPU 资源限额、

CPU资源份额

解释

CPU份额(Shares)定义多个虚拟机在竞争物理CPU资源的时候按比例分配计算资源

举例

以一个主频为2.8GHz的单核物理主机为例,如果上面运行有三台单CPU的虚拟机。
三个虚拟机A,B,C,份额分别为1000,2000,4000。

注意:举例仅为说明CPU份额的概念,实际应用过程中情况会更复杂

竞争场景行为

物理主机主频2.8GHz,三台虚拟机满负载运行:

  • 份额比例
    • A:B:C = 1000:2000:4000 = 1:2:4
  • 资源分配:
    • 虚拟机A:2.8GHz / 7 * 1 = 400MHz
    • 虚拟机B:2.8GHz / 7 * 2 = 800MHz
    • 虚拟机C:2.8GHz / 7 * 4 = 1600MHz

非竞争场景行为

CPU份额只在各虚拟机竞争计算资源时发挥作用,如果没有竞争情况发生,有需求的虚拟机可以独占物理CPU资源。

如果虚拟机B和C均处于空闲状态,虚拟机A可以获得整个物理核即2.8GHz的计算能力。

CPU资源预留

解释

CPU资源预留定义了多个虚拟机竞争物理CPU资源的时候分配的最低计算资源

如果虚拟机根据份额值计算出来的计算能力小于虚拟机预留值,调度算法会优先按照虚拟机预留值的能力把计算资源分配给虚拟机,对于预留值超出按份额分配的计算资源的部分,调度算法会从主机上其他虚拟机的CPU上按各自的份额比例扣除,因此虚拟机的计算能力会以预留值为准。

如果虚拟机根据份额值计算出来的计算能力大于虚拟机预留值,那么虚拟机的计算能力会以份额值计算为准。

举例

以一个主频为2.8GHz的单核物理主机为例,如果上面运行有三台单CPU的虚拟机。
三个虚拟机 A,B,C,份额分别为1000,2000,4000。
三个虚拟机 A,B,C,预留值分别为 700MHz,0MHz,0MHZ。

竞争场景行为

物理主机主频2.8GHz,三台虚拟机满负载运行:

  • 虚拟机A

    • 如果按照份额分配,本应得400MHz,但由于其预留值大于400MHz,因此最终计算能力按照预留值700MHz算。
    • 多出的(700-400)MHz按照B和C各自的份额比例从B和C处扣除。
  • 虚拟机B:

    • 获得的计算能力约为(800-100)MHz
  • 虚拟机C:

    • 获得的计算能力约为(1600-200)MHz。

非竞争场景行为

CPU预留只在各虚拟机竞争计算资源时发挥作用,如果没有竞争情况发生,有需求的虚拟机可以独占物理CPU资源。

如果虚拟机B和C均处于空闲状态,虚拟机A可以获得整个物理核即2.8GHz的计算能力。

CPU资源限额

解释

CPU资源限额控制虚拟机占用物理CPU资源的上限。

举例

以一个2 vCPU的虚拟机为例,如果设置该虚拟机CPU上限为3GHz,则该虚拟机的两个vCPU计算能力被限制为1.5GHz。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值