《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 云計算及其關(guān)鍵技術(shù)研究
云計算及其關(guān)鍵技術(shù)研究
來源:微型機與應(yīng)用2011年第10期
高 林1,2, 宋相倩1, 王潔萍2
(1. 桂林電子科技大學(xué) 計算機與控制學(xué)院,,廣西 桂林 541004,; 2. 中國電子技術(shù)
摘要: 在分析現(xiàn)有定義的基礎(chǔ)上對云計算提出了較全面的參考性定義,并給出了云計算的六大特征、四種部署模式和三種服務(wù)模式,。此外,,通過對云環(huán)境中三種角色的責(zé)任分析和對主流云計算產(chǎn)品的研究,抽象出了支撐云計算的關(guān)鍵技術(shù),,最后指出云計算對未來軟件市場發(fā)展的影響,。
關(guān)鍵詞: 云計算 云服務(wù) 云部署
Abstract:
Key words :

摘  要: 在分析現(xiàn)有定義的基礎(chǔ)上對云計算提出了較全面的參考性定義,并給出了云計算的六大特征、四種部署模式和三種服務(wù)模式,。此外,,通過對云環(huán)境中三種角色的責(zé)任分析和對主流云計算產(chǎn)品的研究,抽象出了支撐云計算的關(guān)鍵技術(shù),,最后指出云計算對未來軟件市場發(fā)展的影響,。
關(guān)鍵詞: 云計算;云服務(wù),;云部署

 作為一種IT基礎(chǔ)設(shè)施交付和使用模式,、一種信息服務(wù)交付和使用模式、一種基于互聯(lián)網(wǎng)通過虛擬化方式共享信息資源的新型計算模式,,云計算為數(shù)據(jù)計算,、存儲和管理提供了虛擬資源空間和超強計算能力,可使用戶低成本,、高效率,、靈活地分享信息技術(shù)的發(fā)展成果,更好地獲取和使用知識,,減少數(shù)字鴻溝,,加強科技創(chuàng)新,提高公共服務(wù)水平,。
 20世紀(jì)60年代John McCarthy提出“計算能力在未來將成為公共設(shè)施”,,這是云計算概念的起源[1],。20世紀(jì)80年代末誕生了網(wǎng)格計算,將大量的異構(gòu)計算機集成起來進(jìn)行復(fù)雜問題(通常是科學(xué)問題)的求解,。20世紀(jì)90年代,,虛擬化的概念已經(jīng)從虛擬服務(wù)器發(fā)展到更高層次的抽象,從虛擬平臺到虛擬應(yīng)用程序,。20世紀(jì)末21世紀(jì)初,,Web Service和SOA等面向服務(wù)的概念和技術(shù)迅速發(fā)展。云計算正是在上述各項技術(shù)的基礎(chǔ)上,,經(jīng)過數(shù)十載的發(fā)展演化逐漸成熟起來,。
1 云計算概念
 美國加州大學(xué)伯克利分校在指出云計算既指在互聯(lián)網(wǎng)上以服務(wù)形式提供的應(yīng)用,也指在數(shù)據(jù)中心中提供這些服務(wù)的硬件和軟件,,而這些數(shù)據(jù)中心中的硬件和軟件則被稱為云[2],。美國國家標(biāo)準(zhǔn)與技術(shù)研究院指出云計算由一個可配置的共享資源池組成,該資源池提供網(wǎng)絡(luò),、服務(wù)器,、存儲、應(yīng)用和服務(wù)等多種硬件和軟件資源[3],。資源池具備自我管理能力,,用戶只需少量參與就可以方便快捷地按需獲取資源。云計算提高了資源可用性,。
  Wikipedia和NIST都強調(diào)云計算中資源的按需提供,。在對云計算范圍的界定上, UCB認(rèn)為云計算不包括私有云,,而NIST則認(rèn)為云計算包括私有云,。本文認(rèn)為NIST的定義主要從云計算提供者的角度出發(fā),比較全面地涵蓋了云計算的本質(zhì)特征,,但是缺乏對云計算使用者和云計算開發(fā)者的闡述,。
  綜上所述,本文提出自己的參考性定義:云計算是一種以提高資源利用率,、降低IT成本為驅(qū)動的計算模式,,在云計算中包括云服務(wù)使用者、云服務(wù)提供者和云服務(wù)開發(fā)者三類角色,。
 云服務(wù)使用者可在不具備專業(yè)知識的情況下利用網(wǎng)絡(luò)通過交互技術(shù)以自服務(wù)的方式訪問云端資源,。
 云服務(wù)提供者作為聯(lián)系服務(wù)使用者和服務(wù)開發(fā)者的橋梁,,以按需使用,、按量計費的方式通過網(wǎng)絡(luò)提供動態(tài)可伸縮資源,云服務(wù)提供者負(fù)責(zé)安全管理,、運營支撐管理,、服務(wù)平臺以及資源平臺,,其中服務(wù)平臺包括軟件即服務(wù)SaaS(Software as a Service)、平臺即服務(wù)PaaS(Platform as a Service),、基礎(chǔ)設(shè)施即服務(wù)IaaS(Infrastructure as a Service)以及這三種服務(wù)的組合和管理,。資源平臺包括資源池、虛擬資源管理,、物理資源管理等,。
 云服務(wù)開發(fā)者負(fù)責(zé)將各種軟硬件資源封裝成服務(wù),并負(fù)責(zé)服務(wù)的創(chuàng)建,、發(fā)布和維護(hù),。
2 云計算特征
 為了全面理解云計算,本文進(jìn)一步分析云計算的關(guān)鍵特征,,具體如下:
 (1)網(wǎng)絡(luò)接入,。云計算通過網(wǎng)絡(luò)提供服務(wù)能力,支持各種標(biāo)準(zhǔn)設(shè)備接口,。
 (2)按需提供,。云計算可以根據(jù)用戶需求的改變,快速動態(tài)地分配和回收資源,,既保證忙時用戶需求的及時滿足,,又保證閑時資源的及時回收。
 (3)按量計費,。云計算提供對計算,、存儲、網(wǎng)絡(luò)和其他各類資源的測量能力,,能夠統(tǒng)計某個用戶在某段時間對某類資源或者服務(wù)的使用情況,。
 (4)用戶自服務(wù)。用戶可以自服務(wù)的方式配置和調(diào)用云服務(wù),。例如,,配置服務(wù)器時間和網(wǎng)絡(luò)存儲容量。
 (5)多租戶,。云計算提供者可以同時為多個使用者提供服務(wù),,利用規(guī)模經(jīng)濟提高資源利用率。
 (6)可靠性,。云計算通過異地備份,、多副本備份等策略增強服務(wù)可靠性。
 這些關(guān)鍵特征一方面可以幫助理解云計算的內(nèi)涵和外延,,另一方面可以作為區(qū)別云計算和其他各類計算模式的依據(jù),。
3 云計算的服務(wù)模式
    云服務(wù)[3]主要包括SaaS、PaaS,、IaaS以及三種服務(wù)的組合,。如圖1所示,。
    (1) SaaS是指將某些特定應(yīng)用軟件功能封裝成服務(wù),對于服務(wù)使用者而言購買的是軟件的使用權(quán)而不是其所有權(quán),。如Salesforce公司提供的在線客戶關(guān)系管理CRM服務(wù),。
    (2) PaaS是指將一個完整的應(yīng)用開發(fā)平臺,包括應(yīng)用設(shè)計、應(yīng)用開發(fā),、應(yīng)用測試和應(yīng)用托管都作為一種服務(wù)提供給客戶,。典型的PaaS包括Google App Engine[4]、Microsoft Windows Azure,。
    (3) IaaS將硬件設(shè)備等基礎(chǔ)資源,,包括計算、存儲和網(wǎng)絡(luò)等,,封裝成服務(wù)供用戶使用,,典型的如亞馬遜的彈性計算云EC2和簡單存儲服務(wù)S3[6]。
4 云計算的部署模式
  云計算有四類典型的部署模式(如圖2所示):“公共云”,、“私有云”,、“社區(qū)云”和“混合云”。具體描述如下:
  (1) 公共云,。云基礎(chǔ)設(shè)施對公眾或某個很大的業(yè)界群組提供云服務(wù),。
  (2) 私有云。云基礎(chǔ)設(shè)施特定為某個組織運行服務(wù),,可以是該組織或某個第三方負(fù)責(zé)管理,。
  (3) 社區(qū)云。云基礎(chǔ)設(shè)施由若干個組織分享,,以支持某個特定的社區(qū),。
  (4) 混合云。云基礎(chǔ)設(shè)施由兩個或多個云組成,,獨立存在,,但是通過標(biāo)準(zhǔn)的或私有的技術(shù)綁定在一起,這些技術(shù)可促成數(shù)據(jù)和應(yīng)用的可移植性,。

 

 

5 云計算關(guān)鍵技術(shù)
    本文通過對云計算三種角色的責(zé)任研究和典型云計算產(chǎn)品的分析,抽象出了支撐云計算的七大關(guān)鍵技術(shù),。
5.1 系統(tǒng)虛擬化
    系統(tǒng)虛擬化[5]是指將一臺物理計算機系統(tǒng)虛擬化為一臺或多臺虛擬計算機系統(tǒng)。通過虛擬化層的模擬,,虛擬機中的操作系統(tǒng)認(rèn)為自己仍然是獨占一個系統(tǒng)在運行,。這個虛擬化層被稱為虛擬機監(jiān)控器。
5.2 虛擬化資源管理
    虛擬化資源是云計算中最重要的組成部分之一,,它對虛擬化資源的管理水平直接影響著云計算的可用性,、可靠性和安全性。云資源池中應(yīng)用的需求不斷改變,在線服務(wù)的請求經(jīng)常不可預(yù)測,,這種動態(tài)的環(huán)境要求云計算的數(shù)據(jù)中心或計算中心能夠?qū)Ω黝愘Y源靈活、快速,、動態(tài)地按需進(jìn)行調(diào)度,。云計算中的虛擬化資源與以往的網(wǎng)絡(luò)資源相比,具有數(shù)量更為巨大,、數(shù)據(jù)分布更為離散,、數(shù)據(jù)調(diào)度更為頻繁的特征[6]。
