文/江明
企業(yè)信息化建設中的容災系統(tǒng)建設
文/江明
在企業(yè)信息化建設中,會不斷的部署實施一些應用系統(tǒng),應用系統(tǒng)的部署架構一般分為C/S或者B/S架構,無論哪一種架構的應用系統(tǒng),在Server端又會區(qū)分為前端應用系統(tǒng)、中間件系統(tǒng)、數(shù)據(jù)庫系統(tǒng)。以網(wǎng)站系統(tǒng)為例,客戶端訪問https://xxxx.com網(wǎng)址,向Web服務器發(fā)起訪問查詢請求,Web服務器根據(jù)客戶端請求的類型,通過中間件或者直接向后臺數(shù)據(jù)庫讀取數(shù)據(jù),然后將數(shù)據(jù)反饋給客戶端。如果客戶端有提交數(shù)據(jù)的請求,同樣會由Web服務器通過中間件或者直接向后臺數(shù)據(jù)庫進行寫入數(shù)據(jù)。在上述系統(tǒng)的架構中,Web服務器或者中間件系統(tǒng)都是沒有數(shù)據(jù)變化的,其僅僅處理來自客戶端的請求,并將請求結果返回給客戶端,只有后臺數(shù)據(jù)庫會產(chǎn)生數(shù)據(jù)變化和更新。
容災 負載 數(shù)據(jù) VMware 高可用
一般情況下,數(shù)據(jù)庫系統(tǒng)要使用專門針對數(shù)據(jù)庫產(chǎn)品的數(shù)據(jù)庫群集系統(tǒng)實現(xiàn)數(shù)據(jù)庫服務器的高可用性(業(yè)務不中斷)和負載均衡;
使用專門針對數(shù)據(jù)庫產(chǎn)品或者第三方的策略備份軟件、容災軟件實現(xiàn)數(shù)據(jù)保護(數(shù)據(jù)不丟失)。
例如:Oracle數(shù)據(jù)庫系統(tǒng)的RAC技術可以實現(xiàn)高可用性和負載均衡,Oracle RMAN技術可以實現(xiàn)數(shù)據(jù)庫定期自動備份(策略備份),Oracle DataGuard技術可以實現(xiàn)數(shù)據(jù)庫的異地實時同步。
SQLServer數(shù) 據(jù) 庫 系 統(tǒng) 的Cluster群集技術可以實現(xiàn)故障轉移(高可用性),SQLServer自身的備份功能可以實現(xiàn)策略備份,SQLServer Mirror技術可以實現(xiàn)數(shù)據(jù)庫的異地實時同步。
借助第三的軟件也可以實現(xiàn)數(shù)據(jù)庫的策略備份和實時同步:比如Symantec NetBackup可以實現(xiàn)Oracle、SQLServer的策略備份;迪斯杰公司DSG RealSync/SmartE產(chǎn)品可以實現(xiàn)Oracle數(shù)據(jù)庫的異地實時同步。
由于前端應用系統(tǒng)不存在數(shù)據(jù)存儲的需求,因此只要為其實現(xiàn)高可用性,即業(yè)務訪問不中斷即可。但是又由于前端應用系統(tǒng)全部部署在虛擬化環(huán)境中,我們需要針對虛擬機層面進行數(shù)據(jù)保護,確保虛擬機數(shù)據(jù)的安全性。
將前端應用系統(tǒng)或者中間件系統(tǒng)部署在虛擬化環(huán)境中,服務器虛擬化本身可以提供硬件級別的故障轉移(高可用性),底層物理機出現(xiàn)故障時,上層虛擬機將會在其他物理機上進行重啟。
結合前端應用系統(tǒng)和中間件系統(tǒng)數(shù)據(jù)不變化的特點,建議在客戶端與服務器中間部署一套負載均衡設備,再部署多臺應用系統(tǒng)或中間件系統(tǒng)虛擬機,將其分布在不同的物理服務器上運行,在后臺形成服務器池,由負載均衡設備負責接收客戶端請求并重定向到后臺服務器池中負載較小的虛擬機上。負載設備會通過不同的通信協(xié)議感知后臺服務器虛擬機的故障,出現(xiàn)故障的虛擬機將不會被分發(fā)新的訪問請求。
由于前端應用系統(tǒng)都部署在虛擬化環(huán)境中,如果虛擬化層面出現(xiàn)故障,可能會導致虛擬機無法啟動或者虛擬機數(shù)據(jù)丟失。因此針對重要的虛擬機要部署策略備份或者實時同步技術,以達到保護虛擬機的目的。
比如,Data Protection系統(tǒng)可以實現(xiàn)針對不同虛擬機定期自動備份的功能;VMware SRM系統(tǒng)可以實現(xiàn)虛擬機在異地數(shù)據(jù)中心實時同步的功能。
下面以EDP系統(tǒng)和OA系統(tǒng)為例闡述如何部署容災環(huán)境,假如EDP系統(tǒng)后臺數(shù)據(jù)庫為Oracle數(shù)據(jù)庫,OA系統(tǒng)后臺數(shù)據(jù)庫為SQLServer數(shù)據(jù)庫。
將OA和EDP程序部署在虛擬機中,VMware服務器虛擬化環(huán)境本身就提供了高可用性,物理服務器的故障不會導致虛擬機停止服務(虛擬機會在異機重啟)。
在物理機出現(xiàn)故障時,如果想避免虛擬機在其他物理服務器重啟的現(xiàn)象(零延遲故障轉移),可以利用VMware FaultTolerance技術,為OA和EDP虛擬機分別在其他物理服務器上啟用實時鏡像虛擬機,鏡像端虛擬機的數(shù)據(jù)是和生產(chǎn)端虛擬機實時同步的,一旦生產(chǎn)虛擬機所處的物理機出現(xiàn)故障,生產(chǎn)虛擬機不會在其他物理機上進行重啟,而是立即啟用鏡像端虛擬機對外提供服務,建議在采取了應用負載均衡設備的環(huán)境中,可以不需要部署VMware FT技術,因為應用負載設備后臺有多臺應用程序虛擬機提供相同的服務。
在網(wǎng)絡架構的最前端部署應用負載均衡設備,分別為OA應用和EDP應用建立應用程序服務器池,將后臺對應的OA和EDP虛擬機添加到應用程序服務器池中。
在服務器虛擬化環(huán)境中部署OA和EDP虛擬機,可以提前分別為OA和EDP虛擬機創(chuàng)建模板,當應用負載設備應用服務器池中的服務器節(jié)點數(shù)量不足時,后臺虛擬機可以利用模板快速產(chǎn)生新的虛擬機,從而達到快速擴容負載設備中應用服務器池的目的。
客戶端訪問OA或者EDP應用程序時,先訪問應用負載設備發(fā)布的地址(OA和EDP為不同的訪問地址),應用負載設備根據(jù)用戶的訪問類型絕對從哪個應用服務器池中調用服務器接收客戶端的訪問需求,并且應用服務器池中比較空閑的服務器會被優(yōu)先選中作為響應服務器。
至于異地容災可視數(shù)據(jù)的重要性以及企業(yè)發(fā)展需求進行實施,本人由于篇幅有限就不詳細介紹。總之,在企業(yè)信息化容災系統(tǒng)建設中,信息管理部門要實現(xiàn)的兩個終極目標是RPO=0,RTO=0,即業(yè)務不中斷,數(shù)據(jù)不丟失。
因此,信息管理部門需要根據(jù)企業(yè)應用系統(tǒng)架構中不同的服務器角色,結合容災建設目標,為不同的服務器角色部署不同的容災建設方案。
作者單位 江蘇康緣藥業(yè)股份有限公司 江蘇省連云港市222000