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