5.3 分布式數(shù)據(jù)存儲
    分布式數(shù)據(jù)存儲技術(shù)包含分布式文件存儲系統(tǒng),、分布式對象存儲系統(tǒng)和分布式數(shù)據(jù)庫技術(shù),。下面分別闡述這三方面的技術(shù):
    (1) 分布式文件存儲系統(tǒng)
    為了存儲和管理云計算中的海量數(shù)據(jù),Google提出分布式文件系統(tǒng)GFS[7](Google File System),。Google GFS的結(jié)點由廉價不可靠PC構(gòu)建,,因而硬件失敗是一種常態(tài)而非特例。
    (2) 分布式對象存儲系統(tǒng)
    對象存儲系統(tǒng)是傳統(tǒng)的塊設(shè)備的延伸,,具有更高的“智能”:上層通過對象ID來訪問對象,,而不需要了解對象的具體空間分布情況。Amazon的S3就屬于對象存儲服務(wù),。
    (3) 分布式數(shù)據(jù)庫技術(shù)
    云計算環(huán)境下,,大部分應(yīng)用不需要支持完整的SQL語義,而只需要Key-Value形式或略復(fù)雜的查詢語義,。Google的BigTable[8]是一個典型的分布式結(jié)構(gòu)化數(shù)據(jù)存儲系統(tǒng),。
