程思杰
(復旦大學附屬華山醫院,上海 200040)
近年來,隨著醫院HIS(醫院信息系統)、LIS(檢驗科信息系統)等各類信息系統的推廣應用,在提高業務辦理效率、減輕醫護人員工作壓力和優化病患就醫體驗等方面產生了積極效果。與此同時,醫院信息系統產生了海量數據,如何實現數據的安全存儲、高效利用,也成為醫院信息化建設中必須要考慮的問題。異地容災備份是將業務中心與備份中心分別設在不同的地方,同時保證備份數據與原始數據同步更新,這樣即便是原始數據丟失、破壞,也可以啟用備份數據,保證醫院業務開展的連續性。而服務器虛擬化技術則能夠用虛擬服務器代替物理服務器,完成醫院各類信息系統的功能。開展異地容災系統和服務器虛擬化的設計應用,成為當下醫院信息化建設的重要內容。
本文設計的醫院網絡異地容災備份系統由業務中心和備份中心構成。其中,業務中心主要包含醫院的各類信息系統,如HIS(醫院信息系統)、LIS(檢驗科信息系統)、PACS(影像存儲與傳輸系統)等;備份中心則是以虛擬機的方式存儲各類信息系統的備份數據。系統的整體架構如圖1 所示。

圖1 醫院容災備份系統整體架構圖
在醫院的某個樓內設立一個災備中心,要求災備中心與業務中心分屬于不同樓宇,實現異地容災備份。從災備中心的網絡線路集成到業務中心的2 臺交換機上,保證網絡冗余。災備服務器上除了必備的操作系統和系統插件外,還包括醫院的各類業務系統以及用于存儲備份數據的數據庫管理系統。業務中心的重要數據會按照設定好的時間自動完成備份,并傳輸到災備中心的服務器上[1]。
本系統的服務器采用Intel Xeon E5520 四核處理器,主頻2.13 GHz,配置5×144GB 熱交換器和3.5 寸SAS硬盤,有12 個8 GB 光纖通道和4 個短波SFP 接口,標配集成PERC H1200 高性能磁盤陣列卡,支持虛擬光驅、軟驅和閃存,自帶Bios、Image 等文件的快速恢復系統。
醫院業務中心的HIS 系統、PACS 系統等每天會產生海量數據,這些數據需要同步備份到異地容災系統。頻繁地傳輸和調用數據,使得系統服務器面臨著較大的運行負載,保證網絡訪問的安全性、傳輸的穩定性至關重要。本文在設計異地容災系統時,選擇了光纖SAN網絡,最大傳輸距離為10 km,最大傳輸率穩定在1 GB/s 以上。光纖SAN 網絡系統的核心設備是光纖通道交換機(DELL Brocade 5100 24 口交換機),采用雙冗余配置,可以實現FC 網絡和SAN 網絡的切換,保證了網絡傳輸的穩定性和連續性。每1 臺服務器配置2個光纖通道卡,這就意味著1 臺服務器可以連接2 臺互為冗余的光纖通道交換機。光纖通道交換機可以將業務中心服務器上采集到的海量數據分類存儲到磁盤陣列中。光纖SAN 網絡拓撲結構如圖2 所示。

圖2 SAN 網絡拓撲圖
異地容災系統的存儲系統應當滿足高性能、高可靠、易擴展等要求。本文選擇了DELL EMC CX4 系列光纖存儲系統,標準容量4.5 TB,支持擴展,最大擴展容量可達到10 TB。
異地容災備份系統的軟件部分主要包括災難檢測、同步復制、災難切換和系統恢復4 個模塊。醫院業務中心的各類信息系統在運行過程中,每隔一定周期進行循環性的災難檢測,判斷系統運行是否正常。如果正常,則將醫院各類信息系統產生的數據同步到備份數據庫中;如果存在異常,在進行災難報警,支持手動和自動容災切換。切換至容災備份系統后,使用備份數據保證醫院各項業務的正常開展。在此期間,進行系統故障修復,并執行一個判斷程序“系統故障是否消除?”如果故障未消除,保持災備系統運行,維持醫院業務的連續性;如果故障已消除,則進行系統恢復,從容災備份系統再次切換回業務系統,醫院業務中心的各類信息系統恢復正常運行,同時繼續按照設定好的時間進行災難檢測,直到下一次災難的發生[2]。整個流程如圖3 所示。

