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底層內存策略來控制,當單板內存低於一定閾值時從虛擬機內複用,高於一定閾值時歸還給虛擬機

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章