KVM再次引爆Type 1與Type 2 hypervisor戰(zhàn)爭(zhēng)
據(jù)IBM首席虛擬化架構(gòu)師Michael Day所說,基于內(nèi)核的虛擬機(jī)(KVM)口碑不佳更多是由于人們對(duì)它究竟是Type 1還是Type 2虛擬化平臺(tái)存在誤解。
爭(zhēng)論由來已久,但是Type 1 與Type 2服務(wù)器虛擬化平臺(tái)之間的區(qū)別仍在不斷討論之中,尤其是提到KVM的時(shí)候,因?yàn)樗贿m合歸入任何一個(gè)類型中。
Michael Day在上周的Linux基金會(huì)合作峰會(huì)上就KVM神話做了演講報(bào)告,他說:“圍繞KVM的安全和性能,人們已經(jīng)得出它究竟是Type 1還是Type 2的結(jié)論,一些IBM的用戶已經(jīng)看到并提及如下看法:如果KVM作為Type 2虛擬化平臺(tái)運(yùn)行在操作系統(tǒng)之上,性能將更難達(dá)到。他們同時(shí)暗示這樣也更加不安全。”
KVM歷史性爭(zhēng)論
KVM是Linux內(nèi)核中的虛擬化層。與所有的服務(wù)器虛擬化實(shí)現(xiàn)類似,它包括被稱為虛擬機(jī)監(jiān)視器的元素,該元素對(duì)工作負(fù)載及物理硬件資源和提供給應(yīng)用程序的虛擬硬件之間的轉(zhuǎn)化進(jìn)行隔離。
Type 1和Type 2虛擬化平臺(tái)之間的區(qū)別取決于VM監(jiān)視器和客戶操作系統(tǒng)之間的轉(zhuǎn)化發(fā)生的次數(shù)。對(duì)Type 1虛擬化平臺(tái)也就是裸機(jī)虛擬化平臺(tái)來說,轉(zhuǎn)化只發(fā)生一次。反過來說,Type 2虛擬化平臺(tái)需要兩次過程來游遍主機(jī)操作系統(tǒng)和VM監(jiān)視器。
兩種類型的虛擬化平臺(tái)之間的區(qū)別可以追溯到一篇名為“可虛擬化的第三代架構(gòu)在形式上的需求”的論文,這篇論文在1974年發(fā)表,作者是Robert Goldberg和Gerald Popek。當(dāng)今,VMware vSphere、微軟Hyper-V以及Xen虛擬化平臺(tái)(提供開源和Citrix XenServer產(chǎn)品)被很多人認(rèn)為是Type 1虛擬化平臺(tái),而OSX的Parallels、VMware Workstation以及Oracle VM VirtualBox,諸如此類產(chǎn)品通常被認(rèn)為是Type 2虛擬化平臺(tái)。
對(duì)KVM是Type 1還是Type 2虛擬化平臺(tái)的混淆及爭(zhēng)論的出現(xiàn),部分是因?yàn)樗荓inux操作系統(tǒng)的一部分。舉例來說,在2009年,當(dāng)時(shí)分析師Andi Mann就Xen和KVM的對(duì)峙寫到:“KVM是Type 1還是Type 2主要取決于語義。”
然而,Andi Mann在那時(shí)強(qiáng)調(diào):“Xen在更低的層(ring 0)運(yùn)行并被管理,即使是創(chuàng)建新虛擬機(jī),用戶之間也不共享內(nèi)存塊,CPU指令或任何底層的(即使偶爾享有特權(quán))的像KVM這樣的Linux操作系統(tǒng)所共享的資源。這意味著KVM遭受著性能、延遲、安全、可擴(kuò)展性、隔離性以及其他問題。而這些問題并不會(huì)影響真正的裸機(jī)虛擬化平臺(tái)。”
IBM的Michael Day并不同意上述觀點(diǎn)。在他看來,KVM符合Type 1虛擬化平臺(tái)的定義,有兩點(diǎn)原因:第一,它以內(nèi)核模式在裸機(jī)上運(yùn)行,并且使用硬件虛擬化。第二,KVM用戶幾乎花費(fèi)他們所有的時(shí)間以直接執(zhí)行模式運(yùn)行,這是Type 1虛擬化平臺(tái)的另一個(gè)評(píng)判標(biāo)準(zhǔn),這個(gè)標(biāo)準(zhǔn)最初由Robert Goldberg定義。
Michael Day 又說道:“有趣的是Robert Goldberg在他之后的論文中摒棄了Type 1和Type 2虛擬化平臺(tái)之間的區(qū)別?,F(xiàn)在區(qū)別再次被提及,有很多博客對(duì)Type 1和Type 2虛擬化平臺(tái)進(jìn)行區(qū)分。”
現(xiàn)在Type 2虛擬化平臺(tái)也不和之前的標(biāo)準(zhǔn)相匹配,因?yàn)樽运麄兊恼撐陌l(fā)表以來,硬件和操作系統(tǒng)都已經(jīng)改變了很多。
Type 1還是Type 2?非當(dāng)務(wù)之急
虛擬化的贊成者說,當(dāng)提及產(chǎn)品時(shí),Type 1和Type 2虛擬化平臺(tái)之間的區(qū)別依舊明顯。
Bob Plankers是大學(xué)的一名虛擬化架構(gòu)師,他說:“重要的是我沒有更多的工作要做。如果是Type 2虛擬化平臺(tái),將給我?guī)砗芏嗟墓ぷ?,因?yàn)槲也坏貌痪S護(hù)底層的操作系統(tǒng)以及虛擬化平臺(tái)。如果是Type 1虛擬化平臺(tái),所有的元素被封裝在一起,能夠一起維護(hù)。”
然而,Bob Plankers主要使用的虛擬化產(chǎn)品是VMware vSphere,當(dāng)提及虛擬化管理和云計(jì)算的高級(jí)特性時(shí),VMware vSphere在幾年前已經(jīng)搶在了競(jìng)爭(zhēng)對(duì)手,包括KVM的前面。
Bob Plankers 說:“對(duì)我來說,實(shí)質(zhì)上是支持并兼容KVM。每個(gè)人都了解VMware,VMware不遺余力地與所有人一同工作。它支持大量的硬件,也有很多軟件支持在VMware虛擬化之下運(yùn)行……相反,KVM沒有如此成熟,明顯沒有相同數(shù)量級(jí)的受支持硬件。”
IBM Linux主管Jean Staten的一份聲明中說到:“基于客戶反饋,對(duì)Type 1和Type 2的討論不是是否采納KVM的前提。對(duì)今天開始關(guān)注虛擬化數(shù)據(jù)中心的用戶來講,采納KVM是一個(gè)非常合乎邏輯的選擇。然而,已經(jīng)鎖定專有虛擬化平臺(tái)的用戶可能發(fā)現(xiàn)轉(zhuǎn)換更加具有挑戰(zhàn)性,因此他們可能需要時(shí)間把KVM融入到全部的數(shù)據(jù)中心戰(zhàn)略中。
【編輯推薦】
- 桌面虛擬化挨個(gè)兒數(shù):Citrix篇
- 紅帽棄用Xen支持 用戶該何去何從?
- 我為父母幾十次講解桌面虛擬化
- 解析:如何打造完善的桌面虛擬化基礎(chǔ)架構(gòu)
- 主流桌面虛擬化挨個(gè)兒數(shù):紅帽篇
- 紅帽與思科將在虛擬化技術(shù)集成領(lǐng)域擴(kuò)大合作關(guān)系