KVM與OpenStack的前世今生
從基于內(nèi)核的虛擬機(jī)(KVM)誕生的那一刻起,話(huà)題就不斷。作為一款免費(fèi)的開(kāi)源管理程序,KVM有何魅力受到眾多廠(chǎng)商青睞?KVM的未來(lái)又在哪里?
KVM的誕生
一切得從一宗收購(gòu)講起,2008年9月,紅帽以1.07億美元的價(jià)格收購(gòu)Qumranet,后者為解決虛擬化桌面RDP的缺點(diǎn)開(kāi)發(fā)了基于內(nèi)核的虛擬機(jī)(KVM),設(shè)計(jì)目的旨在簡(jiǎn)化虛擬化實(shí)例的管理,它也提供了一個(gè)強(qiáng)壯的框架,用于增強(qiáng)底層架構(gòu)的功能。從此,KVM頻繁出現(xiàn)在大眾視線(xiàn)中。
KVM的成長(zhǎng)期
KVM技術(shù)一出現(xiàn),就受到廠(chǎng)商的大力推廣。紅帽一直將KVM作為虛擬化戰(zhàn)略的一部分,2009年年底發(fā)布了紅帽企業(yè)版Linux 5.4,繼續(xù)大力推行這種轉(zhuǎn)型,鼓勵(lì)用戶(hù)使用KVM為其首選的虛擬化平臺(tái)。2011年,隨著新版操作系統(tǒng)Red Hat Enterprise Linux 6的發(fā)布,紅帽完全放棄了以開(kāi)源Xen為虛擬化平臺(tái)的思路,開(kāi)始支持KVM作為hypervisor。
KVM作為一個(gè)快速成長(zhǎng)的Linux虛擬化技術(shù),已經(jīng)獲得了許多廠(chǎng)商的支持,如Canonical、Novell等。Canonical公司的Ubuntu服務(wù)器版操作系統(tǒng)是第一個(gè)提供全功能的KVM虛擬化棧的主要Linux發(fā)行版。
為什么那么多的大公司對(duì)KVM感興趣?其中最明顯并且最重要的因素就是KVM是Linux內(nèi)核的一部分。這個(gè)輕量級(jí)的虛擬化管理程序模塊能直接與硬件交互,不需要修改虛擬化操作系統(tǒng),因此性能更好,并且補(bǔ)丁包能夠和Linux內(nèi)核兼容,輕松控制虛擬化進(jìn)程,同時(shí)減輕管理負(fù)擔(dān)。
當(dāng)然,KVM也有成長(zhǎng)的煩惱。KVM究竟屬于Type 1還是Type 2hypervisor呢?出現(xiàn)這種疑惑的原因在于KVM的基因——它屬于操作系統(tǒng)的一部分,類(lèi)似直接運(yùn)行于硬件系統(tǒng)之上的裸機(jī)管理程序,不需要修改操作系統(tǒng)。這就符合Type 1 hypervisor的定義,也經(jīng)常被稱(chēng)為硬件虛擬化引擎,更像是個(gè)安裝在客戶(hù)端上的操作系統(tǒng),性能佳,運(yùn)行穩(wěn)定,減少了運(yùn)行管理程序本身所需的花銷(xiāo)。而Type 2 hypervisor更像是個(gè)應(yīng)用,運(yùn)行在基礎(chǔ)操作系統(tǒng)上。如果將KVM看作Type 2,那么所強(qiáng)調(diào)的高性能難達(dá)到,還可能存在安全風(fēng)險(xiǎn)。其實(shí),對(duì)Type 1和Type 2的討論不是是否采納KVM的前提。無(wú)論KVM是“第一類(lèi)”還是“第二類(lèi)”,這都是語(yǔ)義上的概念。
此外,就是所有新生技術(shù)在發(fā)展中都會(huì)面臨的難題:技術(shù)不成熟。KVM的出現(xiàn)不過(guò)三四年時(shí)間,在可用資源、平臺(tái)支持、管理工具、實(shí)施經(jīng)驗(yàn)方面當(dāng)然不能與出現(xiàn)八年之久的Xen相比。雖然目前KVM還缺少某些關(guān)鍵特性,例如存儲(chǔ)的動(dòng)態(tài)遷移,但是在后續(xù)的版本中都會(huì)開(kāi)發(fā)出來(lái)。
性能方面,KVM在逐漸顯示其威力。不久前的SPECvirt虛擬化對(duì)照基準(zhǔn)測(cè)試中,紅帽企業(yè)Linux 6.1、其內(nèi)嵌的KVM hypervisor以及惠普ProLiant DL980 G7服務(wù)器三者結(jié)合,創(chuàng)造了新的成績(jī)——最佳的虛擬化性能和最多的計(jì)算區(qū)塊數(shù)量,并且六臺(tái)虛擬機(jī)能同時(shí)運(yùn)行一個(gè)應(yīng)用程序。
KVM的未來(lái)
雖然只是新生技術(shù),但是由于其性能和實(shí)施的簡(jiǎn)易性,加上Linux企業(yè)市場(chǎng)中份額最大的紅帽不遺余力的推廣開(kāi)發(fā),KVM將會(huì)持續(xù)成長(zhǎng)壯大。
而開(kāi)放虛擬化聯(lián)盟(OVA)也在為KVM護(hù)航,這個(gè)由IBM、紅帽、英特爾等重量級(jí)廠(chǎng)商組成的聯(lián)盟才成立不過(guò)半年,成員就迅速達(dá)到200以上。該聯(lián)盟的宗旨致力于促進(jìn)基于內(nèi)核的虛擬機(jī)(KVM)等開(kāi)放虛擬化技術(shù)的應(yīng)用,鼓勵(lì)互操作性,為企業(yè)在虛擬化方面提供更多的選擇、更高的性能和更具吸引力的價(jià)格。
對(duì)于用戶(hù)來(lái)說(shuō),可選擇的主流虛擬化產(chǎn)品也越加清晰:紅帽KVM、VMware、 Citrix的Xen、和微軟的Hyper-V。
#p#
OpenStack與KVM都是目前IT界比較熱門(mén)的兩個(gè)詞匯。它們都是開(kāi)源的,都與Linux有著千絲萬(wàn)縷的關(guān)系。但這兩者還是有很大的差別呢。
OpenStack:開(kāi)源管理項(xiàng)目
OpenStack是一個(gè)旨在為公共及私有云的建設(shè)與管理提供軟件的開(kāi)源項(xiàng)目。它不是一個(gè)軟件,而是由幾個(gè)主要的組件組合起來(lái)完成一些具體的工作。OpenStack由以下五個(gè)相對(duì)獨(dú)立的組件構(gòu)成:
l OpenStack Compute(Nova)是一套控制器,用于虛擬機(jī)計(jì)算或使用群組啟動(dòng)虛擬機(jī)實(shí)例;
l OpenStack鏡像服務(wù)(Glance)是一套虛擬機(jī)鏡像查找及檢索系統(tǒng),實(shí)現(xiàn)虛擬機(jī)鏡像管理;
l OpenStack對(duì)象存儲(chǔ)(Swift)是一套用于在大規(guī)??蓴U(kuò)展系統(tǒng)中通過(guò)內(nèi)置冗余及容錯(cuò)機(jī)制,以對(duì)象為單位的存儲(chǔ)系統(tǒng),類(lèi)似于Amazon S3;
l OpenStack Keystone,用于用戶(hù)身份服務(wù)與資源管理以及
l OpenStack Horizon,基于Django的儀表板接口,是個(gè)圖形化管理前端。
這個(gè)起初由美國(guó)國(guó)家航空航天局和Rackspace在2010年末合作研發(fā)的開(kāi)源項(xiàng)目,旨在打造易于部署、功能豐富且易于擴(kuò)展的云計(jì)算平臺(tái)。OpenStack項(xiàng)目的首要任務(wù)是簡(jiǎn)化云的部署過(guò)程并為其帶來(lái)良好的可擴(kuò)展性,企圖成為數(shù)據(jù)中心的操作系統(tǒng),即云操作系統(tǒng)。
KVM:開(kāi)放虛擬化技術(shù)
KVM(Kernel-based Virtual Machine)是一個(gè)開(kāi)源的系統(tǒng)虛擬化模塊,它需要硬件支持,如Intel VT技術(shù)或者AMD V技術(shù),是基于硬件的完全虛擬化,完全內(nèi)置于Linux。
2008年,紅帽收購(gòu)Qumranet獲得了KVM技術(shù),并將其作為虛擬化戰(zhàn)略的一部分大力推廣,在2011年發(fā)布RHEL6時(shí)支持KVM作為唯一的hypervisor。KVM主打的就是高性能、擴(kuò)展性、高安全,以及低成本。
與Linux的緣分
一個(gè)被某些熱心支持者成為云時(shí)代的Linux,是公有云與私有云的開(kāi)源操作系統(tǒng)。一個(gè)則是Linux內(nèi)核的一部分,將Linux轉(zhuǎn)換成一個(gè)Type-1 hypervisor,無(wú)需任何變更就能享受現(xiàn)有的Linux內(nèi)核進(jìn)程調(diào)度、內(nèi)存管理和設(shè)備支持。
OpenStack炙手可熱,它如同Linux一樣,旨在構(gòu)建一個(gè)內(nèi)核,所有的軟件廠(chǎng)商都圍繞著它進(jìn)行工作。OpenStack的許多子項(xiàng)目,對(duì)云計(jì)算平臺(tái)中的各種資源(如計(jì)算能力、存儲(chǔ)、網(wǎng)絡(luò))提供敏捷管理。此外,OpenStack也提供對(duì)虛擬化技術(shù)的支持。
KVM集成在Linux的各個(gè)主要發(fā)行版本中,使用Linux自身的調(diào)度器進(jìn)行管理。KVM專(zhuān)注于成為最好的虛擬機(jī)監(jiān)控器,是使用Linux企業(yè)的不二選擇,加上它還支持Windows平臺(tái),所以也是異構(gòu)環(huán)境的最佳選擇。
OpenStack與KVM都發(fā)展迅猛
OpenStack是一個(gè)擁有眾多支持者的大項(xiàng)目。時(shí)至今日,已經(jīng)有超過(guò)180家企業(yè)和400多位開(kāi)發(fā)人員對(duì)這一項(xiàng)目積極地做著貢獻(xiàn),而其生態(tài)系統(tǒng)甚至更為龐大,已經(jīng)超過(guò)了5600人和850家機(jī)構(gòu)。在今年9月,OpenStack基會(huì)正式成立。白金會(huì)員有紅帽、IBM與惠普等,黃金會(huì)員包括思科、戴爾與英特爾等。
OpenStack基本上是一個(gè)軟件項(xiàng)目,有近55萬(wàn)行代碼。分解成核心項(xiàng)目、孵化項(xiàng)目,以及支持項(xiàng)目和相關(guān)項(xiàng)目。除了以上提及的五大組成,與虛擬網(wǎng)絡(luò)有關(guān)的Quantum首次被列為核心項(xiàng)目。
KVM是一個(gè)脫穎而出的開(kāi)放虛擬化技術(shù)。它是由一個(gè)大型的、活躍的開(kāi)放社區(qū)共同開(kāi)發(fā)的,紅帽、IBM、SUSE等都是其成員。2011年,IBM、紅帽、英特爾與惠普等建立開(kāi)放虛擬化聯(lián)盟(OVA),幫助構(gòu)建KVM生態(tài)系統(tǒng),提升KVM采用率。如今,OVA已經(jīng)擁有超過(guò)250名成員公司,其中,IBM有60多位程序員專(zhuān)門(mén)工作于KVM開(kāi)源社區(qū)。
OpenStack與KVM的解決方案
在去年9月22日發(fā)布Diablo之后,OpenStack社區(qū)隨即開(kāi)始著手新版本的設(shè)計(jì)和開(kāi)發(fā),新版本開(kāi)發(fā)代號(hào)為Essex。此前發(fā)布有四個(gè)版本:Austin、Bexar、Cactus與Diablo。新版本發(fā)布包含云計(jì)算控制中心Nova、鏡像服務(wù)Glance、認(rèn)證服務(wù)Keystone和Dashboard項(xiàng)目Horizon,也包括對(duì)象存儲(chǔ)項(xiàng)目Swift。
由此可以看出,OpenStack是一個(gè)框架,一個(gè)可以建立公有云和私有云的基礎(chǔ)架構(gòu)。它并不是一個(gè)現(xiàn)成的產(chǎn)品,要想開(kāi)展基礎(chǔ)架構(gòu)方面的工作,企業(yè)需要顧問(wèn)和開(kāi)發(fā)人員。很多時(shí)候還需要第三方的集成工具。
KVM可通過(guò)購(gòu)買(mǎi)Linux版本獲得,或作為獨(dú)立hypervisor單獨(dú)購(gòu)買(mǎi)。最近,IBM KVM(北京)卓越中心落戶(hù)北京,展示IBM及合作伙伴基于KVM的產(chǎn)品,包括IBM SmartCloud Entry、IBM System Director VMControl、Red Hat Enterprise Virtualization及SUSE云。
OpenStack與KVM相互輝映
OpenStack幾乎支持所有的虛擬化管理程序,不論是開(kāi)源的(Xen與KVM)還是廠(chǎng)商的(Hyper-V與VMware)。但在以前,OpenStack是基于KVM開(kāi)發(fā)的,KVM常常成為默認(rèn)的虛擬機(jī)管理程序。兩者都使用相同的開(kāi)放源理念與開(kāi)發(fā)方法。
如今,多數(shù)企業(yè)用戶(hù)在IT環(huán)境中使用了超過(guò)一種的虛擬化軟件,有一半的用戶(hù)選擇將開(kāi)源產(chǎn)品作為性?xún)r(jià)比更高的虛擬化替代方案。IDC報(bào)道中指出,OpenStack是KVM增長(zhǎng)的一個(gè)巨大機(jī)會(huì)。OpenStack是一個(gè)具有巨大的行業(yè)發(fā)展動(dòng)力,并擁有一個(gè)充滿(mǎn)活力的社區(qū)的云計(jì)算平臺(tái),有95%的OpenStack平臺(tái)由KVM驅(qū)動(dòng)。因此,隨著OpenStack的增長(zhǎng),KVM也會(huì)相應(yīng)增長(zhǎng)。
小結(jié)
雖然OpenStack與KVM在IT界比較受關(guān)注,但是它們都存在一些劣勢(shì)。比如OpenStack引發(fā)了廠(chǎng)商之間的利益沖突,在兼容性方面有待提供,開(kāi)發(fā)成本也較高,服務(wù)支持也有點(diǎn)滯后。KVM市場(chǎng)占有率很低,成熟度不夠。但是,兩者都有強(qiáng)大的發(fā)展動(dòng)力,也有各大IT廠(chǎng)商的持續(xù)支持。開(kāi)源終究還是會(huì)勝出呢,這個(gè)趨勢(shì)不可避免。


























