陸波,劉瑞林
(中國鐵路武漢局集團有限公司信息技術所,湖北武漢 430071)
鐵路運輸企業(yè)信息化發(fā)展日新月異,運輸組織、客票發(fā)售等業(yè)務完全依賴信息系統(tǒng)。運輸企業(yè)的服務性質(zhì)決定其對信息系統(tǒng)的穩(wěn)定運行和數(shù)據(jù)備份具有較高要求。保障數(shù)據(jù)中心的高可用成為信息系統(tǒng)運維的首要任務,同時災難恢復也被高度重視。虛擬化技術在企業(yè)已廣泛使用多年,通過服務器虛擬化和存儲虛擬化實施,極大地改善了企業(yè)信息系統(tǒng)基礎設施條件,使容災系統(tǒng)建設成為可能。在此,結合中國鐵路武漢局集團有限公司(簡稱武漢局集團公司)信息系統(tǒng)實際情況,研究探討鐵路運輸企業(yè)在充分保護已有信息系統(tǒng)投資前提下,漸進式地應用虛擬化技術整合新舊資源,完成資源池化改造,消除單點故障,建立容災備份系統(tǒng)的解決方案。
網(wǎng)絡設備、應用服務器、數(shù)據(jù)庫服務器、存儲設備都會產(chǎn)生單點故障。以高昂的費用購買高冗余的高端設備當然可行,但運輸企業(yè)信息系統(tǒng)建設經(jīng)歷了10多年,已積累大量信息設備,充分利舊和保護投資也是需要考慮的現(xiàn)實問題。
企業(yè)信息網(wǎng)絡作為信息系統(tǒng)的關鍵基礎設施,故障往往不可容忍,任意1臺交換機故障都不應對核心生產(chǎn)業(yè)務造成影響,實際上網(wǎng)絡堆疊技術早已被廣泛應用。
網(wǎng)絡堆疊技術是一種網(wǎng)絡虛擬化技術(見圖1),將多臺網(wǎng)絡設備組成1臺虛擬網(wǎng)絡交換機,在接入設備雙上連時分別接入不同物理交換機,單臺物理交換機故障不影響網(wǎng)絡連接,實現(xiàn)了網(wǎng)絡設備的高可靠。主流廠家的交換機產(chǎn)品都能很好地支持堆疊技術,其優(yōu)勢在于簡化了網(wǎng)絡管理,彈性擴展了交換機的端口數(shù)量,解決了網(wǎng)絡設備高可用,已成為數(shù)據(jù)中心的網(wǎng)絡設備必選項。目前常見的有華為技術有限公司的集群交換機系統(tǒng)(CSS)技術、杭州華三通信技術有限公司的智能彈性架構(IRF)技術、思科公司的虛擬交換系統(tǒng)(VSS)技術等網(wǎng)絡堆疊技術[1]。
圖1 網(wǎng)絡堆疊技術示意圖
由于堆疊技術的局限性,也有網(wǎng)絡廠家提出,數(shù)據(jù)中心還可采用網(wǎng)絡架構中“去”堆疊等其他實現(xiàn)方式解決網(wǎng)絡單點故障問題。思科公司提出的虛擬鏈路聚合(VPC)技術就很強大,該技術是基于數(shù)據(jù)平臺的虛擬化,更加靈活和安全。
為滿足企業(yè)信息系統(tǒng)對基礎設施的需求,給運維人員提供高效運維手段,并增強基礎設施的安全和可靠性,利用成熟的虛擬化手段建立資源池是最佳選擇。
VMware vSphere是業(yè)界領先且可靠的虛擬化平臺。用戶能夠從容地使用虛擬化技術縱向和橫向擴展應用,重新定義高可用性和簡化虛擬數(shù)據(jù)中心,最終實現(xiàn)高度可用、恢復能力強的按需基礎架構,這是云平臺環(huán)境的理想基礎[2]。企業(yè)采用VMware vSphere虛擬化架構搭建基礎平臺,初期利用既有20臺服務器建立虛擬化群集。為滿足虛擬化群集設備要求,必須對服務器加配光纖通道(HBA)卡為服務器和存儲設備間提供輸入/輸出處理,新增2臺80口的光纖交換機作為存儲區(qū)域網(wǎng)絡(SAN)的存儲交換機。資源分配上基本按1臺物理機虛擬4臺虛機的原則進行,另外預留5臺物理機作為虛擬機遷移、備份、硬件維護等使用,建成1個少量資金投入的計算虛擬化池,僅占用4個標準機柜,對企業(yè)提供60臺虛擬服務器,解決了幾十個應用系統(tǒng)的資源需求,優(yōu)勢非常明顯。
服務器虛擬化給信息系統(tǒng)運維帶來前所未有的便利。單臺物理機故障不再讓運維工程師焦躁,秒級就能完成虛擬機遷移,大幅減少了宕機事件。新系統(tǒng)建設任務也不再是體力活,項目負責人只需在申請的虛擬機上安裝系統(tǒng),無須完成設備上架、磁盤初始化、驅(qū)動程序安裝等工作,大大縮短了實施時間。系統(tǒng)成功安裝后,還可保存成模板共享使用。若在用系統(tǒng)出現(xiàn)性能瓶頸,簡單的操作就能完成資源擴容和服務器復制。
從企業(yè)角度看,服務器虛擬化的實施大幅降低了信息系統(tǒng)成本。物理服務器不再需要按年限報廢,極端情況可以用到徹底無法修復。新建項目也不用單獨考慮硬件設備投入,虛擬資源池將共享信息系統(tǒng)基礎設施變成現(xiàn)實。以往單個應用系統(tǒng)配置的設備常常占用1~2個機柜,新系統(tǒng)設備資源閑置,舊系統(tǒng)可用資源不足。虛擬化實施后這些問題都迎刃而解,大大節(jié)約了機房空間,減少了硬件設備數(shù)量,降低了機房能耗。
計算資源虛擬化完成后,服務器硬件故障不再是問題,但是多臺虛擬機運行在單臺存儲設備上,存儲性能和容量遭遇瓶頸,同時存儲設備成為單點隱患,維修和升級都變成難題。單存儲的計算資源虛擬化池示意見圖2。
基于上述問題,搭建存儲虛擬化池就成為企業(yè)必須開展的工作。主要完成2個任務:一是綜合利用機房已有的老存儲,同時購置高性能存儲,建立分層存儲系統(tǒng);二是突破單個存儲容量限制,建立供多個服務器共享的存儲池。武漢局集團公司既有存儲資源情況見表1。
圖2 單存儲的計算資源虛擬化池示意圖
表1 武漢局集團公司既有存儲資源情況
在現(xiàn)有架構下,存儲系統(tǒng)主要由使用多年的高端存儲和新購待用存儲組成???cè)萘靠臻g為115 TB,已用空間為42 TB,存儲總空間利用率僅為36%,但小型機B空間已用完,達到100%,小型機B和VMware虛擬化群集空間占用都超過75%,急需擴容。在現(xiàn)有架構下僅新購1臺存儲不能解決全部問題,同時老存儲存在性能、容量上的瓶頸,急需整合與升級。此外,存儲系統(tǒng)缺乏容災保護,一旦存儲發(fā)生災難,業(yè)務系統(tǒng)將會癱瘓,甚至帶來經(jīng)濟損失。因此存儲虛擬化改造除了解決目前迫在眉睫的性能、容量問題外,還能通過集中存儲,提升整個基礎架構的易管理性、安全性,并能實現(xiàn)存儲級別的容災。它能將存儲網(wǎng)絡上各種品牌的存儲系統(tǒng)整合成1個可以集中管理的存儲池,并在存儲池中按需要建立1個或多個不同大小的虛卷,并將這些虛卷按一定的讀寫授權分配給存儲網(wǎng)絡上各種應用服務器,可達到充分利用存儲容量、集中管理存儲、降低存儲成本的目的。
國際商業(yè)機器公司(簡稱IBM公司)的SAN卷控制器(SAN Volume Controller,SVC)是整個SAN的控制器,可將整個SAN中各種存儲設備整合成1個巨大的存儲池,充分利用存儲資源并按需分配存儲空間、性能和功能[3],能夠很好地解決傳統(tǒng)SAN網(wǎng)絡中每種存儲系統(tǒng)都自成一體、像一個個獨立孤島的問題[4]。
基于存儲池的計算資源虛擬化池示意見圖3,是武漢局集團公司改造后的信息系統(tǒng)基礎架構,所有存儲都納入SVC統(tǒng)一管理。HP 3PAR 10800和IBM DS8700主要用于虛擬化應用服務器和核心小型機。IBM DS8800和HP XP24000主要用于虛擬機備份和數(shù)據(jù)備份。
圖3 基于存儲池的計算資源虛擬化池示意圖
隨后幾年中,通過更新和擴容建設,企業(yè)物理服務器得以持續(xù)增加,存儲也進行了同步升級,虛擬化群集規(guī)模不斷擴大,企業(yè)對基礎設施需求也不斷增長。目前物理機數(shù)量已擴展至100余臺,虛擬池可對外提供300余臺虛擬機,成為生產(chǎn)核心平臺。隨著資源池不斷擴大,也帶來了虛擬機管理問題,如何更高效地監(jiān)管虛擬機運行狀態(tài),如何更合理地分配虛擬機資源成為需要解決的問題,于是又引入資源監(jiān)控平臺,逐步開始實現(xiàn)資源自動管理。
另外,由于高端存儲投資巨大,為了尋找更多有效且廉價的存儲池解決方案,嘗試搭建由6臺服務器組成的VMware分布式存儲(VSAN)測試環(huán)境,由集中式大存儲向分布式存儲發(fā)展。分布式存儲系統(tǒng)是將數(shù)據(jù)分散存儲在多臺獨立的設備上,而傳統(tǒng)網(wǎng)絡存儲系統(tǒng)采用集中的存儲服務器存放所有數(shù)據(jù),存儲服務器成為系統(tǒng)性能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規(guī)模存儲應用的需要。分布式網(wǎng)絡存儲系統(tǒng)采用可擴展的系統(tǒng)結構,利用多臺存儲服務器分擔存儲負荷,利用位置服務器定位存儲信息,不但提高了系統(tǒng)的可靠性、可用性和存取效率,還易于擴展[5-6]。在測試環(huán)境中進行的輸入和輸出(I/O)測試表明,VSAN讀速度為800 MB/s、寫速度為200 MB/s,對比HP 3PAR存儲讀速度,VSAN的讀速度較為滿意,寫速度還需提高,如果服務器數(shù)量增加到一定規(guī)模,VSAN將會有更好的表現(xiàn)。
當前集群由2套SVC構成,分別位于A機房和B機房,2個資源池已實現(xiàn)互聯(lián)互通,受限于光纖交換機資源不足,暫時用SVC互聯(lián)實現(xiàn),光纖交換機通信能力大于SVC,將來用它互聯(lián)SAN網(wǎng)絡效果會更好。SVC互聯(lián)實現(xiàn)跨機房存儲池互聯(lián)示意見圖4。
圖4 SVC互聯(lián)實現(xiàn)跨機房存儲池互聯(lián)示意圖
在已實現(xiàn)存儲虛擬化的前提下,建立服務器災備系統(tǒng)則比較簡單。在A機房和B機房各建立1套VMware群集,通過1個VCenter管理2個群集的存儲資源和計算資源。一是在日常維護時可由人工完成虛擬服務器機房遷移;二是利用SVC鏡像功能,實現(xiàn)虛擬機數(shù)據(jù)在2個機房存儲上雙寫。一旦出現(xiàn)緊急情況,環(huán)境正常的機房可以接管另一個機房的虛擬服務器。
企業(yè)以往關鍵業(yè)務數(shù)據(jù)庫服務器運行平臺主要由小型機加集中式存儲組成。上述存儲虛擬化池搭建完成后,對小型機直連存儲的模式進行了改造,實現(xiàn)通過SVC來分配存儲。改造過程是利用數(shù)據(jù)庫小型機安裝的集群文件系統(tǒng)(GPFS)鏡像功能對老存儲和新存儲鏡像[7],然后拆分鏡像去除老存儲,從而完成數(shù)據(jù)庫服務器的存儲虛擬化遷移。
為進一步保障核心系統(tǒng)穩(wěn)定運行,實現(xiàn)單個存儲池故障不影響系統(tǒng)正常運行,利用SVC鏡像功能在2個機房不同存儲上雙寫數(shù)據(jù)。數(shù)據(jù)庫服務器本身采用ORACLE RAC技術[8],2臺小型機構成數(shù)據(jù)庫集群,單個小型機停機幾乎不影響系統(tǒng)正常運行,更不會造成數(shù)據(jù)丟失。至此,數(shù)據(jù)庫服務器單點故障隱患已基本消除。
多個機房基礎環(huán)境同時出現(xiàn)問題也會威脅信息系統(tǒng)穩(wěn)定運行,錯誤操作導致的數(shù)據(jù)丟失和系統(tǒng)不可用也可能發(fā)生。為避免這種情況影響系統(tǒng)運行,使用ORACLE數(shù)據(jù)庫系統(tǒng)自帶的恢復管理工具(RMAN)比較有效。只需要在災備機房準備專門的備用數(shù)據(jù)庫服務器,每日完成1次目標數(shù)據(jù)庫全庫備份收集,每20 min在目標數(shù)據(jù)庫上執(zhí)行1次強制歸檔,并且同步收集新增歸檔日志,同時記錄收集時間,以此判斷數(shù)據(jù)庫最大限度恢復時間點。備份數(shù)據(jù)庫每次收集完備份和日志后都立即實施恢復,保證備份數(shù)據(jù)庫隨時具備接管條件。采取這種異地備份方式可實現(xiàn)多個生產(chǎn)數(shù)據(jù)庫對應1個備用數(shù)據(jù)庫。跨機房數(shù)據(jù)庫災備示意見圖5。只需在備用數(shù)據(jù)庫上建立不同的實例來對應,且無任何額外軟件費用,硬件投入也少;缺點是對網(wǎng)絡帶寬要求高,最好在萬兆網(wǎng)絡上實施,在極端情況下會出現(xiàn)20 min的數(shù)據(jù)丟失,屬于不完全恢復,所以還要考慮應用系統(tǒng)恢復要求[9]。在數(shù)據(jù)丟失零容忍的情況下,可以采用ORACLE DATA GUARD來實現(xiàn)數(shù)據(jù)備份,災難發(fā)生時可以完全恢復數(shù)據(jù)庫[10];缺點是設備投入量大,必須按照1∶1的方案準備備用設備,在正常運行時,備用服務器實際處于閑置狀態(tài),計算資源未發(fā)揮作用,還需耗電和散熱[11]。
經(jīng)過多年建設,武漢局集團公司應用網(wǎng)絡堆疊技術完成了網(wǎng)絡加固,應用VMware虛擬化技術實現(xiàn)了計算資源虛擬化,應用SVC存儲虛擬化技術實現(xiàn)了存儲資源池建立。企業(yè)信息系統(tǒng)架構中的單點故障基本消除,系統(tǒng)穩(wěn)定可靠,并且在此基礎上完成了本地容災系統(tǒng)建設,為企業(yè)信息系統(tǒng)穩(wěn)定運行提供了有力保障,為云平臺建設提供了基礎。今后還可在改善網(wǎng)絡的基礎上進一步實現(xiàn)異地容災系統(tǒng)建設,最終實現(xiàn)搭建高可用、易擴展、易維護、省成本的信息系統(tǒng)基礎設施的目標。
圖5 跨機房數(shù)據(jù)庫災備示意圖