王輝華 李舒婷 梁浩 周娟 潘文靜
(福建福清核電有限公司 福建福清 350300)
進入21 世紀,信息技術在飛速地發(fā)展,高新技術層出不窮,云計算也在其中。在企業(yè)的信息系統(tǒng)中,云計算提供按需供應、彈性擴展等能力支持,另外還承擔快速發(fā)布、協(xié)同管理、運維繼承和故障自愈等方面內(nèi)容。在面對海量數(shù)據(jù)時,云計算的優(yōu)勢盡顯,因為其強大的計算能力和資源分配特性,使得面對海量數(shù)據(jù)都能夠輕松搞定,都能夠?qū)Y源數(shù)據(jù)進行分類和匯總集成,并對本身資源進行合理分配和調(diào)度。
云計算是一種分布式計算方式,是傳統(tǒng)計算方式加上云形成的一種新型的現(xiàn)代資源共享技術。同時,云計算也是一種定價方式,是依據(jù)用戶使用量的多少定量付費,在短時間內(nèi)根據(jù)需要提供相應的服務,實現(xiàn)高效的應用和資源共享。
1.1.1 硬件成本低
云計算主要使用大量廉價服務器作為硬件設備,在很大程度上有效降低了硬件成本,在云計算環(huán)境下,高效應用與壓縮成本不再是矛盾。
1.1.2 高可用性
所謂的高可用性,是在云服務器中使用虛擬化技術把實體物理機資源虛擬化或者使用遷移技術把單一固化服務內(nèi)容發(fā)展為計算服務和重復利用狀態(tài),實現(xiàn)數(shù)據(jù)移植的高可用性,為數(shù)據(jù)的應用提供了更為廣闊的發(fā)展空間。
1.1.3 高可擴展性
為了適應負載變化,服務規(guī)模將在時間上快速靈活地擴展。同時滿足不同用戶的不同需求,避免資源浪費和服務質(zhì)量下降[1]。
1.1.4 可測量性
根據(jù)不同的服務類型,服務收費標準也不同。云計算將監(jiān)控服務資源,并隨時向用戶和服務提供商發(fā)送監(jiān)控報告,使其更加透明。
1.1.5 高可靠性
使用冗余確保數(shù)據(jù)的可靠性。當云計算檢測到故障節(jié)點時,會充分利用冗余數(shù)據(jù)保證正常運行,從而提高服務質(zhì)量,防止出現(xiàn)傳統(tǒng)計算機因為故障導致數(shù)據(jù)丟失的情況。
1.1.6 面向服務云計算面向用戶提供透明服務內(nèi)容機制。在基于SOA架構(gòu)中,松耦合性和統(tǒng)一接口組件的方式。
1.1.7 按需服務
云計算提供的服務以用戶需求為唯一依據(jù),可以及時釋放未使用的資源,高效率服務于用戶的需要,為用戶提供內(nèi)容服務機制。
1.1.8 規(guī)模經(jīng)濟
云計算通?;诖笠?guī)模資源,并利用大規(guī)模集成的效果來降低用戶的使用成本,使得用戶用更為低廉的成本享受更加優(yōu)質(zhì)的服務。
1.2.1 基礎設施即服務
作為最接近物理硬件資源的底層服務,云計算架構(gòu)側(cè)重于使用虛擬化技術消除底層硬件異構(gòu)性,并將物理資源虛擬化為用戶可用的公共資源。這些資源包括存儲、計算、網(wǎng)絡、OS(操作系統(tǒng))等資源內(nèi)容。同時,基礎設施即服務還增加了按使用量計費的功能。另外還能實現(xiàn)客制化細則即客戶根據(jù)自己的真實需求獲得相對應的系統(tǒng)資源。然而,用戶無法控制基礎設施即服務云平臺的底層設備。對于龐大的底層集群資源,如何高效地調(diào)度、分配和使用以及如何做好負載均衡是主要的研究目標。目前,各大IT公司和云計算研究機構(gòu)正在討論適當?shù)馁Y源調(diào)度和分配的研究課題,以期讓云計算為企業(yè)發(fā)展帶來騰飛的機會。
1.2.2 平臺即服務
平臺即服務是對資源的更深層次的抽象。該服務模型隱藏了基礎設施作為云用戶服務的實現(xiàn)細節(jié)。整合底層硬件資源后,以平臺即服務的形式提供給云用戶,包括服務器、程序運行環(huán)境和數(shù)據(jù)庫服務器。云用戶只需要按照相關規(guī)則部署和開發(fā)應用程序。在當前時期,國內(nèi)和國外最流行的經(jīng)典平臺有很多,包括基于PAAS(平臺即服務)的谷歌應用引擎平臺(GAE)、微軟的Windows Azure 平臺和阿里巴巴的阿里云引擎ACE(阿里云引擎)。
1.2.3 軟件即服務
軟件即服務是采用封裝工具,完成對定制服務封裝。其主要的目標依托現(xiàn)有云計算中的特定功能應用軟件完成封裝工作,并通過具有高度針對性的客戶端界面提供給云用戶。云用戶不需要購買、安裝,也不需要對購買產(chǎn)品進行后期維護。目前,該軟件即服務云平臺擁有著名的Salesforce Com 公司的在線客戶關系管理CRM 系統(tǒng);國內(nèi)阿里云的在線軟件服務,如營銷推廣和數(shù)據(jù)分析[2]。經(jīng)過長時間的發(fā)展,云計算發(fā)展成為新一代計算模式,成為數(shù)據(jù)和服務的共享結(jié)合體。
云數(shù)據(jù)中心全稱為云計算數(shù)據(jù)中心,是一種基于云計算的體系架構(gòu),其在網(wǎng)絡、存儲和計算層面具有很強的松耦合性,模塊化集成度很高,也具有很高的虛擬化成分,而且在云數(shù)據(jù)中心中自動化程度很高。在云計算環(huán)境中,數(shù)據(jù)中心是由存儲資源、互聯(lián)網(wǎng)資源和計算資源組成的虛擬技術的非靜態(tài)資源庫。云計算的數(shù)據(jù)中心不僅僅是傳統(tǒng)意義上的存儲中心,是依托于傳統(tǒng)存儲中心對存儲數(shù)據(jù)進行數(shù)據(jù)處理。基于它的規(guī)模大、資源多和分配繁雜的現(xiàn)實情況,實現(xiàn)高分配、高速率和高安全的數(shù)據(jù)中心管理體系。那究竟怎么分配資源、如何提高資源利用效率并且大大降低能源損耗,已成為我國當前面臨的重要問題。每個數(shù)據(jù)中心都非常廣泛,可以根據(jù)業(yè)務活動進行有效的調(diào)整,進一步促進了業(yè)務活動高效靈活地運行。
云數(shù)據(jù)中心的特點之一就是高度虛擬化,不僅僅是系統(tǒng)虛擬化,還涵蓋服務器虛擬化、網(wǎng)絡虛擬化、應用虛擬化以及存儲虛擬化,從而滿足和適應所有客戶的個性化需求。另外一個特征就是自動化管理,同樣也包括系統(tǒng)自動化管理、服務器自動化管理、存儲自動化管理、網(wǎng)絡自動化管理、應用自動化管理以及相關業(yè)務的自動化管理。最后一個特點就是綠色環(huán)保和節(jié)能,根據(jù)有關資料顯示,云計算數(shù)據(jù)中心的指標是要達到綠色節(jié)能標準的,并且其PUR值不能高于1.5。
云計算數(shù)據(jù)中心與傳統(tǒng)的IDC的不同之處主要包括以下幾個方面:一是資源集約化程度和規(guī)模上的區(qū)別;二是平臺運行效率上的不同;三是服務類型上的不同;四是資源分配上的區(qū)別;五是在收費模式上的不同;六是對光學器件上的要求。資源集約化程度和規(guī)模上的區(qū)別主要表現(xiàn)在云計算的資源節(jié)約化程度是采用資源動態(tài)分配方式來實現(xiàn),而傳統(tǒng)的IDC 服務是簡單集約,兩者在集約速率和規(guī)模上都存在很大差別。另外,云計算數(shù)據(jù)中心能夠?qū)崿F(xiàn)對資源的短期快速再分配。云計算數(shù)據(jù)平臺具有更加靈活的資源應用技術,更加注重內(nèi)部服務上的創(chuàng)新[3]。云計算數(shù)據(jù)平臺和傳統(tǒng)IDC 在資源分配上的區(qū)別是更新技術上的差別,云計算平臺是通過快速的技術更新實現(xiàn)資源應用的分配,從而降低資源閑置的狀況。傳統(tǒng)數(shù)據(jù)中心在收費模式上采用月度收費或者年度收費方式,對數(shù)據(jù)進行粗放型管控,從而造成很多資源的浪費。云計算數(shù)據(jù)中心的收費方式更加精細化。與傳統(tǒng)數(shù)據(jù)中心相比,云計算數(shù)據(jù)中心的器件密度需求更高,對元器件的集成度也要求越來越高。從這一方面來說,云計算的發(fā)展給器件帶來了全新的挑戰(zhàn),對高密度的制造企業(yè)而言,這也意味著新的發(fā)展機遇。
虛擬化技術可以把實體物理資源虛擬化為可調(diào)配的虛擬資源,并完成對虛擬資源進行合理分配,可以將多個虛擬資源進行有效的劃分。云計算的關鍵步驟是從硬件系統(tǒng)基礎上虛擬出若干個軟件程序,并且在系統(tǒng)中通過軟件調(diào)度器進行管理和調(diào)配,從而實現(xiàn)調(diào)度器通過對軟件程序的控制顯示硬件配置的管理,這是云計算的最重要的第一步,也是最基礎的一步。總體而言,虛擬機的運行機制都是獨立存在的。但是在實際運行過程中,這些虛擬機都是依托于物理機中實體內(nèi)存資源。物理機被稱為宿主機,虛擬機被稱為客戶機。實現(xiàn)虛擬化的整個過程需要應用Hypervisor。Hypervisor 的中文內(nèi)容為“超級監(jiān)督者”,也被稱為VMM,英文全稱是Virtual Machine Monitor,中文含義是虛擬機監(jiān)視器。Hypervisor 分為兩類內(nèi)容,Hypervisor第一個運作方式是直接在物理機中運行,虛擬機是運行在虛擬機監(jiān)視器上運行;第二個就是操作系統(tǒng)像Windows 和Linux 等運行在實體物理機中,之后Hypervisor直接運行在操作系統(tǒng)當中,在此基礎上直接生成虛擬機,并對虛擬機進行管控。
KVM(Kernel-based Virtual Machine)是目前最流行的虛擬化內(nèi)容,KVM 的內(nèi)涵是基于Linux 內(nèi)核的虛擬機[4]。KVM屬于Hypervisor軟件,所提供的虛擬化更加深入和底層,但是存在一個缺點,就是非專業(yè)人士不太習慣使用這個虛擬化工具,對用戶交互界面不友好,不方便使用。
另外,為便于管理和維護,虛擬機上層設計了虛擬機管理層,虛擬化機制中又有一個重要的內(nèi)容引入,就是OpenStack 云計算平臺,類似于一個商店,主要負責對各種系統(tǒng)資源進行調(diào)配,系統(tǒng)資源包括存儲資源、網(wǎng)絡資源等,但云計算平臺的虛擬化能力不是自身所具備的,其虛擬化能力出自KVM,除了KVM 還包括Xen等Hypervisor。
分布式存儲技術可以維護數(shù)據(jù)信息的完整性,并且還能維護數(shù)據(jù)信息的可靠性。這種存儲方式的應用可以有效地提高系統(tǒng)的質(zhì)量和效果,避免服務器過載。主要涵蓋兩個方面的內(nèi)容:第一,云計算環(huán)境下的數(shù)據(jù)容錯技術;第二,云計算環(huán)境下的節(jié)能技術。
(1)對于云計算環(huán)境下的數(shù)據(jù)容錯技術的解讀分為兩類,技術一是復制型容錯技術,技術二是刪除碼型容錯技術。復制型容錯技術相比較而言具有簡單方便性,但是需要建立一定的副本用于維持現(xiàn)有容錯性能。從另一方面而言復制型容錯技術有占據(jù)大容量資源的缺點[5]。復制型容錯技術能夠?qū)嵭心K化管理,即將個體數(shù)據(jù)分割存儲并在不同節(jié)點中存儲多個模塊,在缺少模塊的情況下也能夠?qū)ζ溆喙?jié)點數(shù)據(jù)進行有效的利用,所以該技術能夠為用戶提供最大強度的需求內(nèi)容,同時防止數(shù)據(jù)丟失和失效,能夠帶來很大的技術優(yōu)勢。刪除碼型容錯技術的特點是不需要占有大容量資源,但是需要花費很大的時間去進行重復編解碼用于數(shù)據(jù)傳輸和存儲,所以對設備的性能有很大的需求。刪除碼容錯技術在存儲數(shù)據(jù)中對數(shù)據(jù)進行重新編碼,并對新生成的編碼重新排列和標識,這樣就會在存儲占用量上大大縮減其資源。另外,刪除碼容錯技術還可以用在數(shù)據(jù)復制和數(shù)據(jù)存儲的情況下,完成對數(shù)據(jù)量的最小化存儲,從而大大地提升數(shù)據(jù)運轉(zhuǎn)性能。
(2)云計算環(huán)境下的節(jié)能技術[6]。根據(jù)現(xiàn)有資料查閱,云計算環(huán)境中的數(shù)據(jù)存儲系統(tǒng)占據(jù)的能源消耗占比非常大,具體能超過全部能效的50%。節(jié)能技術在當今時代非常重要的研究方向,這樣不僅能有效地降低成本,從而實現(xiàn)利益的最大化,對數(shù)據(jù)需求量大的單位而言,會大大地壓縮生產(chǎn)成本,讓企業(yè)發(fā)展得更為順利。
云計算通過處理數(shù)據(jù)集,并對處理過后的數(shù)據(jù)集進行詳細分析,從而篩選出具有價值的數(shù)據(jù)信息,挖掘所必需的數(shù)據(jù)信息。此部分是云計算的主要內(nèi)容,也就是數(shù)據(jù)管理技術的核心內(nèi)容,保證數(shù)據(jù)信息安全和可讀性。數(shù)據(jù)庫內(nèi)容是存放數(shù)據(jù)信息的主要存儲地點。云數(shù)據(jù)管理技術是采用分布式技術,對大數(shù)據(jù)量進行分布式管理,從而能夠大大提升容錯能力,并且效率更加高效和便捷,為高效率的數(shù)據(jù)分析提供了應用渠道。
MVC模式是一種軟件的設計能力,也是一種處理數(shù)據(jù)的模式。隨著對客戶對資源的需求進行動態(tài)回應,發(fā)送不同的視圖到客戶端。應用程序被分離為三層,當系統(tǒng)需要做出改變時可能只需要修改其中一層就能實現(xiàn),大大簡化了維護工作??刂茖舆€可以實現(xiàn)對用戶請求的控制,一定程度上保證系統(tǒng)的安全性,簡化編程工作[7]。由于不同的層分別完成不同的工作,同一層的不同類具有某些相同的功能,有利于工程化地管理這些代碼,從而提高工作效率,防止因代碼管理造成工程的延誤。
資源調(diào)度的概念是在具體的資源配置中,依據(jù)特定的資源配置規(guī)則和方法,在資源需求者之間進行資源調(diào)整的過程。在資源需求者中提交多個虛擬解決方案,每個任務都在系統(tǒng)中對應著相應的進程。
首先,資源分配分為動態(tài)資源分配和靜態(tài)資源分配,所謂的靜態(tài)分配是指所有進程和程序在啟動之前就已經(jīng)獲取了應該配給的資源。另外一種分配方式是動態(tài)分配,所謂動態(tài)分配就是當進行和程序啟動時候,系統(tǒng)依據(jù)進程和程序的資源申請資源的具體需求量分配資源。
其次,根據(jù)任務處理形式,可分為在線處理和批處理。在線調(diào)度是指系統(tǒng)在收到任務請求時,將資源信息分配作為一項重要任務。批量調(diào)度是在事件觸發(fā)時集中處理以前獲得的任務。
云資源提供商利用虛擬化技術將數(shù)據(jù)中心的物理資源虛擬化為虛擬單元,為云資源用戶提供服務,保證資源的安全。當多個云資源請求用戶同時申請服務請求時,形成資源競爭狀態(tài)。在資源調(diào)度過程中,不同類型的用戶對云中的各類資源有不同的需求,云存儲中各類虛擬單元的資源空間也不同[8]。為了實現(xiàn)每個資源請求者都能在自己的約束下獲得所需的資源,同時,為了最合理有效地利用云資源,設計更好的資源調(diào)度機制至關重要。
隨著博弈論的提出和對資源調(diào)度的有效探索,博弈論在經(jīng)濟學和計算機科學領域得到了廣泛的應用。博弈論是為相互制約的多個競爭對手提供優(yōu)化策略,最終達到局部優(yōu)化和全局優(yōu)化的效果。它完全適用于云計算中的資源調(diào)用問題,博弈論的使用不僅能夠?qū)崿F(xiàn)全局優(yōu)化的效果,而且會使個體發(fā)揮更大的效用。
隨著計算機技術與網(wǎng)絡技術的不斷發(fā)展與互聯(lián)網(wǎng)用戶人數(shù)的不斷增加,整個網(wǎng)絡中流通的數(shù)據(jù)總量正在飛速地增長,在龐大的數(shù)據(jù)總量的背景之下,為信息消費者和生產(chǎn)者都帶來了新的挑戰(zhàn),信息消費者從互聯(lián)網(wǎng)海量的信息中心挑選出自己感興趣的信息將變得更加困難;信息生產(chǎn)者將自身的所生產(chǎn)的產(chǎn)品通過互聯(lián)網(wǎng)準確地推送到目標用戶面前的過程也不再如之前一般,這個過程將變得十分困難。而云計算則是解決該問題的有效的手段之一。同時,云計算已經(jīng)在工業(yè)界進行大規(guī)模應用,例如音樂推薦、商品推薦,因此在大數(shù)據(jù)云計算大環(huán)境下,我們需要強化對資源調(diào)度關鍵技術方面的研究,確保數(shù)據(jù)信息的安全性、在數(shù)據(jù)處理過程中的穩(wěn)定性等內(nèi)容,從而強化資源調(diào)度的集成化和平臺化。依據(jù)現(xiàn)有業(yè)務調(diào)整和需求內(nèi)涵,在服務器端滿足在網(wǎng)絡、硬盤和CPU等方面的資源配置,支撐多種資源的狀態(tài)轉(zhuǎn)變,按需調(diào)配各個業(yè)務調(diào)配。