云計算技術(shù)及其應用
云計算由Google提出,隨后在互聯(lián)網(wǎng)界風(fēng)起“云”涌,隨之而來(lái)的云計算服務(wù)和技術(shù)平臺成功案例層出不窮,如Google的GFS、 MapReduce、Bigtable、Chubby和App Engine,亞馬遜的Dynamo、EC2、S3、SQS、SimpleDB和CloudFront,微軟的Azure、SQL、“.Net”和 Live服務(wù),開(kāi)源云計算平臺的HDFS、HBase和Eucalyptus,VMware的虛擬化平臺等。
本文引用地址:http://dyxdggzs.com/article/201609/304025.htm1 云計算的核心技術(shù)
云計算主要基于資源虛擬和分布式并行架構兩大核心技術(shù),同時(shí)互聯(lián)網(wǎng)上有大量的開(kāi)源軟件為用戶(hù)提供支撐,如Xen、KVM、Lighttpd、 Memcached、Nginx、Hadoop、Eucalytus等。云計算技術(shù)有效地節約了云服務(wù)商的硬件投入、軟件開(kāi)發(fā)成本和維護成本。
虛擬化技術(shù)最早由VMware公司引入并在X86 CPU上實(shí)現。虛擬化平臺將服務(wù)器虛擬為多個(gè)性能可配的虛擬機(VM),對整個(gè)集群系統中所有VM進(jìn)行監控和管理,并根據實(shí)際資源使用情況對資源池靈活分配和調度。
分布式并行架構是云計算的另一個(gè)核心技術(shù),用于將大量的機器整合為一臺超級計算機,提供海量的數據存儲和處理服務(wù)。整合后的超級計算機通過(guò)分布式文件系統、分布式數據庫和MapReduce技術(shù),提供海量文件存儲、海量結構化數據存儲和統一的海量數據處理編程方法和運行環(huán)境[1-3]。
2 虛擬化技術(shù)
虛擬化技術(shù)主要分為兩個(gè)層面:物理資源池化和資源池管理。其中物理資源池化是把物理設備由大化小,將一個(gè)物理設備虛擬為多個(gè)性能可配的最小資源單位;資源池管理是對集群中虛擬化后的最小資源單位進(jìn)行管理,根據資源的使用情況和用戶(hù)對資源的申請情況,按照一定的策略對資源進(jìn)行靈活分配和調度,實(shí)現按需分配資源[4-7]。
2.1 物理資源的池化
云計算平臺如圖1所示。物理硬件設備的虛擬化對象包括服務(wù)器、存儲、網(wǎng)絡(luò )、安全等多個(gè)方面,不同的虛擬化技術(shù)從不同角度解決系統的各種問(wèn)題。

