虛擬化管理軟件比較(Eucalyptus, OpenNebula, OpenStack, OpenQRM, XenServer, Oracle VM, CloudStack,
虛擬化管理軟件比較(Eucalyptus, OpenNebula, OpenStac k, OpenQRM, XenServer, Oracle VM, CloudStack, Co nVirt)20
虛擬化管理軟件比較(Eucalyptus, OpenNebula, OpenStac k, OpenQRM, XenServer, Oracle VM, CloudStack, Co nVirt)
2011-12-20 15:53:30| 分類: 虛擬化 云計(jì)|字號(hào) 訂閱 最近籠統(tǒng)地學(xué)習(xí)和試用了幾款比較有名的虛擬化管理軟件。學(xué)習(xí)的內(nèi)容包括Eucalyptus, OpenNebula, OpenStack, OpenQRM, XenServer, Oracle VM, CloudStack, ConVirt。借這一系列文章,對過去一個(gè)月的學(xué)習(xí)內(nèi)容作一個(gè)階段性的總結(jié)。
(1)授權(quán)協(xié)議、許可證管理、購買價(jià)格等方面的比較
授權(quán)協(xié)議 許可證管理
社區(qū)版不需要安裝許可證
企業(yè)版按處理器核
企業(yè)版需要在云控制器(CLC )心總數(shù)收費(fèi),用戶購
節(jié)點(diǎn)上安裝許可證 買的許可證針對特
定版本永久有效。
OpenSta
ck Apache 2.0授權(quán)協(xié)議 不需要許可證 免費(fèi)使用
社區(qū)版免費(fèi)使用
企業(yè)版將社區(qū)版重
新打包,提供補(bǔ)丁等
程序的訪問權(quán)限,使
OpenNe
bula Apache 2.0授權(quán)協(xié)議 不需要許可證 得用戶能夠更容易
的安裝、配置和管
理,以訂閱的模式提
供服務(wù)。
企業(yè)版按物理服務(wù)
器總數(shù)收費(fèi),每臺(tái)物
理服務(wù)器器的服務(wù)
價(jià)格為250歐元每商業(yè)模式 社區(qū)版免費(fèi)使用 社區(qū)版采用GPLv3授權(quán)協(xié)議 Eucalypt us 企業(yè)版使用自定義的商業(yè)授權(quán)協(xié)議
,年。
社區(qū)版免費(fèi)使用
企業(yè)版將社區(qū)版重
社區(qū)版使用GPLv2授權(quán)協(xié)議
OpenQR M
企業(yè)版使用自定義的商業(yè)授權(quán)協(xié)議
不需要許可證
新打包,提供補(bǔ)丁等程序的訪問權(quán)限,使得用戶能夠更容易的安裝、配置和管理,以訂閱的模式提供服務(wù)?;?、標(biāo)準(zhǔn)和高級服務(wù)的價(jià)格分別為480、960、1920歐元每月。 XenServer 免費(fèi)版本和開源版本的Xen
Citrix XenServer 系列產(chǎn)品均使用自定義的商業(yè)授權(quán)協(xié)議
XenServ er
基于XenServer 的Xen Cloud Platform 使用GPLv2授權(quán)協(xié)議
許可證每年更新一次
不管是XenServer 還是Xen 使用 Cloud Platform 都需要在每臺(tái)服務(wù)器安裝許可證
XenServer 高級版、企業(yè)版和白金版按物理服務(wù)器數(shù)量收費(fèi),分別是1000、2500和5000美元。購買的許可證針對特定版本永久有效
Oracle VM Server是基于Xen 開發(fā)的,使用GPLv2協(xié)議發(fā)布,從Oracle 的網(wǎng)站可以下載到源代碼,但是Oracle 并不宣傳這一點(diǎn)。
免費(fèi)使用,可以購買
Oracle VM
Oracle VM Manager使用自定義的商業(yè)授權(quán)協(xié)議。
Oracle VM VirtualBox 的二進(jìn)制版本使用自定義的商業(yè)授權(quán)協(xié)議,源代碼使用GPLv2授權(quán)協(xié)議。
CloudSt
社區(qū)版采用GPLv3授權(quán)協(xié)議企業(yè)版
社區(qū)版不需要安裝許可證
社區(qū)版免費(fèi)使用企
不需要許可證
技術(shù)支持。技術(shù)支持的費(fèi)用為每臺(tái)物理服務(wù)器8184人民幣每年。
Cloud
Platform 可以免費(fèi)
,ack 使用自定義的商業(yè)授權(quán)協(xié)議
企業(yè)版需要在管理服務(wù)器上安裝許可證
業(yè)版提供增強(qiáng)功能和技術(shù)支持,收費(fèi)模式不詳。
社區(qū)版免費(fèi)使用
社區(qū)版使用GPLv2授權(quán)協(xié)議
ConVirt
企業(yè)版使用自定義的商業(yè)授權(quán)協(xié)議
社區(qū)版不需要安裝許可證
企業(yè)版提供增強(qiáng)功
企業(yè)版需要在管理服務(wù)器上安裝許可證
能和技術(shù)支持,按物理服務(wù)器數(shù)量收費(fèi),每個(gè)節(jié)點(diǎn)費(fèi)用1090美元。購買的許可證針對特定版本永久有效。
(2)項(xiàng)目歷史與運(yùn)營團(tuán)隊(duì)、社區(qū)規(guī)模和活躍程度、溝通交流等方面的比較
項(xiàng)目歷史與運(yùn)營團(tuán)隊(duì)
社區(qū)規(guī)模和活躍程度
溝通交流 社區(qū)發(fā)表在論壇上的問題通
最初是UCSB 的HPC 研究項(xiàng)目,2009年初成立公司來支持該項(xiàng)目的商業(yè)化運(yùn)營。現(xiàn)任CEO 是曾擔(dān)任MySQL CEO 的
Eucal yptus
Marten Mickos,現(xiàn)任工程部門Sun
公司
NetBeans
和
在同類開放源代碼項(xiàng)目當(dāng)中,Eucalyptus 的社區(qū)規(guī)模最大,活躍程度也最高。主要原因是該項(xiàng)目起源于大學(xué)研究項(xiàng)目,次要原因Ubuntu 10.04服務(wù)器版選擇Eucalyptus Eucalyptu 的推廣。
常在48小時(shí)內(nèi)得到回應(yīng),通過技術(shù)支持電子郵件提出的問題通常在24小時(shí)內(nèi)得到回應(yīng)。
Eucalyptus 在北京和深圳設(shè)有辦事處,在中國有工程師提供支持團(tuán)隊(duì)。
OpenStack 是服務(wù)器托管公司RackSpace 與NASA 共同發(fā)起的開放源代碼項(xiàng)目。在開放源代
Open Stack
碼項(xiàng)目的管理和運(yùn)營方面,RackSpace 和NASA 顯然缺乏足夠的經(jīng)驗(yàn)。針對OpenStack 項(xiàng)目的批評集中在(1)RackSpace 對項(xiàng)目有過于強(qiáng)烈
SVP 的Tim Cramerc 曾擔(dān)任 是管理團(tuán)隊(duì)對開放源代碼理念的高度認(rèn)同。OpenSolaris 項(xiàng)目的執(zhí)行總監(jiān)。作為UEC 的基礎(chǔ)構(gòu)架,大大地促進(jìn)了整個(gè)管理團(tuán)隊(duì)對開放源代碼項(xiàng)目的管理和運(yùn)營方面具有豐富的經(jīng)驗(yàn)。
社區(qū)規(guī)模較小,主要參與者為支持/參與該項(xiàng)目的公司人員。有幾個(gè)公開的郵件列表,流量很小。由于該項(xiàng)目比較新,在網(wǎng)絡(luò)上可以參考的安裝與配置方面的文章不多。Ubuntu 11.04服務(wù)器版同時(shí)支持Eucalyptus 和OpenStack 作為UEC 的基礎(chǔ)構(gòu)架,將有助于OpenStack 的推廣。
通過郵件列表進(jìn)行技術(shù)方面的溝通,通常在48小時(shí)內(nèi)得到回應(yīng)。商務(wù)方面的郵件溝通,沒有得到回應(yīng)。
,的控制欲,(2)OpenStack 項(xiàng)目的運(yùn)作對于社區(qū)成員來說基本上是不透明的,(3)OpenStack 項(xiàng)目對同類開放源代碼項(xiàng)目的攻擊性過強(qiáng)。
社區(qū)規(guī)模較小,主要參與者為支持/參與該
Open Nebul a
2005年啟動(dòng)的研究性項(xiàng)目,2008年初發(fā)布第一個(gè)開放源代碼版本,2010年初大力推進(jìn)開源社區(qū)的建設(shè)。
項(xiàng)目的公司人員,以及少量的用戶。有幾個(gè)公開的郵件列表,流量比OpenStack 項(xiàng)目的流量稍大。在網(wǎng)絡(luò)上搜索到一些中文版安裝和配置方面的文章,基本上是以訛傳訛,缺乏可操作性。英文版的相關(guān)文章也不多,可操作的更少。
起源于集群管理方面的軟件,2006年公開源代碼,2008年免費(fèi)發(fā)布,目前版本為4.8。
Open QRM
項(xiàng)目的運(yùn)營團(tuán)隊(duì)較小,似乎只有Matt Rechenburg一個(gè)人。
圍繞Xen Cloud Platform有一些開放源代碼的項(xiàng)目,用于替代XenCentor 提供基于桌面或者是瀏覽器的管理功能。
有一定數(shù)量的用戶,但是沒有形成社區(qū)。在網(wǎng)絡(luò)上缺少與Oracle 相關(guān)的討論與交流。Oracle VM團(tuán)隊(duì)有一個(gè)博客網(wǎng)站,但是最近兩篇文章的日期分別是2010年11月和2008年1 月。產(chǎn)品下載的速度很慢。 有一些零星的用戶,基本上沒有形成社區(qū)。雖然功能還在不斷更新,但是用戶文檔的日期是2008年的。相關(guān)論壇的活躍程度比OpenStack 和OpenNebula 更差。
在論壇發(fā)布的問題,大約有50%左右沒有得到回應(yīng)。通過電子郵件進(jìn)行商務(wù)溝通,反應(yīng)迅速,在24小時(shí)以內(nèi)得到回應(yīng)。
XenSe rver
Citrix 公司的產(chǎn)品,與Xen 項(xiàng)目的發(fā)展基本同步。
初期商務(wù)溝通的速度比較快。 初期商務(wù)溝通
Oracle 公司的產(chǎn)品,用戶量較
Oracl e VM
小。Oracle VM僅僅是Oracle 用戶生態(tài)系統(tǒng)中的一部分,不是Oracle 的關(guān)鍵業(yè)務(wù)。
的速度比較快。在技術(shù)方面的溝通,Oracle 在國內(nèi)沒有相應(yīng)的技術(shù)人員提供支持。
源于2008年成立的VMOps 公
Cloud Stack
司,2010年五月啟用cloud.com 域名,2010年6 月共同啟動(dòng)OpenStack 項(xiàng)目。
用戶數(shù)量較少,論壇不是很活躍。官方文檔非常完備,按照文檔操作至少能夠順利地完成安裝和配置過程。網(wǎng)絡(luò)上可以搜索到一些可操作的安裝和配置文檔(得益于CloudStack 的安裝和配置比較簡單)。
商務(wù)溝通比較困難,通過社區(qū)論壇和電子郵件提出的問題都沒有得到回應(yīng)。
商務(wù)溝通非常
起源于2006年發(fā)起的XenMan
ConVi rt
項(xiàng)目,與Xen 項(xiàng)目的發(fā)展基本2.0?,F(xiàn)任CEO 和工程部門EVP 均來自O(shè)racle 。
用戶規(guī)模與Eucalyptus 相當(dāng),論壇的活躍程度很高。官方文檔非常完備,按照文檔操網(wǎng)絡(luò)上搜索到的中英文的安裝配置教程也基本可用。
順暢,社區(qū)發(fā)表在論壇上的問題通常在48小時(shí)內(nèi)得到回應(yīng),通過技術(shù)支持電子郵件提出通過郵件列表進(jìn)行技術(shù)方面的溝通,通常在48小時(shí)內(nèi)得到回應(yīng)。
同步。目前的版本為ConVirt 作至少能夠順利地完成安裝和配置過程。在
,的問題通常在
24小時(shí)內(nèi)得到
回應(yīng)。
(3)綜合評估
總的來說,虛擬化管理軟件的用戶還不是很多。大部分虛擬化管理軟件的社區(qū)規(guī)模較小,活躍程度也不高。除了Eucalyptus 積極地鼓勵(lì)社區(qū)用戶參與項(xiàng)目的開發(fā)與測試之外,其他項(xiàng)目選擇開放源代碼只是一種營銷策略。如果排除技術(shù)和價(jià)格方面的因素,最值得選擇的軟件無疑是Eucalyptus 和ConVirt 。這兩個(gè)項(xiàng)目擁有最大和最活躍的用戶社區(qū),其開發(fā)/運(yùn)營團(tuán)隊(duì)與潛在客戶之間的溝通最為順暢。XenServer 也是一個(gè)值得考慮的對象,但是XenServer 社區(qū)版要求對每臺(tái)物理服務(wù)器都要每年更新一次許可證。對于擁有大量物理服務(wù)器的公司來說,管理和維護(hù)成千上百個(gè)許可證將是一個(gè)令人頭疼的問題。
架構(gòu)篇:
(1)系統(tǒng)構(gòu)架比較
系統(tǒng)構(gòu)架
Eucalyptus 是一個(gè)與Amazon EC2兼容的IaaS 系統(tǒng)。Eucalyptus 包括云控制器(CLC )、
Walrus 、集群控制器(CC )、存儲(chǔ)控制器(SC )和節(jié)點(diǎn)控制器(NC )。CLC 是整個(gè)Eucalyptu
系統(tǒng)的核心,負(fù)責(zé)高層次的資源調(diào)度,例如向CC 請求計(jì)算資源。Walrus 是 一個(gè)與Amazon
S3類似的存儲(chǔ)服務(wù),主要用于存儲(chǔ)虛擬機(jī)映像和用戶數(shù)據(jù)。CC 是一個(gè)集群的前端,負(fù)責(zé)協(xié)
調(diào)一個(gè)集群內(nèi)的計(jì)算資源,并且管理集群內(nèi)的網(wǎng)絡(luò)流量。SC 是一個(gè)與Amazon EBS 類似
的存儲(chǔ)塊設(shè)備服務(wù),可以用來存儲(chǔ)業(yè)務(wù)數(shù)據(jù)。NC 是最終的計(jì)算節(jié)點(diǎn),通過調(diào)用操作系統(tǒng)層
的虛擬化技術(shù)來啟動(dòng)和關(guān)閉虛擬機(jī)。在同一個(gè)集群(CC )內(nèi)的所有計(jì)算節(jié)點(diǎn)(NC )必須在
同一個(gè)子網(wǎng)內(nèi)。 在一個(gè)集群(CC )內(nèi)通常需要部署一臺(tái)存儲(chǔ)服務(wù)器(SC ),為該集群內(nèi)的
計(jì)算節(jié)點(diǎn)提供數(shù)據(jù)存儲(chǔ)服務(wù)。
Eucalyptus 通過Agent 的方式來管理計(jì)算資源。在每一個(gè)計(jì)算節(jié)點(diǎn)上,都需要運(yùn)行一個(gè)
eucalyptus-nc 的服務(wù)。該服務(wù)在集群控制器(CC )上注冊后,云控制器(CLC )即可通
過集群控制器(CLC )將需要運(yùn)行的虛擬機(jī)映像文件(EMI )拷貝到該計(jì)算節(jié)點(diǎn)上運(yùn)行。
Eucalyptus 將虛擬機(jī)映像文件存儲(chǔ)在Walrus 上。當(dāng)用戶啟動(dòng)一個(gè)虛擬機(jī)實(shí)例的時(shí)候,
Eucalyptus 首先將相應(yīng)的虛擬機(jī)映像(EMI )從Walrus 拷貝到將要運(yùn)行該實(shí)例的計(jì)算節(jié)
點(diǎn)(NC )上。當(dāng)用戶關(guān)閉(或者是由于意外而重啟)一個(gè)虛擬機(jī)實(shí)例的時(shí)候,對虛擬機(jī)所
做的修改并不會(huì)被寫回到Walrus 上原來的虛擬機(jī)映像(EMI )上,所有對該虛擬機(jī)的修改
都會(huì)丟失。如果用戶需要保存修改過的虛擬機(jī),就需要利用工具(euca2ools )將該虛擬機(jī)
實(shí)例保存為新的虛擬機(jī)映像(EMI )。如果用戶需要保存數(shù)據(jù),則需要利用存儲(chǔ)服務(wù)器(SC )
所提供的彈性塊設(shè)備來完成。 Eucalyptu s
,
OpenStack 是一個(gè)與Amazon EC2兼容的IaaS 系統(tǒng)。OpenStack 包括OpenStack Compute 和OpenStack Object Storage兩個(gè)部分。
OpenStack Compute又包含Web 前端、計(jì)算服務(wù)、存儲(chǔ)服務(wù)、身份認(rèn)證服務(wù)、存儲(chǔ)塊設(shè)備(卷)服務(wù)、網(wǎng)絡(luò)服務(wù)、任務(wù)調(diào)度等多個(gè)模塊。OpenStack Compute 的不同模塊之間不共享任何信息,通過消息傳遞進(jìn)行通訊。因此,不同的模塊可以運(yùn)行在不同的服務(wù)器上,也可以運(yùn)行在同一臺(tái)服務(wù)器上。 OpenStac k
,
OpenStack Object Store可以利用通用服務(wù)器搭建可擴(kuò)展的海量數(shù)據(jù)倉庫,并且通過冗余來保證數(shù)據(jù)的安全性。同一份數(shù)據(jù)的在多臺(tái)服務(wù)器上都有副本,將出現(xiàn)故障的服務(wù)器從集群中撤除不會(huì)影響數(shù)據(jù)的完整性,加入新的服務(wù)器后系統(tǒng)會(huì)自動(dòng)地在新的服務(wù)器上為相應(yīng)的文件創(chuàng)建新的副本。從功能上講,OpenStack Object Store 同時(shí)具備Eucalyptus 中的Walrus 服務(wù)和彈性塊設(shè)備(SC )服務(wù)。不過OpenStack Object Store 不是一個(gè)文件系統(tǒng),不能夠保證數(shù)據(jù)的實(shí)時(shí)性。從這個(gè)方面來考慮,OpenStack Object Store更適合用于存儲(chǔ)需要長期保存的靜態(tài)數(shù)據(jù),例如操作系統(tǒng)映像文件和多媒體數(shù)據(jù)。
,
OpenStack 通過Agent 的方式來管理計(jì)算資源。在每一個(gè)計(jì)算節(jié)點(diǎn)上,都需要運(yùn)行nova-network 服務(wù)和nova-compute 服務(wù)。這些服務(wù)啟動(dòng)之后,就可以通過消息隊(duì)列來與云控制器進(jìn)行交互。
OpenNebula 的構(gòu)架包括三個(gè)部分:驅(qū)動(dòng)層、核心層、工具層。驅(qū)動(dòng)層直接與操作系統(tǒng)打交道,負(fù)責(zé)虛擬機(jī)的創(chuàng)建、啟動(dòng)和關(guān)閉,為虛擬機(jī)分配存儲(chǔ),監(jiān)控物理機(jī)和虛擬機(jī)的運(yùn)行狀況。
OpenNeb
ula 核心層負(fù)責(zé)對虛擬機(jī)、存儲(chǔ)設(shè)備、虛擬網(wǎng)絡(luò)等進(jìn)行管理。工具層通過命令行界面/瀏覽器界面方式提供用戶交互接口,通過API 方式提供程序調(diào)用接口。
,

OpenNebula 使用共享存儲(chǔ)設(shè)備(例如NFS )來提供虛擬機(jī)映像服務(wù),使得每一個(gè)計(jì)算節(jié)點(diǎn)都能夠訪問到相同的虛擬機(jī)映像資源。當(dāng)用戶需要啟動(dòng)或者是關(guān)閉某個(gè)虛擬機(jī)時(shí),OpenNebula 通過SSH 登陸到計(jì)算節(jié)點(diǎn),在計(jì)算節(jié)點(diǎn)上直接運(yùn)行相對應(yīng)的虛擬化管理命令。這種模式也稱為無代理模式,由于不需要在計(jì)算節(jié)點(diǎn)上安裝額外的軟件(或者服務(wù)),系統(tǒng)的復(fù)雜度也相對降低了。
OpenQRM OpenQRM 是為了管理混合虛擬化環(huán)境而開發(fā)的一個(gè)虛擬化管理框架,包括基礎(chǔ)層(框架層)
和插件?;A(chǔ)層(框架)的作用是管理不同的插件,而對虛擬資源的管理(計(jì)算資源,存儲(chǔ)
,
資源,映像資源)都是通過插件來實(shí)現(xiàn)的。OpenQRM 的框架類似于Java 語言中的Interface ,定義了一系列虛擬機(jī)資源生命周期管理的方法,例如創(chuàng)建、啟動(dòng)、關(guān)閉虛擬機(jī)等等。在個(gè)框架的基礎(chǔ)上,OpenQRM 針對不同的虛擬化平臺(tái)(Xen 、KVM) 實(shí)現(xiàn)了不同的插件,用來管理不同的物理和虛擬資源。當(dāng)出現(xiàn)新的資源需要支持的時(shí)候,只需要為OpenQRM 編寫新的插件,就可以無縫地整合到原來的環(huán)境中去。
OpenQRM 插件也是使用無代理模式工作的。當(dāng)需要管理的目標(biāo)節(jié)點(diǎn)提供SSH 登錄方式時(shí),OpenQRM 插件通過SSH 登陸到計(jì)算節(jié)點(diǎn),在計(jì)算節(jié)點(diǎn)上直接運(yùn)行相對應(yīng)的虛擬化管理命令。當(dāng)需要管理的目標(biāo)節(jié)點(diǎn)提供HTTP /HTTPS /XML -RPC 遠(yuǎn)程調(diào)用接口時(shí),OpenQRM 插件通過目標(biāo)節(jié)點(diǎn)所提供的遠(yuǎn)程調(diào)用接口實(shí)現(xiàn)對目標(biāo)平臺(tái)的管理。
OpenQRM 是一個(gè)虛擬化管理平臺(tái),不提供與Amazon EC2兼容的云管理接口。
XenServer 是對Xen 虛擬化技術(shù)的進(jìn)一步封裝,在Dom0上提供一系列命令行和遠(yuǎn)程調(diào)用接口,獨(dú)立的管理軟件XenCenter 通過遠(yuǎn)程調(diào)用這些接口來管理多臺(tái)物理服務(wù)器。XenSever 在標(biāo)準(zhǔn)Xen 實(shí)現(xiàn)之上所實(shí)現(xiàn)的遠(yuǎn)程調(diào)用接口類似于其他虛擬化管理平臺(tái)中所實(shí)
XenServe
r 現(xiàn)的Agent ,因此XenServer 是通過Agent 方式工作的。由于只考慮對Xen 虛擬化技術(shù)
的支持,XenServer 的構(gòu)架相對簡單。