5.4 海量數(shù)據(jù)處理
    并行計算模型是提高海量數(shù)據(jù)處理效率的常用方法。云計算環(huán)境下的并行計算模型屬于面向互聯(lián)網(wǎng)數(shù)據(jù)密集型應(yīng)用的并行編程模型,,云計算下把海量數(shù)據(jù)分布到多個結(jié)點(通常是廉價不可靠的PC機)上,,將計算并行化,利用多機的計算資源,,加快數(shù)據(jù)處理的速度[9],。如Google的MapReduce模型、微軟的Dryad模型,。
5.5 用戶交互技術(shù)
     隨著云計算的逐步普及,,瀏覽器已經(jīng)不僅僅是一個客戶端的軟件,而逐步演變?yōu)槌休d著互聯(lián)網(wǎng)的平臺,。瀏覽器與云計算的整合技術(shù)主要體現(xiàn)在兩個方面:瀏覽器網(wǎng)絡(luò)化與瀏覽器云服務(wù),。瀏覽器都將網(wǎng)絡(luò)化作為其功能的標(biāo)配之一,主要功能體現(xiàn)在用戶可以登錄瀏覽器,,并通過自己的帳號將個性化數(shù)據(jù)同步到服務(wù)端,。而目前的云端服務(wù),主要體現(xiàn)在P2P下載、視頻加速等單獨的客戶端軟件中,。
