• FusionCompute R3C00以及后续版本VCPU和物理CPU以及HZ资源的关系的关系以及内存复用的


    R3C00后,虚拟机增加了一个CPU QoS参数——预留,概念为无论主机任何压力下,都保证虚拟机可以获取的CPU资源,单位MHz,默认值为0,范围为【0, VCPU数量*CPU主频】

     

    有了CPU预留概念后,就可以确定VCPU和物理CPU的关系:

    例如主机有一个1物理CPU,主频2000MHz,,如果创建一个1核虚拟机,虚拟机Qos预留如果设置为1000MHz,那么

    物理CPU = 2VCPU

    如果预留设置为2000MHz,物理CPU=1VCPU

    如果预留设置为0,物理CPU=无限个VCPU

    了解更多请参考文档或电话咨询

     

    默认情况下,VCPU和物理CPU没有严格对应关系,Hypervisor的CPU调度算法会平衡不同VCPU运行在PCPU上,未产生竞争情况下,1个VCPU最多能够获得1个PCPU的能力,即对应物理核能力的上限

     

    举个例子:PCPU 2.4GHz,没有竞争的情况下,配置1VCPU的虚拟机最多能够获得2.4GHz,2VCPU对应2.4GHz*2(但并不等于4.8GHz,虚拟机内呈现的是2个虚拟核,因此单线程业务最多仍然只有2.4GHz能力),以此类推

     

    R3C00开始引入了HZ的概念,可以细化定制虚拟机VCPU的限制(上限),预留(下限)。

     

    限制(上限)定义了虚拟机获取PCPU能力的上限,比如PCPU 2.4GHz,2VCPU虚拟机可配置最高限制为4800MHz(2.4GHz*2),假如当前设置为2400MHz,在无竞争条件下,虚拟机内部加压最多只能获取1个PCPU的能力;默认限制为0(不限制),效果与配置最高限制相同。

     

    预留(下限)定义了虚拟机获取PCPU能力的下限,同样PCPU 2.4GHz,2VCPU虚拟机可配置最高预留为4800MHz(2.4GHz*2),假如当前设置为2400MHz,在竞争条件下,该虚拟机能够确保至少获得1个PCPU的能力;但预留不意味着独占,在该虚拟机没有CPU压力时,这部分CPU资源仍然可以被其他虚拟机使用

     

     

    1、开启内存复用后,理论可以增加的复用内存多少不是个固定值,与虚拟机具体内存使用情况有关。简单来讲,只有虚拟机存在空闲内存时才有可能复用内存给其他虚拟机。

    假定虚拟机内存利用率是30%,那么理论上有70%的内存可以复用给其他虚拟机,因此我们一般对外的经验公式是:内存复用率 = 90% - 虚拟机平均内存利用率,10%预留防止内存用尽。

     

    举个例子:单板内存40G,虚拟机平均内存利用率是60%,那么建议增加复用内存量是40G * 30% = 12G,即总计52G内存规格的虚拟机。

     

    版本对虚拟机发放数量没有限定,如果不计利用率超量发放,会导致虚拟机产生大量内存交换,影响业务性能(已经在Portal增加告警)。

     

    2、复用和回收完全由UVP底层内存策略来控制,当单板内存低于一定阈值时从虚拟机内复用,高于一定阈值时归还给虚拟机

  • 相关阅读:
    Nodejs 接收RabbitMQ消息
    c#后台线程更新界面
    Nodejs JSON.parse()无法解析ObjectID和ISODate的问题
    【百度小程序】细数百度小程序踩的坑
    工作中可能用到的工具
    input输入文字的时候背景会变色,如何去掉呢?
    百度小程序开发工具不能预览
    引入外部 CDN失效时--怎么加载本地资源文件(本文以jquery为例)
    swiper插件遇到的坑
    原生JS实现JQuery的addClass和removeClass
  • 原文地址:https://www.cnblogs.com/pipci/p/12241646.html
Copyright © 2020-2023  润新知