虛擬CPU
虛擬CPU
一個物理CPU可劃分成多個虛擬CPU,一個虛擬CPU可以支持4到8個虛擬機。
目錄
一個物理CPU劃分成多個虛擬CPU
一個虛擬機可以分配多少個虛擬CPU,以及如何在伺服器上限制虛擬CPU的數量?
一個物理CPU一般一個內核會支持多個處理線程(英特爾超線程技術)。這就意味著一個六核的Xeon處理器可以提供給伺服器六個物理CPU。當超線程開啟的時候,每個線程可以作為一個物理CPU,所以如果這個六個核都開啟了雙線程支持,那麼伺服器將看到12個物理CPU。
當安裝了虛擬化層,每個物理CPU被抽象成每個虛擬CPU,通常情況下,會為每個內核劃分可用的虛擬CPU資源,並允許多個虛擬CPU虛擬機共享一個物理處理器內核。默認情況下,虛擬化層會給每個工作負載分配一個虛擬CPU(一個核)。
一般一個虛擬CPU可以支持4到8個虛擬機。假設我們使用保守限制,例如每個虛擬CPU支持4個虛擬機。假如伺服器有兩個4核虛擬CPU(共八核),預計這個虛擬CPU伺服器可能支持32個虛擬機 或者更多。如果是4個4核的虛擬CPU(共16核),預計伺服器會支持64個虛擬機或更多。
要知道,如果多個虛擬機可以共享一個虛擬CPU,那麼每個虛擬機可以用的虛擬CPU資源就會減少,可能會影響虛擬機的性能。如果一個伺服器上的工作負載需要更多的虛擬CPU,最好是在一個虛擬CPU上部署更少的虛擬機。
此外,你也可以給一個虛擬機分配多個虛擬CPU,但是最重要的是虛擬CPU不能超過伺服器中實際處理器的數量。例如,假如一個伺服器只有一個虛擬CPU,那麼只能給每個虛擬機分配一個虛擬CPU。假如伺服器有兩個處理器,最多只能給一個虛擬機分配兩個虛擬CPU。如果伺服器有四個虛擬CPU,那麼一個虛擬機最多分配不能超過四個虛擬CPU。