蔣飄蓬 于德?!⊥跫t麗
摘要:該文對基于云計算的數(shù)據(jù)中心架構(gòu)進(jìn)行了研究和探索,依據(jù)云計算的三層架構(gòu)模型構(gòu)建了基于虛擬化的對應(yīng)架構(gòu)體系,并對信息管理中心原有應(yīng)用進(jìn)行了拆分重部署,在充分利用數(shù)據(jù)中心系統(tǒng)資源的基礎(chǔ)上,提升了應(yīng)用服務(wù)的數(shù)據(jù)安全性和系統(tǒng)穩(wěn)定性,并對院校私有云系統(tǒng)應(yīng)用和管理的相關(guān)問題進(jìn)行了探索和實驗。
關(guān)鍵詞:云計算;服務(wù)架構(gòu);虛擬化;高可用性;數(shù)據(jù)中心
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2017)22-0096-02
1概述
隨著高校信息化建設(shè)的高速發(fā)展,信息管理中心承載了越來越多的服務(wù)及應(yīng)用。按照傳統(tǒng)方式,各項應(yīng)用獨立分布于不同的服務(wù)器,形成一個個“信息孤島”,造成資源不能有效共享、效率低下、安全性差?;谔摂M化的數(shù)據(jù)中心云計算模式使資源得以充分共享,統(tǒng)一的管理平臺使得硬件資源調(diào)配、服務(wù)器開設(shè)等變得簡便易行,極大減輕了工作負(fù)擔(dān),提高了工作效率。筆者在數(shù)據(jù)中心虛擬化建設(shè)的過程中,研究規(guī)劃了高可用性數(shù)據(jù)中心架構(gòu),對原有應(yīng)用服務(wù)進(jìn)行拆解和重新部署,實現(xiàn)了數(shù)據(jù)中心的動態(tài)可伸縮性、高可用性和負(fù)載均衡等特性,提高了信息管理中心的業(yè)務(wù)水平和效率。
2架構(gòu)規(guī)劃
根據(jù)NIST(National Institute of Standards and Technology,美國國家標(biāo)準(zhǔn)與技術(shù)研究院)的權(quán)威定義,云計算的服務(wù)模式有SPI(即SaaS、PaaS和Iaas)三個大類或?qū)哟巍?/p>
1)SaaS:提供給用戶的服務(wù)是運行在云計算基礎(chǔ)設(shè)施上的應(yīng)用程序,用戶可以通過用戶端界面訪問。
2)PaaS:把用戶的應(yīng)用程序部署到供應(yīng)商的云計算基礎(chǔ)設(shè)施上。用戶不需要管理底層的云基礎(chǔ)設(shè)施,但可以控制部署的應(yīng)用程序和運行應(yīng)用程序的托管環(huán)境配置。
3)IaaS:提供給用戶的服務(wù)是對所有計算基礎(chǔ)設(shè)施的利用,包括理CPU、內(nèi)存、存儲、網(wǎng)絡(luò)和其他基本的計算資源。用戶能夠部署和運行任意軟件,包括操作系統(tǒng)和應(yīng)用程序,也包括有限制的網(wǎng)絡(luò)組件(例如路由器、防火墻、負(fù)載均衡器等)。
根據(jù)以上三層模型,將信息管理中心的所有軟硬件資源劃分為基礎(chǔ)設(shè)施層、系統(tǒng)平臺層、軟件服務(wù)層三個層次,并對每層進(jìn)行了資源整合和高可用性設(shè)計。每層不僅分別以優(yōu)化的方式為上一層級提供支撐,還可以單獨給用戶提供本層對應(yīng)的服務(wù)。具體架構(gòu)如圖1所示。
硬件基礎(chǔ)層:通過虛擬化平臺將數(shù)據(jù)中心的硬件資源(如服務(wù)器、網(wǎng)絡(luò)設(shè)備和存儲系統(tǒng)等)集中在一起,形成一個共享虛擬資源池,并通過虛擬化管理軟件實現(xiàn)統(tǒng)一組織管理。硬件基礎(chǔ)層作為平臺層和軟件層的支撐,為其提供底層設(shè)備資源,并通過性能監(jiān)控、多機(jī)熱備、虛擬機(jī)自動遷移、網(wǎng)絡(luò)虛擬化等手段,提供平臺的安全性、可靠性保障。硬件基礎(chǔ)層還能以虛擬機(jī)和虛擬硬件的方式直接為用戶提供硬件服務(wù)。
平臺層:在基礎(chǔ)層的支撐下為用戶提供各種軟硬件開發(fā)、部署平臺和中間件服務(wù),包括操作系統(tǒng)、數(shù)據(jù)庫服務(wù)、分布式文件系統(tǒng)等。平臺層直接建立在虛擬化硬件層的基礎(chǔ)上,具有一定的設(shè)備無關(guān)性,平臺層的集群設(shè)計也使軟件層的軟件可以在多個具體的服務(wù)器間自動遷移。平臺層還可通過專門的PaaS軟件,直接為用戶提供自動化部署、中間件支持等服務(wù)。
軟件層:提供直接供用戶使用的各種應(yīng)用和軟件。依據(jù)云計算的相關(guān)規(guī)則,軟件層將其各個功能組件分別部署在不同的平臺層功能集群上,以充分實現(xiàn)資源共享和負(fù)載均衡,并通過平臺的高可用性設(shè)計實現(xiàn)軟件的高效無故障長時運行和快速恢復(fù)。
3架構(gòu)實現(xiàn)
3.1硬件基礎(chǔ)層
具體來說,包括對服務(wù)器資源進(jìn)行清理和歸類、劃分功能區(qū)和資源池、重定義虛擬化硬件及數(shù)據(jù)安全性設(shè)計等。同型號及配置性能相近,且滿足虛擬化需求的服務(wù)器可組成虛擬化高可用性集群,同一集群中,所有服務(wù)器共享存儲和網(wǎng)絡(luò)資源,虛擬機(jī)可以實現(xiàn)在服務(wù)器間動態(tài)遷移功能。
根據(jù)各個集群的性能和特殊配置,劃分不同的功能區(qū),針對性的運行某一類平臺或服務(wù)。依據(jù)數(shù)據(jù)安全和應(yīng)用優(yōu)先級方面的需求,將資源池劃分為不同級別。高級別的資源池使用少量高性能服務(wù)器及存儲,具有獨立備份設(shè)備,單獨分配固定的網(wǎng)絡(luò)帶寬;通用級別的資源池包括更多的物理主機(jī),共享多臺存儲,相互之間形成冗余備份,共享網(wǎng)絡(luò)資源,只在應(yīng)用層根據(jù)應(yīng)用需要劃分不同帶寬;特殊級別的服務(wù)器集群包括一些非通用型服務(wù)器及附帶特殊設(shè)備(如加密卡、視頻處理卡等)的服務(wù)器,這些服務(wù)器只能運行特定的服務(wù),一般不進(jìn)行虛擬化。
為了滿足虛擬化和高可用性的需求,還需要對虛擬網(wǎng)絡(luò)進(jìn)行設(shè)計。通過虛擬化軟件和虛擬化技術(shù),實現(xiàn)“軟件定義網(wǎng)絡(luò)”的功能,使得資源可以充分共享,并滿足上層平臺對“硬件無關(guān)性”的要求。硬件基礎(chǔ)層還通過集中式存儲、多臺存儲聯(lián)機(jī)熱備,定時磁帶庫備份等手段保證數(shù)據(jù)安全性。
3.2平臺層
在平臺層,通過虛擬機(jī)創(chuàng)建了多個不同操作系統(tǒng)的服務(wù)器,并根據(jù)功能需要,配置為SQL、Oracle、My SQL等數(shù)據(jù)庫平臺以及IIS、Tomcat、PHP平臺、Hadoop大數(shù)據(jù)平臺等。為了實現(xiàn)平臺的高可用性,各個功能平臺按各自的系統(tǒng)要求組成高可用性集群,每個集群至少包含兩臺服務(wù)器(虛擬機(jī)),各集群的服務(wù)器配置基本相同。各集群按照自己的方式組成高可用性集群。以java應(yīng)用服務(wù)為例,使用Apache和Tomcat組成集群,多個Tomcat服務(wù)器負(fù)責(zé)業(yè)務(wù)請求,Apache實現(xiàn)負(fù)載均衡和靜態(tài)解析。當(dāng)Apache接收到用戶端請求的時候,會通過JK插件來過濾URL,根據(jù)預(yù)先設(shè)置好的URL信息,決定由Apache還是Tomcat服務(wù)器處理。同時,mod-jk插件還會根據(jù)相應(yīng)的設(shè)置將請求分配到不同的Tomcat服務(wù)器上,避免一臺服務(wù)器負(fù)載過重,而且當(dāng)一臺服務(wù)器故障時,相應(yīng)的連接會自動漂移到另一個Tomcat中,保障用戶的不間斷訪問。
平臺層還可以提供部分平臺資源供用戶直接使用,這部分資源使用Paas平臺軟件Cloud Foundry進(jìn)行管理。Cloud Found-ry平臺通過Dea接口管理上傳的應(yīng)用,并通過用戶管理組件對用戶申請資源,發(fā)布應(yīng)用等進(jìn)行管理。
3.3軟件層
軟件層在平臺層和硬件虛擬化支撐的基礎(chǔ)上,對原有應(yīng)用系統(tǒng)進(jìn)行功能拆解,將不同的功能模塊部署在不同的功能平臺上,對一些相同的功能還可以直接作為中間件或以Web服務(wù)的形式供其他軟件調(diào)用,在提高系統(tǒng)穩(wěn)定性的同時也保障了資源的充分利用。軟件層的軟件部署和傳統(tǒng)方式最大的不同就是其高可用性和平臺無關(guān)性,通過硬件虛擬化、網(wǎng)絡(luò)虛擬化、高可用性集群、負(fù)載均衡等技術(shù)的支持,軟件層可以實現(xiàn)服務(wù)的長時間穩(wěn)定運行。
以某教學(xué)應(yīng)用系統(tǒng)為例,原系統(tǒng)使用mySQL數(shù)據(jù)庫,Web應(yīng)用服務(wù)通過Tomcat實現(xiàn),按傳統(tǒng)方式部署在一臺服務(wù)器上,數(shù)據(jù)安全性不能得以保證?,F(xiàn)將其功能組件分解,數(shù)據(jù)庫部署在mySQL集群,Web應(yīng)用部署在Apache和Tomcat集群,Win-dows Web應(yīng)用部署在IIS集群中,各功能組件充分利用功能集群的高可用性設(shè)計,保障了系統(tǒng)的安全穩(wěn)定,也通過負(fù)載均衡設(shè)計,實現(xiàn)了性能優(yōu)化。對用戶而言訪問方式仍跟以前一樣,但由于部署方式不同,系統(tǒng)穩(wěn)定性和安全性大大增強,系統(tǒng)無故障時間由以前的平均三個月提升到一年。由于數(shù)據(jù)庫集群、虛擬機(jī)備份、存儲備份等機(jī)制提供了三層保障,數(shù)據(jù)安全性方面遠(yuǎn)遠(yuǎn)高于以前。
4總結(jié)
通過對云平臺理念的實踐,發(fā)現(xiàn)基于虛擬化技術(shù)的數(shù)據(jù)中心三層架構(gòu)確實能顯著提高信息管理中心的工作效率和資源利用率,并且大大增強了系統(tǒng)的穩(wěn)定性和數(shù)據(jù)安全性。受限于應(yīng)用規(guī)模和資金投入,整體架構(gòu)功能還有很多需要實驗的地方,例如一些安全性問題、用戶管理、租約等問題仍需進(jìn)一步研究試驗。endprint