李舒磊
摘要:隨著我國(guó)計(jì)算機(jī)技術(shù)的迅猛發(fā)展,云計(jì)算是在并行計(jì)算、分布式計(jì)算、網(wǎng)格計(jì)算的基礎(chǔ)上逐步發(fā)展起來(lái),并且得到了廣泛的應(yīng)用。但是,云計(jì)算及云平臺(tái)的系統(tǒng)架構(gòu)一直是許多計(jì)算機(jī)工作者研究的對(duì)象,主要集中于云計(jì)算平臺(tái)底層基礎(chǔ)設(shè)施的構(gòu)建和云平臺(tái)軟件系統(tǒng)構(gòu)建兩個(gè)層面。本文詳細(xì)的介紹云計(jì)算的相關(guān)概念和理論,分析了實(shí)現(xiàn)云平臺(tái)的核心技術(shù),并基于此,針對(duì)云計(jì)算架構(gòu)實(shí)施了研究,包括云計(jì)算硬件基礎(chǔ)設(shè)計(jì)架構(gòu)和軟件系統(tǒng)架構(gòu)。
關(guān)鍵詞:云計(jì)算網(wǎng)格計(jì)算系統(tǒng)架構(gòu)服務(wù)器集群
1 概述
近年來(lái),隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,在諸多研究者的努力之下,已經(jīng)誕生了許多新技術(shù),云計(jì)算技術(shù)就是一種新型的計(jì)算機(jī)技術(shù)[1]。目前,作為計(jì)算機(jī)界研究和應(yīng)用最為熱門的技術(shù)之一,云計(jì)算將許多熱門的、先進(jìn)的信息技術(shù)及其應(yīng)用大眾化,便于人們理解,人們通常對(duì)使用云技術(shù)或者云裳的服務(wù)時(shí),類似于使用家里的水電氣一樣。
云計(jì)算是一種基于并行處理、分布式處理和網(wǎng)格計(jì)算等技術(shù)發(fā)展起來(lái)的一種適應(yīng)現(xiàn)代人們工作、生活和學(xué)習(xí)需要的新型計(jì)算模式,其能夠優(yōu)化計(jì)算機(jī)資源組合,創(chuàng)新了計(jì)算機(jī)提供的服務(wù)模式[2]。在現(xiàn)代分布式應(yīng)用系統(tǒng)開發(fā)過(guò)程中,引入云計(jì)算技術(shù),可以大大的降低政企單位IT開發(fā)實(shí)現(xiàn)和運(yùn)行維護(hù)的成本,同時(shí)降低了能源消耗,有效的加快了信息化建設(shè)的進(jìn)程,另外,互聯(lián)網(wǎng)技術(shù)和云計(jì)算技術(shù)的有機(jī)結(jié)合,也催生了信息服務(wù)產(chǎn)業(yè)的模式發(fā)生改變,云計(jì)算技術(shù)將互聯(lián)網(wǎng)技術(shù)、通信技術(shù)和傳統(tǒng)信息管理技術(shù)不斷的有機(jī)交融,高速驅(qū)動(dòng)和促進(jìn)了人們的需求和商業(yè)模式發(fā)生轉(zhuǎn)變。
作為計(jì)算機(jī)學(xué)科的新興技術(shù)之一,云計(jì)算已經(jīng)得到了人們的廣泛關(guān)注和研究,其架構(gòu)技術(shù)就是諸多系統(tǒng)結(jié)構(gòu)學(xué)者研究的方向和熱點(diǎn),本文研究主要集中于云計(jì)算平臺(tái)底層基礎(chǔ)設(shè)施的構(gòu)建和云平臺(tái)軟件系統(tǒng)構(gòu)建兩個(gè)層面。
2 云計(jì)算相關(guān)理論技術(shù)
2.1 云計(jì)算概念
云計(jì)算融合了虛擬化技術(shù)、網(wǎng)格技術(shù)和Web服務(wù)技術(shù),其能夠有效的組織互聯(lián)信息資源,滿足用戶的需求,是一種新興的網(wǎng)絡(luò)資源組織結(jié)構(gòu)。云計(jì)算作為一種新興的計(jì)算架構(gòu)和應(yīng)用模式,具有很多優(yōu)勢(shì),主要包括高可靠性、超大規(guī)模及其可擴(kuò)展性和信息服務(wù)的便捷性和通用性[3]。
2.1.1 超大規(guī)模及其可擴(kuò)展性?!霸啤本哂新o(wú)邊際、超大規(guī)模的自然特征,“云計(jì)算”雖然是一種計(jì)算技術(shù),但是其同樣具有上述特性,能夠利用網(wǎng)絡(luò)資源,構(gòu)建超大規(guī)模的基礎(chǔ)設(shè)施、信息基地、信息服務(wù)等為用戶服務(wù),云計(jì)算能夠?qū)⑦@些用戶終端或者服務(wù)設(shè)施擴(kuò)展到大規(guī)模的集群上,實(shí)現(xiàn)無(wú)縫對(duì)接,可以同時(shí)處理數(shù)量級(jí)規(guī)模的節(jié)點(diǎn)請(qǐng)求,因此,對(duì)用戶來(lái)講,“云”的規(guī)??梢詫?shí)現(xiàn)動(dòng)態(tài)伸縮,以便滿足用戶不同時(shí)期不同大小的需求,具有極強(qiáng)的可擴(kuò)展性。
2.1.2 高可靠性。虛擬化技術(shù)、分布式計(jì)算技術(shù)和網(wǎng)格計(jì)算技術(shù)日趨成熟,并且應(yīng)在許多領(lǐng)域得到了廣泛的應(yīng)用,因此,這些實(shí)現(xiàn)云計(jì)算的基本技術(shù)保障了云計(jì)算的可靠性;在安全方面,云計(jì)算技術(shù)使用的大量的不同的服務(wù)器計(jì)算節(jié)點(diǎn)可以采用同構(gòu)互換技術(shù),具有極好的容錯(cuò)容災(zāi)能力,能夠確保數(shù)據(jù)的安全性、完整性,進(jìn)而確保了用戶使用的可靠性。
2.1.3 信息服務(wù)的通用性和便捷性。云計(jì)算誕生以后,用戶可以隨時(shí)隨地享受云計(jì)算帶來(lái)的優(yōu)勢(shì),不會(huì)受到時(shí)空限制,用戶在享受云平臺(tái)的服務(wù)時(shí),用戶只需要擁有通過(guò)Internet或者通過(guò)收費(fèi)或者免費(fèi)獲取的訪問(wèn)驗(yàn)證信息即可使用云服務(wù),也不會(huì)受到訪問(wèn)平臺(tái)和系統(tǒng)的制約。
2.2 云計(jì)算核心技術(shù)
作為一種高性能的服務(wù)計(jì)算模式,其涉及了許多先進(jìn)的計(jì)算機(jī)技術(shù),其核心技術(shù)主要包括數(shù)據(jù)存儲(chǔ)技術(shù)、數(shù)據(jù)管理技術(shù)、大規(guī)模服務(wù)器串聯(lián)技術(shù)和分布式的并行編程模型等四種[4]。
2.2.1 云數(shù)據(jù)存儲(chǔ)技術(shù)。云計(jì)算平臺(tái)承載的用戶規(guī)模數(shù)量級(jí)上升,因此,為了滿足海量用戶的需求,云數(shù)據(jù)雖然存儲(chǔ)在不同的節(jié)點(diǎn)上,但是為了滿足這么大規(guī)模的用戶訪問(wèn),需要保證存儲(chǔ)器的容量,并且提供高吞吐率和高傳輸率等訪問(wèn)性能?;谠朴?jì)算的Google平臺(tái)采用了GFS文件系統(tǒng),其串聯(lián)了數(shù)以萬(wàn)計(jì)的普通硬盤,可以按照GB級(jí)的數(shù)據(jù)處理度量。
2.2.2 云數(shù)據(jù)管理技術(shù)。云數(shù)據(jù)庫(kù)系統(tǒng)是專門管理分布式數(shù)據(jù)庫(kù)中存放的數(shù)據(jù)的,其用來(lái)處理PB級(jí)的結(jié)構(gòu)化數(shù)據(jù),云數(shù)據(jù)庫(kù)系統(tǒng)可以有效實(shí)現(xiàn)用戶訪問(wèn)的透明性,對(duì)于用戶來(lái)講,其訪問(wèn)數(shù)據(jù)就猶如在一個(gè)終端上。
2.2.3 數(shù)據(jù)中心服務(wù)器串聯(lián)技術(shù)。云計(jì)算數(shù)據(jù)中心能夠串聯(lián)龐大的、海量的數(shù)據(jù)服務(wù)器集群,串聯(lián)技術(shù)包括集群的部署、服務(wù)器的串聯(lián)方式、動(dòng)態(tài)數(shù)據(jù)遷移和數(shù)據(jù)快照等。
2.2.4 云編程模型。云編程模型可以為云數(shù)據(jù)提供訪問(wèn)模型,為用戶提供編程接口,實(shí)現(xiàn)數(shù)據(jù)的并行訪問(wèn)和存儲(chǔ)等功能,Google云數(shù)據(jù)采用的云編程模型的核心技術(shù)是MapReduce,該技術(shù)也是目前被廣泛應(yīng)用于云計(jì)算的編程模型。
3 云計(jì)算架構(gòu)模式研究
3.1 云計(jì)算架構(gòu)模式概述
云計(jì)算作為一個(gè)具有高可靠性、高并行性、分布性的計(jì)算和服務(wù)模式,其架構(gòu)一直受到諸多學(xué)者的關(guān)注和研究。雷萬(wàn)云等人認(rèn)為云計(jì)算的體系架構(gòu)包括六層,其能夠由各種服務(wù)器節(jié)點(diǎn)、終端用戶節(jié)點(diǎn)等共同組成,并且能夠利用邏輯編程語(yǔ)言實(shí)現(xiàn)接口模式,以便供用戶使用;Youself等人[5]認(rèn)為,云計(jì)算架構(gòu)是一種棧結(jié)構(gòu),由軟硬件構(gòu)成的固件、云平臺(tái)系統(tǒng)共同構(gòu)成;王鵬等人[6]認(rèn)為云計(jì)算是一種基于不可信節(jié)點(diǎn)的計(jì)算架構(gòu),并且給出了從構(gòu)成云計(jì)算平臺(tái)的底層硬件到表層應(yīng)用的9層模型;JohnW.Rittinghouse等人[7]提出了通信即服務(wù)、技術(shù)設(shè)施即服務(wù)、檢測(cè)即服務(wù)、平臺(tái)即服務(wù)和軟件即服務(wù)的系統(tǒng)架構(gòu);總的來(lái)說(shuō)云計(jì)算應(yīng)該由實(shí)體部分即基礎(chǔ)設(shè)施和軟件部分即計(jì)算系統(tǒng)構(gòu)成。
3.2 云計(jì)算硬件基礎(chǔ)設(shè)計(jì)架構(gòu)
云計(jì)算硬件基礎(chǔ)架構(gòu)是云計(jì)算的承載實(shí)體,是構(gòu)建云計(jì)算平臺(tái)的必備硬件,其架構(gòu)主要包括三個(gè)組成部分:服務(wù)器集群、海量存儲(chǔ)設(shè)備和高速的網(wǎng)絡(luò)帶寬鏈路。
3.2.1 服務(wù)器集群。云計(jì)算最明顯的特征就是串聯(lián)了海量的服務(wù)器設(shè)備,因此,作為實(shí)現(xiàn)云計(jì)算的基礎(chǔ),需要解決大規(guī)模服務(wù)器串聯(lián)的問(wèn)題,比如串聯(lián)服務(wù)器需要散熱問(wèn)題,云計(jì)算數(shù)據(jù)中心采用了“貨柜式”的放置方法,其能夠?qū)⒋罅康姆?wù)器集群整體擺放在一個(gè)類似于大貨車的集裝箱里面。為了能夠有效的實(shí)現(xiàn)云計(jì)算平臺(tái)的功能,這些規(guī)模龐大的服務(wù)器集群需要采用可伸縮性強(qiáng)、規(guī)模大、數(shù)據(jù)重復(fù)性和容錯(cuò)功能強(qiáng)、平衡負(fù)載能力強(qiáng)的串聯(lián)技術(shù)。目前,許多云計(jì)算數(shù)據(jù)中心采用護(hù)衛(wèi)備份的方法,以便有效的維護(hù)服務(wù)器集群間的平衡,將計(jì)算工作映射均分到各個(gè)服務(wù)器集群上去[8]。
3.2.2 海量存儲(chǔ)空間設(shè)備。云計(jì)算作為基礎(chǔ)設(shè)施既是服務(wù)(Laas)的承載實(shí)體,其需要為海量用戶提供高性能的計(jì)算服務(wù),同時(shí)必須能夠存儲(chǔ)海量數(shù)據(jù),以便滿足用戶對(duì)不斷增強(qiáng)的數(shù)據(jù)信息存儲(chǔ)的需求,目前,Google公司在全球擁有36個(gè)大規(guī)模數(shù)據(jù)中心,其可以為用戶提供115.2萬(wàn)兆字節(jié)的內(nèi)容供世界各地的用戶使用,通過(guò)GFS和BigTable數(shù)據(jù)管理軟件管理海量數(shù)據(jù)。
3.2.3 高速網(wǎng)絡(luò)帶寬。云計(jì)算是一種基于互聯(lián)網(wǎng)技術(shù)的計(jì)算服務(wù)模式,分布在世界各處的服務(wù)器群和超大規(guī)模的存儲(chǔ)器需要進(jìn)行訪問(wèn)交互和存儲(chǔ),其要求云計(jì)算數(shù)據(jù)中心的服務(wù)器之間必須使用高帶寬的網(wǎng)絡(luò)實(shí)現(xiàn)互聯(lián)互通,客戶端也需要擁有高速的網(wǎng)絡(luò)和頻寬,以便滿足用戶的實(shí)時(shí)性、高速型需求。
3.3 云計(jì)算軟件系統(tǒng)平臺(tái)架構(gòu)
云計(jì)算的硬件基礎(chǔ)是實(shí)現(xiàn)云計(jì)算服務(wù)的承載實(shí)體,為了更好的組織這些物理實(shí)體,必須設(shè)計(jì)相應(yīng)的系統(tǒng)軟件,組織這些物理實(shí)體,以便更好的發(fā)揮物理實(shí)體的作用。