5.6 安全管理
    安全問題是用戶是否選擇云計算的主要顧慮之一,。傳統(tǒng)集中式管理方式下也有安全問題,云計算的多租戶,、分布性,、對網(wǎng)絡(luò)和服務(wù)提供者的依賴性,為安全問題帶來新的挑戰(zhàn)[10],。主要的數(shù)據(jù)安全問題和風(fēng)險包括:數(shù)據(jù)存儲及訪問控制,、數(shù)據(jù)傳輸保護(hù)、數(shù)據(jù)隱私及敏感信息保護(hù),、數(shù)據(jù)可用性,、依從性管理;相應(yīng)的數(shù)據(jù)安全管理技術(shù)包括:數(shù)據(jù)保護(hù)及隱私,、身份及訪問管理,、可用性管理、日志管理,、審計管理,、依從性管理等。
5.7 運營支撐管理
    為了支持規(guī)模巨大的云計算環(huán)境,,需要成千上萬臺服務(wù)器來支撐,。如何對數(shù)以萬計的服務(wù)器進(jìn)行穩(wěn)定高效的運營管理,成為云服務(wù)被用戶認(rèn)可的關(guān)鍵因素之一,。     下面從云的部署,、負(fù)載管理和監(jiān)控、計量計費,、SLA服務(wù)水平協(xié)議(Service Level Agreement),、能效評測五個方面分別闡述云的運營管理。
    (1) 云計算的部署
    云計算的部署是一個系統(tǒng)工程,,涉及到從機房建設(shè),、網(wǎng)絡(luò)優(yōu)化、硬件選型,、軟件系統(tǒng)開發(fā)和測試到運維等各方面的技術(shù),。為了保證服務(wù)的健壯性,需要將云計算以一定冗余部署在不同地域的若干機房,。為了應(yīng)對規(guī)模的不斷增長,,云計算要具備便利的、近乎無限的擴展能力,,因而從數(shù)據(jù)存儲層,、應(yīng)用業(yè)務(wù)層到接入層都需要采用相應(yīng)的措施,。為了保護(hù)云計算及其應(yīng)用的安全,需要建立起各個層次的信息安全機制,。除此之外,,還需要部署一些輔助的子系統(tǒng),如管理信息系統(tǒng),、安全系統(tǒng),、監(jiān)控和計費系統(tǒng)等,使云計算的部署和運營管理達(dá)到高度自動化和智能化的程度,。    
    (2) 負(fù)載管理和監(jiān)控
    云計算的負(fù)載管理和監(jiān)控是一種大規(guī)模集群的負(fù)載管理和監(jiān)控技術(shù)[11]。對于結(jié)點粒度,,它需要能夠?qū)崟r地監(jiān)控集群中每個結(jié)點的負(fù)載狀態(tài),,報告負(fù)載的異常和結(jié)點故障,對出現(xiàn)過載或故障的結(jié)點采取既定的預(yù)案,。對于集群整體粒度,,通過對單個結(jié)點、單個子系統(tǒng)的信息進(jìn)行匯總和計算,,近乎實時地得到集群的整體負(fù)載和監(jiān)控信息,,為運維、調(diào)度和成本提供決策,。
    (3) 計量計費
    云計算的主要商業(yè)運營模式是采取按量計費(pay-as-go)的收費方式[3],。為了精確地度量“用了多少”,就需要準(zhǔn)確,、及時計算云計算上的每一個應(yīng)用服務(wù)使用了多少資源,,這稱為服務(wù)計量。在計量的基礎(chǔ)上,,選取若干合適的維度組合,,制定相應(yīng)的計費策略并進(jìn)行計費。
    (4) SLA
    SLA是在一定開銷下為保障服務(wù)的性能和可靠性,,服務(wù)提供商與用戶間定義的一種雙方認(rèn)可的協(xié)定,。對于云服務(wù)而言,SLA是必不可少的,,因為用戶對云服務(wù)的性能和可靠性有不同的要求,。從用戶的角度而言,也需要從云服務(wù)提供商處得到具有法律效力的承諾,,來保證支付費用之后得到應(yīng)有的服務(wù)質(zhì)量,。
    (5) 能效評測
    云計算提出的初衷是將資源和數(shù)據(jù)盡可能放在云端,降低能源消耗,。但是在實際應(yīng)用中,,為解決大型數(shù)據(jù)中心的散熱問題造成了大量的能源消耗,。如何有效降低能源消耗構(gòu)建綠色數(shù)據(jù)中心成為云服務(wù)提供商迫切需要解決的問題之一。顯性的能耗測試評價可以參照傳統(tǒng)
