翁錦陽,何萍,朱鐵兵
上海交通大學醫學院附屬瑞金醫院計算機中心,上海 200025
大型醫院信息系統的容災設計和應用
翁錦陽,何萍,朱鐵兵
上海交通大學醫學院附屬瑞金醫院計算機中心,上海 200025
容災的實質是通過各種容災技術和手段保持信息系統業務的持續性。本文介紹了我院信息系統的容災設計和10余年的運行經驗,總結出了適合大型醫院使用的容災系統設計方案,并詳細說明其了原理和實現過程。
醫院信息系統;容災技術;存儲局域網
當前,大型醫院已普遍建有醫院信息系統,并已成為醫院高效、有序開展醫療服務的基本保障。由于大型醫院全年365天、全天24h不間斷服務和高峰期業務并發量大的特點,一旦信息系統發生故障,整個醫院的業務將陷于癱瘓,因此對醫院信息系統的運行安全性和連續性提出了很高的要求。為此,醫院信息系統的容災設計對于大型醫院來說顯得尤為重要。
醫院信息系統的容災目的,不僅是確保數據的完整性,還要保障關鍵業務運行的持續性。即當醫院信息系統發生故障時,仍能夠不間斷地或盡可能快地恢復提供關鍵業務支持,并盡可能避免關鍵數據的丟失,以保證醫療業務的正常運行。
系統的容災設計有兩個評價標準:恢復時間目標(RTO,在災難發生后需要恢復的緊迫性)和恢復點目標(RPO,在災難發生后恢復運轉時數據丟失的可容忍程度)。RPO針對的是數據丟失,而RTO針對的是服務丟失。即系統容忍丟失的數據量越小,RPO的值越??;系統服務的緊迫性要求越高,RTO的值越小。由于醫院承擔救死扶傷任務的特殊性,決定了醫院信息系統對RPO和RTO具有很高的要求。
醫院信息系統有計算、傳輸和存儲三大核心資源。計算資源主要包括具有計算能力和業務處理能力的服務器。傳輸資源主要包括網絡和各類網絡交換設備。存儲資源主要包括存放數據的各類存儲設備。醫院信息系統的容災設計重點就是要保護這三種核心資源。
計算資源的傳統容災方式主要是通過采用服務器群集技術來實現的。以典型的三層架構(一般將醫院信息系統架構由上至下劃分為表示層、業務邏輯層和數據訪問層)分別獨立部署在服務器或服務器群集上運行為例介紹:
位于數據訪問層的數據庫服務器采用基于共享存儲的雙機熱備方式。兩臺數據庫服務器可以采用互備、主從、并行等不同的方式。在工作過程中,兩臺服務器將以一個虛擬的IP地址對外提供服務,依工作方式的不同,將服務請求發送給其中一臺服務器承擔。同時,服務器通過心跳線偵測另一臺服務器的工作狀況。當一臺服務器出現故障時,另一臺服務器根據心跳偵測的情況做出判斷,并進行切換,接管服務。這一過程可自動在短時間內完成(分鐘級),對業務不會造成影響。由于使用共享的存儲設備,因此兩臺服務器實際上使用的是一樣的數據,由雙機或集群軟件對其進行管理。通過服務器群集的方式,能夠以較短的時間在部分計算資源發生災難后恢復,保障業務系統持續穩定地運行。
在上兩層中——業務邏輯層(應用服務器)和表示層(頁面服務器)由于只提供應用服務和用戶訪問界面,并不保存數據,一般不需要使用共享的存儲設備,而應配置多臺服務器建立負載均衡機制:一是避免在這兩層上出現單點失效,實現容災;二是可以為用戶提供更好的訪問質量、提高服務器響應速度。
對于服務器供電中斷這類故障,可通過UPS的冗余并聯實現快速甚至無縫的災難恢復。UPS冗余并聯實現了若干UPS設備本身的災難恢復,一旦主機故障停機,系統自動選擇作為從機(哪臺先開哪臺就是主機,而后開機的都是從機)運行的另一臺UPS接替主機的工作,保持供電不間斷。
傳輸資源的保護主要通過虛擬路由技術,以及雙鏈路冗余和負載均衡來保障系統容災的RTO。虛擬路由技術中最具代表性的是VRRP(虛擬路由冗余協議),可將一組用于醫院信息系統服務器與客戶端通信的路由器協同工作,共同構成一臺虛擬路由器。該虛擬路由器對外表現為一個具有唯一固定IP地址和MAC地址的邏輯路由器。處于同一個組中的路由器具有兩種互斥的角色:主控路由器和備份路由器。一個組中有且只有一臺處于主控角色的路由器,可以有一個或者多個處于備份角色的路由器。VRRP協議使用選擇策略從路由器組中選出一臺作為主控,負責ARP響應和轉發IP數據包。組中的其它路由器作為備份角色處于待命狀態。當主控路由器發生故障時,備份路由器能在幾秒鐘的時延后升級為主路由器。由于此切換非常迅速而且不用改變IP地址和MAC地址,故對醫院信息系統客戶端用戶是透明的。
通過合理的網絡設計,也能到達備份和負載均衡雙重效果。比如讓兩臺路由器同時屬于互為備份的兩個組:在組1中路由器A為IP地址所有者;組2中路由器B為IP地址所有者。將客戶端1的默認網關設定為路由器A;客戶端2、客戶端3的默認網關設定為路由器B。這樣既分擔了設備負載和網絡流量,又提高了網絡可靠性。同樣可以利用如Port-channel等技術實現鏈路的冗余和負載均衡。
存儲資源由于承擔保存醫院信息系統數據的功能,建議在數據庫服務器群集中采用雙存儲陣列作為共享存儲(雙鏈路雙控制器冗余的存儲陣列最佳),并以鏡像方式同步。這樣,即使作為共享存儲的其中一個盤陣離線,服務依然能夠無間斷運行。
此外,可利用連續數據保護技術(CDP)對醫院信息系統數據進行備份,此技術可以捕捉到一切文件級或數據塊級別的數據改動,可以對備份對象進行更加細化的粒度的恢復,可以恢復到任意時間點。硬盤部分,設置RAID容錯報錯,且有熱拔插功能,一旦硬盤毀損,立刻抽換硬盤,系統仍可正常運作,無需中斷或關機。
上述技術手段實現了醫院信息系統的本地容災,但對于機房遭遇火災等大型災害,本地容災則顯得無能為力。有鑒于此,應當在數據中心所處的建筑之外建立異地災備中心,將重要性高的應用實現異地數據容災。由于現在存儲局域網(SAN)的發展,使得數據備份過程可以在SAN中實現,以滿足異地容災需求。數據中心和異地災備中心直接通過專用存儲網絡進行連接,生產系統的數據實時地通過專用的存儲網絡傳輸到災備中心存儲。由于數據的備份過程不經過主機系統所在的網絡,因此不會對生產系統的網絡有任何影響。
雖然異地數據容災可以保障在生產系統設備遭遇嚴重損壞情況下的數據完整性,但該方案的系統恢復時間較長,業務支持連續性較差,較適合對實時性要求相對較低的業務應用,如出院結算服務、行政辦公服務等。
對實時性要求高的應用,如門急診結算應用,應實現異地的應用級容災。即在異地災備中心建立一套與生產系統相同的備用系統,不但通過SAN實現數據的備份,還應搭建一套備用的應用服務器,并與客戶端間采用雙網絡回路。即使數據中心主核心路由器完全停止工作,網絡線路仍可以快速切換到通向災備中心的鏈路,客戶端程序也可以通過容災系統的路由連接到備用數據庫,可使應用系統得以在30s內恢復運行,RTO值很小。
上述技術可以有效降低或防止自然災害、設備損壞對醫院信息系統造成的破壞,但人為破壞(誤操作、蓄意破壞等)同樣會給醫院造成不亞于前兩者的損失,而上文提到的技術對此無能為力。
為防止此因素造成的破壞,需要在存儲資源和計算資源上部署持續數據保護軟件(CDP),它可以提供連續的恢復點,能夠存取任何時間點上的數據,而不僅僅針對那些由快照流程預先確定的特殊時刻。
除通過技術手段建立醫院信息系統容災方案以實現信息系統高可用性之外,信息系統日常管理的重要性也不可忽視。平時應定期對機房巡檢,通過查看設備狀態燈以及各類日志(包括操作系統、數據庫、服務器和存儲硬件監視軟件、路由交換設備),分析系統當前的健康情況。對操作系統以及數據庫的用戶和密碼進行嚴格管理,及時刪除不再使用的帳戶,定期更改密碼。及時更新殺毒軟件病毒碼,不推薦被殺毒軟件掃描的目錄和文件(如數據庫系統和數據文件),應當及時將其列入排除列表,以免嚴重影響系統性能和殺毒軟件誤刪文件后造成系統崩潰。定期進行災難恢復演練,確認恢復點及容災方案在發生各種故障后的可用性。綜上所述,日常的管理措施可以盡量減少系統故障點,防患于未然,避免不必要的系統恢復工作。
上述醫院信息系統的容災方案,是筆者所在醫院的信息系統容災建設10年發展的結晶,從最初的單服務器(定時備份)模式,發展到本地容災(高可用、定時備份)模式,一直到現在的異地容災(SAN、CDP)模式,取得了較好的實踐效果。我院在100余臺服務器、160余臺交換機、3600余臺計算機的規模下,已經連續10年未發生全院性信息系統癱瘓事件。誠然,實現醫院信息系統的容災需要較大的前期投入,但是相對于醫院信息系統因遭遇故障而丟失的數據、造成的惡劣社會影響和經濟損失、事后恢復所需的大量人力和時間,這些投入還是相當值得的。
[1]李濤,劉曉潔,曾金全,等.信息系統容災抗毀原理與應用[M].北京:人民郵電出版社,2007.
[2]董民,周衛東,沈慶國.路由器原理、操作及應用[M].北京:國防工業出版,2006.
[3]鄒恒明.有備無患:信息系統之災難應對[M].北京:機械工業出版社,2009.
[4]王改性,師鳴若.數據存儲備份與災難恢復[M].北京:電子工業出版社,2009.
[5]山德布.信息災難恢復規劃[M].北京:清華大學出版社,2006.
[6]楊霜英,等.大型醫院網絡信息系統的安全保障策略[J].中國醫療設備,2009,24(10):36-38.
[7]張大勝.醫院數據存儲備份系統建設的經驗與體會[J].醫學信息,2008,(12):2184-2186.
[8]方向東.淺談數據安全與數據備份存儲技術[J].科技資訊,2007,(31):113.
Disaster Tolerance Design and Application of Hospital Information System in Large Scale Hospitals
WENG Jin-yang, HE Ping,
ZHU Tie-bing
Computer Center, Ruijin Hospital of Shanghai Jiaotong University, Shanghai 200025, China
TP393.08
B
10.3969/j.issn.1674-1633.2011.01.018
1674-1633(2011)01-0059-02
2010-06-22
2010-10-26
作者郵箱:zjbyyd@sina.com
Abstract:The essence of disaster tolerance is to maintain the continuity of information system through a variety of disaster tolerance techniques and tools. This paper introduces the design and operating experience about disaster tolerance of HIS in our hospital, and summarizes the disaster tolerance design project in large hospitals, then detailedly expounds on its principle and realization.
Key words:HIS; disaster tolerance technology; storage local area network