(1)服務(wù)器虛擬化
服務(wù)器虛擬化對服務(wù)器進(jìn)行資源虛擬和池化,將一臺服務(wù)器虛擬為多個(gè)同構的虛擬服務(wù)器,同時(shí)對集群中的虛擬服務(wù)器資源池進(jìn)行管理。
(2)存儲虛擬化
存儲虛擬化主要是對傳統的存儲區域網(wǎng)絡(luò )(SAN)、網(wǎng)絡(luò )附加存儲(NAS)設備進(jìn)行異構,將存儲資源按類(lèi)型統一集中為一個(gè)大容量的存儲資源,并將統一的存儲資源通過(guò)分卷、分目錄的權限和資源管理方法進(jìn)行池化,然后將虛擬存儲資源分配給各個(gè)應用使用,或者是直接分配給最終用戶(hù)使用。
(3)網(wǎng)絡(luò )虛擬化
網(wǎng)絡(luò )虛擬化將一個(gè)物理網(wǎng)絡(luò )節點(diǎn)虛擬成多個(gè)虛擬的網(wǎng)絡(luò )設備(交換機、負載均衡器等),并進(jìn)行資源管理,配合虛擬機和虛擬存儲空間為應用提供云服務(wù)。
2.2 資源池的管理和使用
資源池由云管理平臺實(shí)現統一的管理、調度和監控,涉及云平臺的合理使用和維護管理。云管理平臺共分為4個(gè)管理層面,分別為:設備的管理、虛擬資源的管理、服務(wù)的管理和租戶(hù)管理。
(1)設備管理
設備管理為云計算平臺的硬件設備提供管理和告警功能,主要包括系統管理員在日常的維護工作中查詢(xún)各物理設備性能情況,并對如應用服務(wù)器的CPU使用率、內存使用率、硬盤(pán)使用率、網(wǎng)絡(luò )接口使用率、存儲設備的空間使用率、IO情況等關(guān)鍵指標進(jìn)行監控。用戶(hù)可以根據應用物理設備的實(shí)際配置,設置相應的監控閾值,系統會(huì )自動(dòng)啟動(dòng)對相應指標的監控并報警。
(2)虛擬資源管理
虛擬資源管理為各種應用提供虛擬資源的統一管理、資源分配和靈活調度,同時(shí)還包括系統管理員在日常的維護工作中查詢(xún)各個(gè)最小虛擬資源的性能情況,并對應用虛擬機的CPU使用率、內存使用率、硬盤(pán)使用率、網(wǎng)絡(luò )接口使用率,虛擬存儲(如亞馬遜的EBS)的空間使用率、IO情況等關(guān)鍵指標進(jìn)行監控。用戶(hù)可以根據虛擬資源的實(shí)際配置,設置相應的監控閾值,系統會(huì )自動(dòng)啟動(dòng)對相應指標的監控并報警。
(3)服務(wù)管理
服務(wù)管理包括服務(wù)模板、服務(wù)實(shí)例、服務(wù)目錄等管理。服務(wù)管理在虛擬資源的基礎上,快速向租戶(hù)提供用戶(hù)指定的操作系統、應用軟件等軟件資源。
(4)租戶(hù)管理
租戶(hù)管理對每一個(gè)租戶(hù)對應的資源群進(jìn)行管理,內容包括資源的種類(lèi)、數量、分布情況等,同時(shí)對租戶(hù)生命周期進(jìn)行管理,包括租戶(hù)的申請、審核、正常、暫停、注銷(xiāo)等。
2.3 集群的故障定位與維護
Google的集群維護方式給我們留下了深刻的印象,維護人員推著(zhù)小推車(chē)對損壞的機器進(jìn)行更換,故障定位通過(guò)定制PC的故障燈進(jìn)行判斷(在通用的因特網(wǎng)數據中心(IDC)應用中,計算資源通常使用通用PC機)。目前所有的云平臺對物理機和虛擬機的監控、告警,都是按照機器的IP地址作為機器的編號進(jìn)行管理。對于承載著(zhù)虛擬機的物理機而言,其Host OS模塊的IP地址對應和代表著(zhù)物理機器在集群中的唯一標志。IP地址的分配一般采用兩種方式:采用動(dòng)態(tài)主機配置協(xié)議(DHCP)方式自動(dòng)獲取;通過(guò)手工指定方式確定。由于集群中機器很多,手工指定工作量非常巨大,因此通常采用DHCP的方式對IP地址進(jìn)行分配。
但是維護人員在云管理平臺上發(fā)現物理設備出了故障,維護人員無(wú)法通過(guò)IP地址對應到故障機器的具體物理位置,通用的PC機又沒(méi)有故障燈等輔助定位手段。定位故障機器的物理位置并更換或維護它成為一個(gè)復雜和繁瑣的過(guò)程。
在的虛擬化集群中,可以采用簡(jiǎn)單而有效的方法解決此問(wèn)題。對于每一臺物理機器,配置一個(gè)USB接口的KEY,KEY中保存了物理機器的位置信息,同時(shí) USB KEY與物理位置直接綁定(如綁在機架上)。機器在啟動(dòng)時(shí),會(huì )到USB KEY中讀取物理位置信息,根據讀取的物理位置信息,依據固定的算法和物理信息算出機器的IP地址,并在管理平臺中體現。這樣,每個(gè)物理機器的IP地址就與物理位置綁定,在物理機器故障時(shí),維護人員在云管理平臺可以準確獲取故障機器的IP地址和物理位置。
2.4 資源池的分組與異構
對于服務(wù)器的虛擬化,由于架構不同,SUN、IBM等廠(chǎng)家的小型機虛擬化都采用相互獨立的架構,與基于X86架構的虛擬化系統(如XEN、KVM等)無(wú)法兼容,因此造成了資源浪費。
評論