云計算是并行計算(Parallel Computing)、分布式計算(Distributed Computing)和網(wǎng)格計算(Grid Computing)的發(fā)展,或者說是這些計算機科學(xué)概念的商業(yè)實現(xiàn)。它是是虛擬化(Virtualization)、公用計算(Utility Computing)、IaaS(基礎(chǔ)設(shè)施即服務(wù))、PaaS(平臺即服務(wù))、SaaS(軟件即服務(wù))等概念混合演進并躍升的結(jié)果。云平臺是基于云計算的商業(yè)模式,目前市面上形形色色的虛擬化管理軟件總數(shù)很多,作為一個機構(gòu)、或者是一家企業(yè),在向虛擬化過渡時都不可避免地要面臨軟件選型的問題。如何從虛擬化過渡到云計算,如何選擇云計算管理平臺?是否可以保障系統(tǒng)的穩(wěn)定性、可靠性和安全性;是否可以和現(xiàn)在的虛擬化平臺兼容;是否有完整的生命周期管理;是否便于管理。該文通過對云計算管理平臺的背景、架構(gòu)、功能等方面的比較研究,促進對云產(chǎn)品的功能定位,了解云品臺的未來發(fā)展趨勢。
1、背景研究
云作為一個商業(yè)平臺已經(jīng)改變了商業(yè)游戲的規(guī)則,這是事實,未來企業(yè)不僅需要向外延伸來建立雄厚的商業(yè)關(guān)系網(wǎng),也需要整合其他系統(tǒng)。而對云平臺的背景的研究可以了解云平臺的基礎(chǔ)是什么,最初的目的是什么,以便我們能從我們的需要選擇它。
1.1 Eucalyptus
Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems(Eucalyptus)是一種開源的軟件基礎(chǔ)結(jié)構(gòu),用來通過計算集群或工作站群實現(xiàn)彈性的、實用的云計算。它最初是美國加利福尼亞大學(xué)Santa Barbara 計算機科學(xué)學(xué)院的一個研究項目,在2008 年5 月發(fā)布1.0 版本。學(xué)院派文化濃郁。中文通常稱及為“桉樹”。Eucalyptus 主要是用C開發(fā)的,其中CLC 是由java 完成的,Tools 是由perl 完成的。通過libvirt免費支持KVM及Xen,Vmware收費。所有組件通過WSDL通信,兼容EC2發(fā)布對外接口。它曾經(jīng)做為Ubuntu企業(yè)云(UEC)支持的虛擬化平臺,由于其并不完全開源后來有被OpenStack取代的趨勢。目前最新版本為Version 3.1.2。目錄主架構(gòu)已經(jīng)開源,通過插件及服務(wù)收費獲取利潤。
1.2 Convirture
Convirture與Xen同步發(fā)展,對Xen支持良好。核心代碼采用python與extjs開發(fā)。以易用性及管理系統(tǒng)表現(xiàn)出色。它起源于2006年發(fā)起的XenMan項目,與Xen項目的發(fā)展基本同步。目前的版本為ConVirt 2.0,F(xiàn)任CEO和工程部門的EVP均來自O(shè)racle。用戶規(guī)模與Eucalyptus相當(dāng),論壇的活躍程度很高。官方文檔非常完備,按照文檔操作至少能夠順利地完成安裝和配置過程。在網(wǎng)絡(luò)上搜索到的中英文的安裝配置教程也基本可用。商務(wù)溝通非常順暢,社區(qū)發(fā)表在論壇上的問題通常在48小時內(nèi)得到回應(yīng),通過技術(shù)支持電子郵件提出的問題通常在24小時內(nèi)得到回應(yīng)。
1.3 OpenNebula
OpenNebula由Universidad Complutense de Madrid(馬德里大學(xué)) 開發(fā),業(yè)內(nèi)評價比較高,具有移動、百度等國內(nèi)大客戶支持。除了支持私有云結(jié)構(gòu)之外,OpenNebula 還支持混合云的概念;旌显圃试S私有云基礎(chǔ)架構(gòu)與公共云基礎(chǔ)架構(gòu)(比如Amazon)的集成以提供更高級別的伸縮, 混合云通過插件與Amazon EC2配合完成。OpenNebula 支持Xen、KVM/Linux 和VMware,并且依賴libvirt進行管理。它提供EC2及OCCI兩套接口。通常采用簡稱“ONE”。
1.4 CloudStack
CloudStack最初由VMOps公司開發(fā),后被思杰收購至于Apache 2.0協(xié)議下管理。它的創(chuàng)始人為美籍華人梁勝,核心代碼用Java開發(fā)。與OpenStack有許多共同特性,最具有競爭關(guān)系的一個項目。思杰同時在規(guī)劃研發(fā)CloudStack商業(yè)版。思杰對CloudStack與OpenStack的評價:“CloudStack和OpenStack最大的區(qū)別在于,OpenStack一開始就是開源社區(qū),在研發(fā)者當(dāng)中有很多應(yīng)用,但是到現(xiàn)在沒有成熟的商業(yè)應(yīng)用;而CloudStack則相反,在開源之前,已經(jīng)有接近一百家的客戶在大規(guī)模商業(yè)部署了。換句話說了,這是將一個已經(jīng)成熟的商品進行開源。Citrix公司認為這是兩者之間最大的差異,也是Citrix將重心從OpenStack切換到CloudStack的原因。”國內(nèi)天云趨勢與思杰就CloudStack在中國的推廣、應(yīng)用進行合作。
2、云平臺架構(gòu)研究
經(jīng)典云計算架構(gòu)包括IaaS、PaaS、SaaS三層服務(wù)。云計算平臺架構(gòu)細分為硬件層、虛擬層、軟件平臺層、能力層、應(yīng)用平臺以及軟件服務(wù)層。云平臺的云計算架構(gòu)雖然分了多個層次,但是每個層次之間都是松耦合關(guān)系,在一個具體的云平臺中也不是每個層次的服務(wù)都使用到,而是根據(jù)具體的應(yīng)用環(huán)境搭建相應(yīng)的云計算架構(gòu)。企業(yè)要根據(jù)自己的商業(yè)模式來選擇云平臺。
2.1 Eucalyptus
Eucalyptus是一個與Amazon EC2兼容的IaaS系統(tǒng)。Eucalyptus包括云控制器(CC)、Walrus、集群控制器(CLC)、存儲控制器(SC)和節(jié)點控制器(NC)。CC是整個Eucalyptu系統(tǒng)的核心,負責(zé)高層次的資源調(diào)度,例如向CLC請求計算資源。Walrus是一個與Amazon S3類似的存儲服務(wù),主要用于存儲虛擬機映像和用戶數(shù)據(jù)。CC是一個集群的前端,負責(zé)協(xié)調(diào)一個集群內(nèi)的計算資源,并且管理集群內(nèi)的網(wǎng)絡(luò)流量。SC是一個與Amazon EBS類似的存儲塊設(shè)備服務(wù),可以用來存儲業(yè)務(wù)數(shù)據(jù)。NC是最終的計算節(jié)點,通過調(diào)用操作系統(tǒng)層的虛擬化技術(shù)來啟動和關(guān)閉虛擬機。在同一個集群(CC)內(nèi)的所有計算節(jié)點(NC)必須在同一個子網(wǎng)內(nèi)。在一個集群(CC)內(nèi)通常需要部署一臺存儲服務(wù)器(SC),為該集群內(nèi)的計算節(jié)點提供數(shù)據(jù)存儲服務(wù)。
Eucalyptus通過Agent的方式來管理計算資源。在每一個計算節(jié)點上,都需要運行一個eucalyptus-nc的服務(wù)。該服務(wù)在集群控制器(CC)上注冊后,云控制器(CLC)即可通過集群控制器(CLC)將需要運行的虛擬機映像文件(EMI)拷貝到該計算節(jié)點上運行。
Eucalyptus將虛擬機映像文件存儲在Walrus上。當(dāng)用戶啟動一個虛擬機實例的時候,Eucalyptus首先將相應(yīng)的虛擬機映像(EMI)從Walrus拷貝到將要運行該實例的計算節(jié)點(NC)上。當(dāng)用戶關(guān)閉(或者是由于意外而重啟)一個虛擬機實例的時候,對虛擬機所做的修改并不會被寫回到Walrus上原來的虛擬機映像(EMI)上,所有對該虛擬機的修改都會丟失。如果用戶需要保存修改過的虛擬機,就需要利用工具(euca2ools)將該虛擬機實例保存為新的虛擬機映像(EMI)。如果用戶需要保存數(shù)據(jù),則需要利用存儲服務(wù)器(SC)所提供的彈性塊設(shè)備來完成。
2.2 Convirture
ConVirt是一個虛擬化管理平臺,使用無代理模式工作。當(dāng)需要管理的目標節(jié)點提供SSH登錄方式時,ConVirt通過SSH登陸到計算節(jié)點,在計算節(jié)點上直接運行相對應(yīng)的虛擬化管理命令。當(dāng)需要管理的目標節(jié)點提供HTTP/HTTPS/XML-RPC遠程調(diào)用接口時,ConVirt插件通過目標節(jié)點所提供的遠程調(diào)用接口實現(xiàn)對目標平臺的管理。
ConVirt不提供與Amazon EC2兼容的云管理接口。但是ConVirt 3.0提供了與Amazon EC2 / Eucalyptus的用戶接口,使得ConVirt用戶能夠在同一個Web 管理界面下同時管理Amazon EC2 / Eucalyptus提供的虛擬計算資源。
2.3 OpenNebula
OpenNebula的構(gòu)架包括三個部分:驅(qū)動層、核心層、工具層。驅(qū)動層直接與操作系統(tǒng)打交道,負責(zé)虛擬機的創(chuàng)建、啟動和關(guān)閉,為虛擬機分配存儲,監(jiān)控物理機和虛擬機的運行狀況。核心層負責(zé)對虛擬機、存儲設(shè)備、虛擬網(wǎng)絡(luò)等進行管理。工具層通過命令行界面/瀏覽器界面方式提供用戶交互接口,通過API方式提供程序調(diào)用接口。OpenNebula使用共享存儲設(shè)備(例如NFS)來提供虛擬機映像服務(wù),使得每一個計算節(jié)點都能夠訪問到相同的虛擬機映像資源。當(dāng)用戶需要啟動或者是關(guān)閉某個虛擬機時,OpenNebula通過SSH登陸到計算節(jié)點,在計算節(jié)點上直接運行相對應(yīng)的虛擬化管理命令。這種模式也稱為無代理模式,由于不需要在計算節(jié)點上安裝額外的軟件(或者服務(wù)),系統(tǒng)的復(fù)雜度也相對降低了。
2.4 CloudStack
CloudStack采用了“框架+ 插件”的系統(tǒng)構(gòu)架,通過不同的插件來提供對不同虛擬化技術(shù)的支持。CloudStack本身是一個虛擬化管理平臺,但是它通過CloudBridge提供了與Amazon EC2相兼容的云管理接口,對外提供IaaS服務(wù)。
3、系統(tǒng)虛擬化技術(shù)比較
云計算是以分布式計算和虛擬化技術(shù)為基礎(chǔ)的,虛擬化對云計算平臺來說是非常重要的。對虛擬化技術(shù)的支持也是選擇云平臺的重要方面。
表1中可以看出,Xen和KVM是目前獲得最廣泛的廠商虛擬化技術(shù),緊隨其后的是VMWare。而對虛擬化技術(shù)支持達到3個及以上的云平臺是Eucalyptus、OpenNebula 和CloudStack,其中Eucalyptus對VMWare的支持是要付費的,相比較而言Convirture要差一些,它只支持Xen和KVM。
4、結(jié)論
基于以上研究,給出如下參考。從商務(wù)上進行軟件選型,性價比通常是一個決定性的因素。在假定參與選型的軟件全部滿足技術(shù)要求的前提下,企業(yè)(機構(gòu))需要考慮的因素包括軟件的授權(quán)協(xié)議是否友好、許可證管理的難易程度、軟件和服務(wù)的價格高低、運營團隊在業(yè)界的聲譽、開發(fā)者社區(qū)和用戶社區(qū)的規(guī)模和活躍程度、商業(yè)與技術(shù)溝通的難易程度。以上4個云平臺中Eucalyptus評定最優(yōu);從功能上進行虛擬化管理軟件選型,需要考慮的因素包括該軟件所支持的虛擬化技術(shù)、安裝配置的難易程度、開發(fā)和使用文檔的詳盡程度、所提供的功能是否全面以及用戶界面是否直觀友好、二次開發(fā)的難易程度、是否提供物理資源和虛擬資源的監(jiān)控報表等等,以上4個云平臺中CloudStack評定最優(yōu)。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:主流開源云平臺的商業(yè)選擇
本文網(wǎng)址:http://www.oesoe.com/html/support/11121512456.html