云計算是一次新的IT革命。目前,普遍認為云計算服務(wù)可以分基礎(chǔ)設(shè)施即服務(wù)(Infrastructure as a service,IaaS)、平臺即服務(wù)和軟件即服務(wù)3類。IaaS面向企業(yè)用戶,提供包括服務(wù)器、存儲、網(wǎng)絡(luò)和管理工具在內(nèi)的虛擬數(shù)據(jù)中心,可以幫助企業(yè)削減IT建設(shè)成本和運維成本。在數(shù)據(jù)中心的物理基礎(chǔ)設(shè)施上,IaaS通過虛擬化技術(shù)整合出了虛擬資源池。對提供基礎(chǔ)設(shè)施提供商來說,云計算平臺主要是由各種機器組成的數(shù)據(jù)中心、一組部署管理的軟件以及通過部署生成的虛擬機組成。與現(xiàn)有的企業(yè)數(shù)據(jù)中心相比,云計算平臺具有很多優(yōu)勢,如靈活的IT基礎(chǔ)架構(gòu)、資源的按需分配和資源的快速供給等,這些特點使得云計算特別適合于互聯(lián)網(wǎng)環(huán)境下為用戶提供短期的、靈活的服務(wù)。
隨著云計算應(yīng)用技術(shù)的發(fā)展,數(shù)據(jù)中心面臨著新的挑戰(zhàn)和發(fā)展機遇。傳統(tǒng)的數(shù)據(jù)中心,無論是企業(yè)私有數(shù)據(jù)中心,還是以提供租賃服務(wù)為主的運營商互聯(lián)網(wǎng)數(shù)據(jù)中心(Internet data center,IDC),都面臨飛速增長的空間擁擠、能耗巨大和管理復(fù)雜等問題。在云計算環(huán)境下,采用以虛擬化為核心技術(shù)的新一代虛擬數(shù)據(jù)中心在高密度的硬件資源環(huán)境下,占用更少的機架、電源和空調(diào)等物理資源,可以更快速、靈活、有效地部署更多的應(yīng)用,促進數(shù)據(jù)中心“綠化”建設(shè)。更為潛在的作用是,云計算數(shù)據(jù)中心機房可以顯著降低人員及管理成本,在經(jīng)過低成本的改造過程后機房運維可以實現(xiàn)無人值守、實時監(jiān)控、自動系統(tǒng)安裝和硬件故障報警等綜合性的云服務(wù)系統(tǒng)。
中小企業(yè)是推動中國云計算發(fā)展的主要驅(qū)動因素之一。對正處于成長期的中小企業(yè)而言,投資建設(shè)IT基礎(chǔ)架構(gòu)的投資回報率較低,并且很難與業(yè)務(wù)的快速成長匹配。云計算具有部署靈活、隨需隨用、按需定制和性價比高等特點,能為這些中小企業(yè)提供合適的解決方案。
隨著互聯(lián)網(wǎng)基礎(chǔ)設(shè)施的快速發(fā)展,互聯(lián)網(wǎng)應(yīng)用已經(jīng)滲透到社會生活的各個方面。互聯(lián)網(wǎng)應(yīng)用具有高吞吐率、高并行性和較強的交互性等特點,在服務(wù)上具有非確定性,表現(xiàn)為“盡力而為”,較少涉及到復(fù)雜的運算。互聯(lián)網(wǎng)應(yīng)用的特征為開發(fā)云操作系統(tǒng)提供了最基本的依據(jù)?;ヂ?lián)網(wǎng)應(yīng)用的迅猛發(fā)展對云操作系統(tǒng)提出了新的挑戰(zhàn)和需求。目前,面向大型互聯(lián)網(wǎng)的云計算的關(guān)鍵技術(shù)主要還是掌握在外國大型公司的手中。探究大型互聯(lián)網(wǎng)環(huán)境中大規(guī)模計算資源、網(wǎng)絡(luò)資源、存儲資源和軟件資源等的靈活調(diào)度及按需部署仍然是一個較為前沿的研究課題。
云計算對運營商是發(fā)展契機,一方面它能夠優(yōu)化IT資源、降低企業(yè)內(nèi)部的運營成本,另一方面也是運營IT業(yè)務(wù)的切入點。為解決目前實際運維中出現(xiàn)的管理成本高、第三方提供的云平臺的許可費過高且不滿足動態(tài)多變的互聯(lián)網(wǎng)應(yīng)用需求等問題,必須設(shè)計和開發(fā)云操作系統(tǒng)INACloud。 INACloud要盡可能兼容既有資源,并能與現(xiàn)有業(yè)務(wù)平臺對接,其主要目標服務(wù)群體是中小企業(yè),并要求具有方便的定制能力,表現(xiàn)為以下兩方面:
?。?)自動化資源部署?!霸啤钡暮诵墓δ苁亲詣訛橛脩籼峁㊣T服務(wù),用戶、管理員和其他人員能通過界面對云計算平臺進行管理和監(jiān)控。完全自動化的部署流程不僅符合安全要求,而且能自動滿足用戶的需求,通過提高現(xiàn)有資源的利用率和復(fù)用率節(jié)省成本。
?。?)端到端服務(wù)請求管理。該流程管理可以提供對服務(wù)請求的全周期管理,包括訂單處理、系統(tǒng)開通和服務(wù)計費等。
1.開源云計算操作系統(tǒng)選型
“全新”設(shè)計一個云操作系統(tǒng),從成本效益來看是不可取的。既要滿足自己的需要,又要避免陷入成本陷阱,因此,更可行的途徑是選擇一個合適的開源云操作系統(tǒng)作為基礎(chǔ),進行本土化定制和二次開發(fā)。
除Amazon,Google提供的云計算操作系統(tǒng)外,云計算操作系統(tǒng)還包括Eucalyptus,OpenNebula,OpenStack,OpenQRM,XenServer,CloudStack,ConVirt等。每種云計算操作系統(tǒng)都具有一定的特點,其中大部分云計算操作系統(tǒng)采用開源模式,但社區(qū)規(guī)模較小,活躍程度也不高。除了Eucalyptus系統(tǒng)積極地鼓勵社區(qū)用戶參與項目的開發(fā)與測試之外,其他云計算操作系統(tǒng)選擇開放源代碼只是一種營銷策略,并且價格大多較貴。另外,部分操作系統(tǒng)每年需要更新一次服務(wù)器許可證,僅管理和維護許可證就是個復(fù)雜問題。
國內(nèi)開發(fā)云計算操作系統(tǒng)較晚,目前仍處于起步階段,所以大多直接引入國外的云操作系統(tǒng)或通過引進國外商業(yè)產(chǎn)品的技術(shù)核心及平臺進行架構(gòu)。浪潮、中興、阿里巴巴和華為等公司相繼推出了各自的云計算系統(tǒng)或云計算平臺,如浪潮的“云海OS、中興的“CoCloud云操作系統(tǒng)”和阿里巴巴的“阿里云OS”等。這些云操作系統(tǒng)還處于探索階段,尚未廣泛使用,并且系統(tǒng)的性能、價格和安全性等還有待市場檢驗。考慮到知識產(chǎn)權(quán)、建設(shè)成本和管理成本等因素,研究并自主開發(fā)開放的、兼容的、滿足實際運營需求的云操作系統(tǒng)十分必要。
結(jié)合目前業(yè)界最先進的虛擬化技術(shù)、開源IaaS平臺管理技術(shù),利用自身云計算運營的經(jīng)驗,進行研發(fā)、改造生成滿足運營需求、技術(shù)領(lǐng)先的云計算管理平臺。經(jīng)過初步篩選,本工作重點考察OpenStack和CloudStack開源云計算平臺,并分別搭建測試環(huán)境。通過一系列的技術(shù)、業(yè)務(wù)開展等方面的比對,整理的重要指標見表1。
表1 OpenStack和CloudStack的對比
C1oudStack平臺的前身是Cloud.com的平臺,作為全球最成功的公共云平臺之一,已經(jīng)幫助至少85個大規(guī)模生產(chǎn)性云平臺實現(xiàn)了10億美元以上的運營收入。它支持VMWARE ESX,Xen,KVM,Hyper-V和Bare Metal裸金屬服務(wù)器,并提供了大量的云計算管理工具,如VM自助式供應(yīng)、動態(tài)工作負載管理和多租戶管理等。
出于后續(xù)運營及技術(shù)等方面的考慮,本工作決定采用以CloudStack為主,參考OpenStack的方式進行后續(xù)云計算操作系統(tǒng)的研發(fā)。
2.INACloud的架構(gòu)設(shè)計
云計算平臺采用樹狀分層結(jié)構(gòu)(見圖1),其層次結(jié)構(gòu)定義如下:
圖1 資源組織結(jié)構(gòu)
?。?) Zone。一個Zone包含多個pod和二級存儲,是最大的組織單元,傳統(tǒng)上對應(yīng)一個數(shù)據(jù)中心(在數(shù)據(jù)中心可以有多個zone),優(yōu)點是提供物理上的獨立性和冗余性。
(2) Pod。一個硬件陣列,包含一個2層交換機、若干個集群。Pod類似于機架,同一Pod中的主機在同一子網(wǎng)中。Pod對于最終用戶是不可見的。
?。?) Cluster。一個CIuster包括若干個主機和主存儲。集群提供一種組織節(jié)點的方式,可以是XenServerserver池、一組KVM server或者是事先在vCenter中事先配置好的VMvare集群。一個集群中的計算節(jié)點有同樣的硬件、hypervisor和子網(wǎng),能夠訪問共享的主存儲。虛擬機能夠在不中斷的情況下于一個集群內(nèi)遷移。
?。?) Host。單個的計算節(jié)點,以虛擬機的形式提供真正的云服務(wù)。
?。?)主存儲。與一個集群相連,負責(zé)保存虛擬機運行時所需的磁盤卷。
?。?)二級存儲。與一個Zone相連,存儲模板、ISO鏡像和磁盤快照等。
2.1 組件結(jié)構(gòu)
CloudStack采用“框架+插件”的系統(tǒng)構(gòu)架,通過不同的插件來提供對不同虛擬化技術(shù)的支持,同時,這種系統(tǒng)構(gòu)架也為定制CloudStack提供了可能性。如圖2所示,INACloud在CloudStack上增加了調(diào)度服務(wù)、計費服務(wù)和監(jiān)控服務(wù)等。
圖2 INACloud的組件結(jié)構(gòu)
2.2 網(wǎng)絡(luò)結(jié)構(gòu)
CloudStack的網(wǎng)絡(luò)設(shè)計是一個亮點,也是其被商業(yè)廣泛應(yīng)用的一個主要原因,INACloud則直接借用了這種設(shè)計模式。
根據(jù)不同的數(shù)據(jù)流量類型設(shè)計公共、管理、客戶和存儲網(wǎng)絡(luò),簡稱PMGS。
公共(P):用于虛擬機訪問外網(wǎng),所有的HypervIsor都需要共享Public Vlan以保證虛擬機對外網(wǎng)的訪問。
管理(M):用于云內(nèi)部通信,包括管理服務(wù)器節(jié)點與Hypervisor集群、系統(tǒng)虛擬機或其他組件之間的通信等。
客戶(G):用于最終用戶運行虛擬機實例時的通信和虛擬機實例之間的通信。
存儲(S):用于主存儲與Hypervisor、二級存儲之間的通信。
網(wǎng)絡(luò)模式根據(jù)安全性不同分為基本網(wǎng)絡(luò)和高級網(wǎng)絡(luò),其中M,G,S網(wǎng)絡(luò)對基本網(wǎng)絡(luò)和高級網(wǎng)絡(luò)通用,而P網(wǎng)絡(luò)只針對高級網(wǎng)絡(luò)。兩種網(wǎng)絡(luò)模式的主要區(qū)別在于對G網(wǎng)絡(luò)采用的隔離方式,前者采用SecurITy Group方式,而后者采用VlAN方式。
另外,系統(tǒng)虛擬機的虛擬路由器在高級網(wǎng)絡(luò)模式中十分重要,它為租戶私有網(wǎng)絡(luò)與公共網(wǎng)絡(luò)之間的接口,并為租戶的私有網(wǎng)絡(luò)提供各種網(wǎng)絡(luò)服務(wù),包括NAT,靜態(tài)NAT,DHCP,DNS,Load Balancing,Port Forwording,F(xiàn)irewalls,SITe-to-SITe VPN等。
2.3 與現(xiàn)有業(yè)務(wù)系統(tǒng)對接
為便于與現(xiàn)有業(yè)務(wù)系統(tǒng)的對接,所有云操作系統(tǒng)的API都可以通過HTTP GET/POST帶上命令及其參數(shù)的方式進行訪問;同時,云操作系統(tǒng)的對外功能層提供基于SOAP消息格式的Web服務(wù)和基于JSON消息格式的RESTfuI服務(wù)訪問方式(見圖3)。
圖3 云操作系統(tǒng)與電信系統(tǒng)的對接
3.可定制的云平臺管理功能
3.1資源調(diào)度
INACloud包括常用的3種負載均衡算法。
?。?) Roundrobin,即簡單輪詢調(diào)度,調(diào)度器通過“輪詢”算法將外部用戶請求按順序分配到集群中的每個物理服務(wù)器上。該算法平等地對待每一臺Real Server,而不受服務(wù)器上實際的負載狀況和連接狀態(tài)影響。
?。?) Leastconn,即最少連接調(diào)度,調(diào)度器將網(wǎng)絡(luò)請求調(diào)度到已建立的鏈接數(shù)最少的服務(wù)器上。如果集群系統(tǒng)的真實服務(wù)器具有相近的系統(tǒng)性能,采用“最小連接”調(diào)度算法可以較好地均衡負載。
?。?) Source,即“源地址”調(diào)度,調(diào)度器根據(jù)請求源IP進行散列(hashing)來調(diào)度。
INACloud還包括:基于經(jīng)濟成本函數(shù)的調(diào)度算法,即最少費用原則;Lastsame算法,即盡量與上一次的調(diào)度結(jié)果一致;最快響應(yīng)算法,即試圖與用戶歷史中最快響應(yīng)的虛擬機調(diào)度分配一致。
這些調(diào)度算法以服務(wù)的形式提供給用戶,并可通過用戶門戶來選用。調(diào)度服務(wù)采用目前流行的Web服務(wù)器Tomcat和JSP技術(shù),實現(xiàn)讀取XML數(shù)據(jù)顯示在瀏覽器頁面中,并融入INACloud管理平臺。
自定義調(diào)度算法通過云操作系統(tǒng)的2個接口進行定制。
?。?)主機資源調(diào)度接口
public List<Host> allocateTo (VirtuaIMachine-Profile <?extends VirtualMachine> vmProfile,DeploymentPlan plan,Type type,ExcIudeIist avoid,int returnUpTo);
?。?)存儲資源池調(diào)度接口
public list<Storage PooI> allocate ToPool (DiskProflie dskCh,Virtual Machine Profile? extendsVirtualMachine> vm,DeploymentPlan plan,Ex-cludeList avoid,int returnUpTo)。
3.2 資源監(jiān)控
由于云計算具有自動化、彈性可擴展的特點,因此,云計算環(huán)境中的資源監(jiān)控顯得格外重要。
監(jiān)控系統(tǒng)分為采集、信息處理與存儲、展現(xiàn)以及警告4個主要功能,其中采集的內(nèi)容包括主機的CPU狀態(tài)、內(nèi)存使用情況、INACloud平臺運行狀況(包括事件和警告)和網(wǎng)絡(luò)流量等信息(見圖4)。監(jiān)控管理器(MServer)根據(jù)不同的采集頻度,采用輪詢的方式定期訪問收集器(Collectors),Collectors負責(zé)采集數(shù)據(jù)。MServer接收到數(shù)據(jù)后按照設(shè)定的策略,定期將歷史信息存入HBase中。這些數(shù)據(jù)可為負載均衡或者動態(tài)遷移等模塊提供信息。監(jiān)控客戶(MCLient)根據(jù)用戶要求從MServer獲取相關(guān)數(shù)據(jù)后,繪制易于用戶閱讀的圖表格式呈現(xiàn)給用戶。MServer對于收集到的信息進行分析,若發(fā)現(xiàn)主機或云平臺的異常,會借用開源監(jiān)控系統(tǒng)Nigos提供報警功能,使用戶可以快速地定位錯誤,并對錯誤進行修復(fù)。
圖4 INACloud的資源監(jiān)控
3.3 計費管理
C1oudStack沒有實現(xiàn)計費系統(tǒng),但是有相應(yīng)的模塊對資源使用情況進行記錄,提供某賬戶的資源累計使用情況。INACloud利用這些數(shù)據(jù)進行計費,并將定制的計費策略集成到云計算操作系統(tǒng)中。
通過對照Amazon的云計算資源的計費模式和云計算業(yè)務(wù)的運營經(jīng)驗,開發(fā)了INACloud的計費模塊,并通過對用戶實際使用的云計算資源進行細穎粒的統(tǒng)計計費,計算出用戶某段時期內(nèi)虛擬機、存儲和網(wǎng)絡(luò)的費用(見圖5)。
圖5 INACloud的計費界面
4.結(jié)束語
INACloud旨在打造動態(tài)、開放的云服務(wù)平臺,向下整合多廠商的云計算基礎(chǔ)產(chǎn)品和解決方案,向上聯(lián)合更多的云服務(wù)提供商,以開源軟件CloudStack為基礎(chǔ),進行了功能定制和二次開發(fā)以滿足實際運維的需要。
為適應(yīng)中小企業(yè)用戶的量多、短期和動態(tài)性強的特點,INACloud提供了多樣化資源調(diào)度算法、單點登錄和多種計費收費策略等功能。
鑒于互連網(wǎng)應(yīng)用的交互性要求,采用4種網(wǎng)絡(luò)類型、2類網(wǎng)絡(luò)模式的網(wǎng)絡(luò)結(jié)構(gòu),以便更好地進行數(shù)據(jù)分流和帶寬分配。
試運行結(jié)果表明,INACloud的架構(gòu)與設(shè)計在與原有系統(tǒng)的銜接、成本控制和解決許可證費用等方面均取得了良好的效果。
來源:CIO時代網(wǎng)
版權(quán)及免責(zé)聲明:凡本網(wǎng)所屬版權(quán)作品,轉(zhuǎn)載時須獲得授權(quán)并注明來源“中國產(chǎn)業(yè)經(jīng)濟信息網(wǎng)”,違者本網(wǎng)將保留追究其相關(guān)法律責(zé)任的權(quán)力。凡轉(zhuǎn)載文章,不代表本網(wǎng)觀點和立場。版權(quán)事宜請聯(lián)系:010-65363056。
延伸閱讀
版權(quán)所有:中國產(chǎn)業(yè)經(jīng)濟信息網(wǎng)京ICP備11041399號-2京公網(wǎng)安備11010502003583