數(shù)據(jù)中心的評價體系,具體包括:能源效率指標(biāo),、IT設(shè)備的能效比,、IT設(shè)備的工作溫度和濕度范圍、機房基礎(chǔ)設(shè)施的利用率指標(biāo),。隱性能耗測試評價包括云計算服務(wù)模式節(jié)省了多少社會資源,,由于客戶需求的不同,云計算系統(tǒng)吞吐量的變化節(jié)省了IT設(shè)備的投資和資源的重復(fù)建設(shè),。
    亞馬遜,、谷歌、雅虎,、IBM和微軟等跨國公司紛紛開展云計算研究,,并在相關(guān)領(lǐng)域開展部署,部分應(yīng)用已取得成功,。我國華為,、中興、浪潮等網(wǎng)絡(luò)設(shè)備提供商也積極投入相關(guān)設(shè)備研發(fā),。在電信領(lǐng)域,、基礎(chǔ)運營商和增值服務(wù)商也相繼開展了相關(guān)的嘗試,啟動了相關(guān)研究工作,,這些都為我國云計算產(chǎn)業(yè)的創(chuàng)新發(fā)展提供了眾多有利的探索經(jīng)驗,。伴隨著云計算產(chǎn)業(yè)的發(fā)展,云計算將為信息產(chǎn)業(yè)帶來廣闊的市場空間,,催生大量的市場發(fā)展新機遇,,對IT產(chǎn)業(yè)鏈更是影響重大。
參考文獻(xiàn)
[1] Wikipedia. Cloud Computing [EB/OL]. [2010-07-16].http://en.wikipedia.org/wiki/Cloudcomputing
[2] ARMBRUST M, FOX A. Above the clouds: a berkeley view of cloud computing[R/OL]. (2009-02-10)[2009-05-15].http://www.grid.pku.edu.cn/cloud/Berkeley-abovethe-clouds.pdf
[3] MELL P, GRANCE T. The NIST definition of cloud computing. [EB/OL]. (2009-10-7)[2010-4-9]. Http://csrc.nist.gov/groups/SNS/cloud-computing/index.html.
[4] GOOGLE.開發(fā)人員指南. [EB/OL].[2010-05-15]http://code.google.com/intl/zh-CN/appengine/docs/
[5] 金海.計算系統(tǒng)虛擬化:原理與應(yīng)用[M].北京:清華大學(xué)出版社,,2008.
[6] PATERSON M. Dynamic resource distribution across clouds.V00214440[R].Victoria, University of Victo-ria Faculty of Engineering Winter 2010 Work Term Re-port. 2010.
[7] GHEMAWAT S, GOBIOFF H, Leung Shuntak. The google  file system. In: Proc of the 19th ACM SOSP, New York, 2003.
[8] CHANG F, DEAN J, GHEMAWAT S, et al. Bigtable: a distributed storage system for structured data. In: Procfo the 7th USENIX Symp on OSDI, Berkeley, 2006.
[9] LAMMEL R. Google’s Map Reduce programming model Revisited. [EB/OL]. Http://www.cs.vu.nl/~ralf/Map Reduce/papa.pdf,2007.
[10] Cloud Security Alliance. Top threats cloud computing  V1.0.[EB/OL]. http://www.cloudsecurityalliance.org/topthreats/csathreats.v1.0.pdf
[11] RANDLES M, LAMB D, et al. A comparative study into  distributed load balancing algorithms for cloud computing. [C].//Proc of IEEE24th International Conference on Advanced Information Networking and Applications Workshops.2010.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。