Hypervisor提供了一個軟件抽象層—一個虛擬化層—在底層硬件與上層軟件之間。Hypervisor然后能夠使用來自底層硬件的計算資源創建完全隔離的邏輯實例,和這些邏輯實例運行在獨立的計算機上并沒有什么差異。例如,hypervisor管理工具配置了運營虛擬機的內存空間以及處理器核心。一旦創建完成,每個虛擬機實例就能夠支撐其自己的操作系統與應用。
通常有兩種類型的hypervisor。Type 1 hypervisor直接安裝在物理硬件上,稱為裸金屬hypervisor。Type 2 hypervisor安裝在已有的主機操作系統中,稱為托管hypervisor。Type 1 hypervisor應用更為廣泛,因為直接訪問底層硬件通常性能最好而且能夠承載的虛擬機數量也是最多的。Type 2 hypervisor依賴主機操作系統運行,主機操作系統的計算開銷往往減少了可用的計算性能并大大減少了物理系統能夠支持的虛擬機數量。然而,兩種類型的hypervisor創建及維護虛擬機的機制在本質上沒什么差異。
虛擬機優勢使用虛擬機具備一些優勢。首先,虛擬機允許多個獨立的實例在同一臺物理服務器上共存。這能夠大大增加物理服務器資源的使用效率,運行同樣數量的工作負載需要的物理硬件減少了,降低了企業的系統維護成本、電力消耗以及制冷需求。這一典型的應用場景稱之為服務器整合,將運行在兩臺或更多的物理服務器上的工作負載作為虛擬機被部署在一臺物理服務器上。
工作負載的可移動性是虛擬機具備的眾多優勢中的另一個。直接安裝在物理硬件上的操作系統以及應用通常與特定的硬件相關,比如專門的設備驅動。Hypervisor提供的抽象使得虛擬的計算資源獨立于底層硬件,這樣就能夠通過局域網將虛擬機從一臺物理主機遷移到另一個,通常只有很短時間的中斷。唯一的要求是hypervisor兼容而且在目標服務器上有足夠的計算資源用于支持虛擬機。該過程通常被稱為在線遷移。
虛擬機具備的另一優勢是快速復制。虛擬機數據實例運行在已分配的內存空間中。這意味著一個完整的虛擬機就是一個使用.vmdk或者.xhdx擴展名的磁盤文件。整個虛擬機,包括操作系統、驅動、應用以及相關的文件被封裝在一個磁盤文件中,能夠快速加載以啟動虛擬機并被快速復制用于創建克隆虛擬機,只要不違背操作系統以及應用許可即可。此外,虛擬機狀態變化能夠被捕獲并存儲在磁盤文件中,稱之為快照,允許保存虛擬機狀態并定期存儲,如果虛擬機宕機,那么可以快速恢復到指定的快照時點。也可以使用傳統的虛擬機感知備份工具對虛擬機進行備份。
虛擬機不足之處虛擬機一個明顯的不足與性能以及資源使用相關。虛擬化允許物理服務器共享使用資源—這在傳統的非虛擬化系統中幾乎是不可能的。這允許分配比物理環境更多的資源給虛擬機——稱之為超額認購。數量較少的超額認購幾乎不會影響虛擬機性能因為大多數工作負載并不是以恒定的方式運行,相反大多數工作負載對計算性能的需求隨時間變化而不斷波動,hypervisor能夠動態調配某些資源以應對不斷變化的需求。然而,過度超額訂購可能會嚴重影響某些虛擬機的性能而且甚至可能導致工作負載的不穩定。IT管理員在分配資源時必須深思熟慮以避免出現超額認購過度。
虛擬機的其他不足虛擬機第二個主要的不足是服務器整合帶來的無法避免的風險。傳統服務器出故障,其承載的負載無法繼續運行,但其他服務器以及工作負載并不受影響。虛擬服務器出故障時,運行在虛擬服務器上的所有虛擬機都無法訪問,給企業帶來了更多潛在的破壞。例如,如果虛擬服務器承載10臺虛擬機,如果服務器出現故障,那么10個工作負載都會受影響。IT管理員通常組合使用防護與可用性策略緩解虛擬服務器破壞造成的影響并加速虛擬機的恢復過程。