陳毫博
摘 要為了實現醫院管理的科學化、現代化、數字化,適應現代化醫院的醫療、科研、教育和管理的要求,醫院的信息系統(HIS)主要以一體化的臨床系統、LIS系統、PACS系統,EIS系統、PIS系統等為基礎,共同形成全面的醫院信息管理系統。龐大的系統必然產生海量數據,對于軟件而言數據就是根本,任何操作、分析、結算都要在數據的基礎上進行,所以數據安全成為了醫院信息系統安全的重中之重。
【關鍵詞】醫療行業 數據儲存 雙活技術
作為數據載體的存儲陣列,其可靠性的重要性毋庸置疑,尤其在一些關鍵應用中,比如醫院的HIS業務系統,不僅需要單臺存儲陣列自身保持高可靠性,往往還需要兩臺存儲陣列組成高可靠的系統。一旦其中一臺存儲陣列發生故障,另一臺可以無縫接管業務。這種兩臺存儲都處于運行狀態,互為冗余,可相互接管的應用模式一般稱之為雙活存儲。
過去由于技術上的限制,傳統的雙活存儲方案無法由存儲陣列自身直接實現,更多的是通過在服務器上增加卷鏡像軟件,或者通過增加額外的存儲虛擬化引擎實現。通過服務器上的卷鏡像軟件實現的雙活存儲,實施復雜,對應用業務影響大,而且軟件購買成本較高。通過存儲虛擬化引擎實現的雙活存儲,雖然實施難度有一定降低,但存儲虛擬化引擎自身會成為性能、可靠性的瓶頸,而且存在兼容性的限制,初次購買和維護成本也不低。
隨著信息技術發展,基于存儲陣列自身搭建的雙活技術已逐漸成熟,存儲雙活技術已經被廣泛應用于各個數據中心。存儲雙活技術,不需要引入任何第三方軟硬件,直接通過兩臺同存儲陣列實現兩臺存儲的雙活工作,互為冗余。當其中一臺存儲發生故障時,可由另一臺存儲實時接管業務,實現RPO、RTO為0。這是一種簡單、高效的新型雙活存儲技術。
這是一種簡單、高效的新型雙活存儲技術,其特征是:
(1)具備雙活保護特性的兩個LUN分別位于同一數據中心不同機柜,或者位于兩個數據中心
(2)兩個LUN可同時提供給服務器訪問。
(3)兩個LUN的數據完全相同,相互保護。
存儲雙活技術是在數據鏡像技術的基礎上,進一步提升數據保護的可靠性和業務系統的連續性,實現真正的自動切換+數據零丟失。主機可以通過兩臺存儲同時進行數據讀寫,兩臺存儲可以承載不同的應用,相互鏡像。兩臺存儲在一個界面內進行統一管理,并有心跳檢測。生產卷與鏡像卷雖然是兩個卷,但兩個卷的UUID相同,服務器識別為同一個LUN。當某一臺引擎發生故障時,可自動切換至另一臺存儲,不需人工參與,整個切換過程所需時間為秒級,真正實現數據零丟失和業務零停頓。
雙活存儲系統由兩臺存儲陣列組成,分別對應存儲引擎A、引擎B。存儲引擎A和B上的卷可配置為雙活鏡像對,中間通過萬兆以太網鏈路進行高速數據同步,數據完全一致。由于采用虛擬卷技術,雙活鏡像對中的兩個卷對外形成一個虛擬卷。
對服務器而言,雙活鏡像對就是可以通過多條路徑訪問的同一個數據卷,服務器可以同時對雙活鏡像對中兩個卷進行讀寫訪問。組成雙活鏡像系統的兩臺存儲互為冗余,當其中一臺存儲陣列發生故障時,可由另一臺存儲陣列直接接管業務。服務器訪問雙活存儲系統可根據實際需要,選用FC、iSCSI方式,服務器訪問存儲的SAN網絡與數據同步的萬兆網絡相互獨立,互不干擾。
以FC SAN為例,存儲雙活的組網如圖1所示。
如圖1所示,兩臺存儲設備之間使用私有雙活網絡互連,以避免雙活IO和前端業務IO的相互干擾。
部署后,可在兩臺引擎上配置雙活鏡像對。雙活鏡像對的兩個LUN分別位于引擎A和引擎B,其容量完全相同,同時,為了便于管理,名稱完全相同。兩個LUN的鏡像角色分為主LUN和鏡像LUN,可同時分配給客戶端服務器訪問??蛻舳朔掌鞯卿浺鍭、引擎B后,通過多路徑軟件會把鏡像對的兩個物理LUN識別為同一個LUN,即,該LUN同時具有兩臺存儲設備的路徑,在任一臺存儲設備出現雙點故障時,另一臺存儲設備都能繼續提供存儲服務,客戶端服務器上業務可實現無縫切換,從而保證業務連續性。
雙活鏡像對通過私有雙活網絡進行數據傳輸。部署雙活鏡像對時,將觸發主LUN到鏡像LUN的數據同步,同步過程中,主LUN和鏡像LUN可繼續訪問,其不影響主LUN上已有數據;同步完成后,雙活鏡像對將變成已同步狀態,客戶端服務器上新數據將同時寫入主LUN和鏡像LUN。在正常運行過程中,因為引擎關機/重啟、鏈路中斷等,導致主LUN和鏡像LUN數據存在差異時,在設備恢復正常時,將立即觸發數據同步,把差異數據進行同步,以保證雙活鏡像對的兩個LUN中數據完全一致。
雙活存儲可以和復制快照功能一起構建功能更為豐富的解決方案。比如引擎A上LUN-1和引擎B上LUN-1部署雙活鏡像對,同時,還可以為引擎A上LUN-1或引擎B上LUN-1啟用快照功能,為數據提供多時間點保護,以避免“軟災難”發生導致數據丟失;或者啟用復制功能,把數據在異地災備中心創建副本,這樣即使本地發生“硬災難”導致生產中心數據丟失,也可以通過災備中心中數據副本恢復數據。
針對路徑故障、主存儲掉電、鏡像存儲掉電三種典型故障,雙活存儲的解決方式;
1 路徑故障
數據庫寫入過程中,如果引擎A所有光纖線失效,流量會切換到引擎B,此時鏡像LUN同步數據到主LUN,一旦路徑恢復,流量又會切換到主LUN,如圖2所示。
2 主存儲掉電
數據庫寫入過程中,如果引擎A掉電,鏡像LUN自動反轉成主LUN,流量切換的引擎B,待引擎A啟動完成后,引擎A的LUN變成鏡像LUN,引擎B的主LUN同步數據到鏡像LUN,如圖3所示。
3 鏡像存儲掉電
數據庫寫入過程中,如果引擎B掉電,流量仍然走引擎A主LUN,待引擎B啟動后,同步數據到鏡像LUN,如圖4所示。
在醫院的數據中心建設中,存儲雙活技術,在數據可靠性和業務連續上的表現較好,而且投資成本低,方案實施簡單,不需第三方軟硬件,對前端主機的性能沒有影響,而且通過引擎之間的負載均衡,還能夠提升整個存儲系統的數據讀寫效率,構建了新一代智能、高效、統一的存儲平臺,保障了從基礎數據、業務數據到測試數據高效的讀寫性能、資源的彈性部署和高擴展性。實現了前端業務數據的集中可靠存儲和數據有效管理。在多業務平臺共存、大量數據并發訪問和管理的環境下,有效確保了業務系統的連續性,大幅度提升了業務系統的響應能力。簡化了技術服務部門的日常維護管理,提高了醫院系統運營效率、服務水平和信息部門服務能力。
作者單位
杭州市五云山療養院信息中心 浙江省杭州市 310000