圖3 醫院災備系統流程設計圖
醫院業務中心各類信息系統的災難檢測可通過“心跳包”實現。系統中包括1 個主節點和若干個從節點,并且2 種節點分別向控制層上報心跳。異地災備系統的控制層每隔一定周期會發出響應心跳包;正常情況下,業務中心的服務器會立即響應,系統順利接收到任意一個節點的心跳,說明該服務器正常;若控制層收不到某個節點的心跳,則認為該節點不可用,服務器存在故障,這種情況下使用備用信道發送心跳數據包。
同步復制可以保證業務中心和備份中心的數據保持一致性,是異地災備系統軟件設計的核心內容。本文使用Data Guard 技術實現海量業務數據的同步復制,將醫院業務中心的在線日志和歸檔日志復制到備份數據庫中。在系統同步復制軟件設計中,需要分別對主庫和備庫進行配置。
主庫配置如下:首先檢查主庫是否為“歸檔”模式,如果是則直接進行主備庫的聯通測試;如果不是該模式,則需要初始化數據庫,進入到mount 環節,修改數據庫的狀態,使之切換為“歸檔”模式。將主庫設置為force logging 狀態,提高響應速度,防止修改記錄丟失。然后新建一個standby.ctl 文件,用于存儲備份數據;新建一個pfileWDS.ora 文件,用于存儲初始化參數文件。指定歸檔文件的保存路徑后,設置主庫與備庫的連接服務“fal_server=wjerm2;”最后重啟主庫,讓各項設定生效[3]。
備庫設置如下:設立備庫目錄,并參照主庫的上述配置對備庫執行相應操作。完成備庫各項設定后,執行Data Guard 命令,實現主、備數據同步。同時,啟用listener.ora 文件,監聽數據同步進程,保證數據庫處于實時恢復狀態。完成上述操作后,進行主備庫的聯通測試,確保兩者連接可靠。
完成主庫和備庫的設置后,對比主庫和備庫最近在線日志是否完全一致,兩者一致說明主備庫的在線日志傳輸正常;觀察主庫和備庫最近接收到的日志文件是否一致,兩者一致說明主備庫日志應用正常。滿足上述條件后,即可進行系統數據的同步復制。
本文設計的異地容災系統,有2 種情況可以觸發災難切換。一種情況是醫院業務中心的信息系統發生故障,這種情況下為了保護業務的連續性,需要通過災難切換啟用備用庫,調取備份數據;另一種情況則是醫院業務中心的信息系統需要進行升級或維護,也需要通過災難切換啟用備用庫[4]。針對上述2 種情況,本文在系統軟件設計中利用Data Guard 編寫對應的災難切換程序。
針對第一種情況,調用failover()函數編寫了計劃外中止的故障切換程序,如圖4 所示。

圖4 基于failover 的災難切換流程圖
針對第二種情況,調用switchover()函數編寫了計劃內停用的轉換開關程序,如圖5 所示。
近年來,醫院的信息化建設進程加快,各類信息系統的數量和功能不斷增多。為了達到降低成本、便于管理、提高資源利用率和保證業務連續性的效果,需要對醫院異地容災系統的服務器進行虛擬化設計。本文選擇了VMware 虛擬機軟件對異地容災服務器的操作系統和應用軟件進行虛擬化處理,具體配置見表1。

表1 虛擬化服務器軟硬件配置表
在每臺物理服務器上安裝VMware 第5 代虛擬架構軟件vSphere5.0,運行該軟件后利用軟件自帶的ESX 組件,建立多臺虛擬服務器。同時,在虛擬服務器上安裝Windows 10 操作系統,并根據醫院業務中心的實際情況,在虛擬服務器中安裝同樣的應用軟件,如HIS 軟件、ERM 軟件等,這樣就建立起與物理服務器功能、架構完全相同的虛擬服務器。相比于物理服務器最高只有30%左右的利用率,虛擬服務器的性能利用率可以達到90%,從而顯著提高了醫院各項業務的辦理效率。
在醫院網絡異地容災系統中,使用FC/SAN 網絡和動態虛擬存儲陣列共同建立了SAN 集中存儲架構。為了節約成本,需要借助于VMware 軟件中的不同組件對存儲設備進行虛擬化處理。利用該軟件提供的VM DRS 組件可以做到動態分配硬件資源,以滿足醫院不同部門、科室的需求;利用該軟件提供的WM VCB 組件,能夠以虛擬機作為中間媒介,將代理服務器上的海量數據備份到磁盤陣列中,避免了備份過程中占用太多系統資源和存儲空間的情況發生。通過存儲設備的虛擬化設計,可以實現醫院業務數據的集中存儲、集中備份[5]。
為了實現對醫院異地容災系統物理服務器和虛擬服務器的集中、可視化管理,本文作出了以下設計:新建一臺DELL PER710 服務器,并在該服務器上安裝Windows 10 操作系統,然后安裝Virtual Center 軟件,運行該軟件后可以對上文設計的VM DRS、VM VCB,以及VMware 軟件提供的其他組件進行集中管理。服務器虛擬化管理可以取得以下效果。
1)優化資源的配置,提高了資源的利用率。每一臺物理服務器上可以配置多臺虛擬服務器,并且每一臺虛擬服務器都是獨立的,相互之間不構成干擾,因此可以顯著提高醫院異地災備系統的數據處理效率,為醫院對各類數據資源的開發利用創造了有利條件。
2)降低成本。虛擬化服務器可以完成物理服務器的所有功能,并且節省了購買物理服務器等硬件設備的成本。對比來看,使用VMware 配置虛擬服務器,要比原來使用物理服務器節約40%~50%的成本。
3)業務連續性好。當醫院的各項業務系統發生災難后,WMware 可以借助于軟件自帶的Infrastructure 組件,對服務器內的業務數據進行快速備份,并根據用戶的需要有選擇性地進行數據恢復,保證了醫院各項業務的連續性。
醫院信息系統在日常運行中,產生了許多有重要價值的數據或者是包含病人隱私的信息,這些數據信息一旦丟失,將會對醫院業務的開展造成嚴重的影響。本文設計了醫院網絡異地容災系統,將業務中心與備份中心分別設置在不同樓宇,實現同步備份、異地存儲、冗余容災。通過保障數據的完整性,維護了醫院業務的連續性。同時,采用VMware 軟件對物理服務器進行虛擬化處理,使用虛擬服務器完成醫院信息系統的各項功能,達到了節本增效的目的。