沈凱華 王彩杰 趙曉嫻 許懷俊

摘要:存儲系統與其自身的高可靠性,在數據中心建設中占有重要地位,但在實際運行過程中會出現,因存儲單點故障造成系統停機、數據丟失等風險。因此,該文以大型綜合醫院為例,通過EMC VPLEX構建雙活數據中心,最大限度滿足Oracle RAC、VMware等系統運行的連續性和高可用性,實現數據中心容災,避免因存儲單點故障造成系統運行風險。
關鍵詞:VPLEX;Oracle RAC;存儲雙活;存儲虛擬化;數據中心雙活
中圖分類號:TP302? ? ?文獻標識碼:A
文章編號:1009-3044(2020)16-0053-02
Abstract:The storage system and its own high reliability, in the data center construction occupies an important position, but in the actual operation process will appear, due to storage single point of failure caused by system downtime, data loss and other risks. Therefore, this paper takes the large general hospital as an example, builds dual-active data center through EMC VPLEX, maximizes the continuity and high availability of Oracle RAC, VMware and other systems, realizes the data center disaster, and avoids the risk of system operation caused by storage point failure.
Key words: VPLEX; Oracle RAC; storage dual-active; Storage virtualization; data center dual-active
與服務器本地磁盤相比,專用存儲設備在可靠性、連續性、磁盤讀寫性能上均有顯著提高。但面對當下大型綜合醫院的業務流轉,高度依賴于信息系統的支撐,手工紙質流程難以適應醫療業務流轉要求,醫院信息系統一旦出現停機,將會造成醫療信息無法及時傳遞,使醫療業務無法正常開展。單套或主備式存儲系統無法滿足核心業務系統對RPO(Recovery Point Object:是指當災難或緊急事件發生時,數據可以恢復到的一個過去的時間點,是衡量業務系統所能容忍的數據丟失量)和RTO(Recovery Time Objective:是指在故障或災難發生后,業務系統重新恢復運行所需要的時間長度)為零的要求。為適應醫療業務對醫院信息系統的連續性要求,雙活數據中心架構解決方案,可實現存儲故障自動切換,當其中一個存儲系統發生故障時,數據會自動讀寫到另一存儲,整個過程自動運行,無須人工干預主備切換,保持數據和應用程序持續在線可用。該文通過大型綜合醫院中Oracle RAC、VMware虛擬化集群在雙活存儲架構下的應用,探討雙活存儲的實踐和運維經驗。
1 存儲雙活應用
1.1 業務系統部署介紹
以大型綜合醫院為例,醫院信息系統(HIS)、電子病歷系統(EMR)通過Oracle RAC集群實現業務高可用,影像歸檔和通信系統 (PACS)、實驗室信息管理系統 (LIS)等其他業務通過VMware虛擬化集群實現業務高可用。具體配置如下:
1)HIS系統基本情況:醫院信息系統(HIS)通過兩臺聯想System X3850 X6服務器,安裝RedHat 6.9操作系統和Oracle 11.2.0.4數據庫,搭建Oracle RAC集群。Oracle RAC雙活架構與傳統數據庫雙機熱備方式截然不同,傳統的數據庫主備模式始終只有一臺服務器在工作,當主服務器出現故障時備服務器才接管主服務器的工作,此時故障主服務器處于空閑狀態。而Oracle RAC是一種雙活模式,也就是說,集群中的服務器是并行運行狀態,可同時接受業務處理請求,因此,Oracle RAC技術既能達到業務高可用目的,又能充分利用計算資源。當集群中一臺數據庫服務器出現故障時,Oracle RAC通過浮動IP技術,將請求自動轉發到其他服務器節點運行,保證業務連續性。同時,傳統的雙機熱備架構出現故障時,常常需要手動或更長的切換時間,而Oracle RAC集群在出現故障時,可自動快速切換,切換后部分客戶端只要重發連接請求即可恢復業務。此外,一臺聯想System X3850 X6服務器,安裝RedHat 6.9操作系統和Oracle 11.2.0.4數據庫,搭建Oracle ADG服務。通過使用Oracle RAC+ADG架構實現物理級備份和災備解決方案。Oracle RAC數據庫架構實現了高可用性、高并發的訪問要求,計算資源得到冗余,但源數據庫還是同一個,當源數據庫出現損壞或異常時,便不能提供數據訪問服務,通過使用Oracle RAC+ADG架構,來保障數據層面的冗余性。三臺HIS服務器主要配置如下(CPU:2*E7-4850v4;內存:128GB;硬盤:3*600GB 10K 2.5英寸SAS;網卡:1Gb網口*4 、10Gb網口*2;HBA卡:雙口16Gb HBA卡*2;RAID卡:12Gbps帶寬支持0、1、5 緩存≥1GB;電源:80+冗余電源)。
2)EMR系統基本情況:電子病歷系統(EMR)通過兩臺惠普DL580 GEN9服務器, 安裝RedHat 6.9操作系統和Oracle 11.2.0.4數據庫,搭建Oracle RAC集群。EMR服務器主要配置如下(CPU:4*E7-4850v4;內存:256GB;硬盤:3*600GB 10K 2.5英寸SAS;網卡:1Gb網口*4 、10Gb網口*2;HBA卡:雙口16Gb HBA卡*2;磁盤控制器:內置smart array P830i/2GB陣列控制器;電源:配置4個冗余電源)。與HIS系統一樣,通過Oracle RAC+ADG架構實現業務系統的高可用性、連續性,保證數據實時備份,有效災備。
3)WMware虛擬化集群基本情況:虛擬化集群通過10臺聯想SR650機架式服務器和8把思科UCS B200 M4刀片服務器,安裝ESXI6.0 U3版本系統,組成VMware虛擬化集群。使用虛擬化集群能有效整合服務器資源,平衡服務器資源利用率,降低信息化設備投入。VMware虛擬化集群的高可用技術更是為醫療信息業務發揮重大作用。用18臺物理服務器組成的虛擬化集群,將集群內的虛擬服務器分布到多臺物理服務器上運行,通過vmotion技術可實現虛擬服務器在線遷移,即將虛擬機服務器在不關閉電源的情況下從一臺物理服務器實時遷移到另一臺物理服務器,從而可以更加方便地維護硬件、減少停機時間。集群HA(High Availability)技術,可實現當集群內物理服務器出現意外宕機時,故障主機上面的虛擬服務器自動在本集群內其他物理服務器上開機運行,保障業務快速恢復。
1.2 基于EMC VPLEX的雙活存儲建設
存儲集群主要為VM虛擬化集群、數據庫等提供統一的存儲環境。為提升系統可靠性,基于EMC VPLEX的存儲高可用和雙活數據中心解決方案,不僅可以幫助醫院實現數據中心間,在線透明遷移數據,同時能融合管理不同型號、不同品牌的異構存儲,有效利用現有資源,降低投入成本。
2 存在的問題
2.1 VPLEX系統升級對高可用影響
通過系統高可用,存儲高可用,網絡高可用,從雙活架構規劃上看,已經滿足數據中心雙活設計要求。但在實際應用中, VPLEX升級重啟系統會導致部分ORACLE RAC節點出現重啟現象,對此,進行細致分析,定位故障原因。通過對比發現,只有HIS系統的ORACLE RAC節點出現系統重啟現象,同樣是ORACLE RAC架構的EMR系統在VPLEX升級重啟過程中運行正常,未出現重啟,同時VMware虛擬化集群內的虛擬服務器也運行正常,說明數據中心雙活架構對EMR和VMware虛擬化集群的雙活保護是有效的。從VPLEX和HIS主機的日志分析來看,每個主機上的VPLEX LUN都有8條路徑,在NDU(無中斷升級)中VPLEX director A先發生重啟,在director A重啟成功后,director B再發生重啟。而對應的主機上發生的變化就是每個LUN的8條路徑中的4條,在director重啟時會dead,這是預期中的,不會影響I/O訪問。但是,主機HIS_RAC1和HIS_RAC2在VPLEX director A重啟時發生了重啟,而HIS_RAC2在director B重啟時又發生了重啟,分析可能與RAC的配置有關,縮小故障定位范圍,對比HIS、EMR的ORACLE RAC配置情況,發現EMR主機HBA卡的IO超時dev_loss_tmo值為15,HIS主機HBA卡的IO超時dev_loss_tmo值為30。HIS主機HBA卡的IO超時時間未小于RAC心跳仲裁時間,最終導致仲裁失敗,HIS主機重啟。
3 解決方法
經過分析把故障定位于,因主機HBA卡的IO超時時間未小于ORACLE RAC仲裁時間,而引起仲裁失敗,發生主機重啟事件。通過修改HIS主機HBA卡的IO超時dev_loss_tmo值為15,避免再發生類似故障。
4 總結
實現數據中心雙活,不僅依賴于應用程序、操作系統、網絡系統、存儲系統的全方位雙活架構設計,也要關注各系統模塊之間的整體協同性,當設備故障需要自動切換時,各系統之間仲裁時間的設定將直接影響,雙活數據中心架構遇到故障時能否正常切換。面對復雜的數據中心雙活架構,設計時應充分考慮細節,實踐時需多維度測試,以保證數據中心雙活架構的有效性。
參考文獻:
[1] 張俊茸.基于存儲雙活技術的數據中心設計和應用[J].信息與電腦(理論版),2019(15):147-148.
[2] 胡榜洪.醫院雙活數據中心容災模式建設的探索與實踐[J].信息與電腦(理論版),2019(15):183-185.
[3] 季貝貝.關于服務器虛擬化在醫院信息化系統中的研究與應用[J].科學與信息化,2019(13):148-150.
[4] 孫國強,金劍,李寧.基于存儲虛擬化技術的數據容災平臺設計與實現[J].信息系統工程,2019(4):139.
[5] 周錦.基于服務器虛擬化技術和存儲虛擬化技術的醫院雙活數據中心的建立[J].科技風,2018(32):95,99.
[6] 陳曉亮.虛擬化技術在醫院信息化建設中的應用探究[J].電腦知識與技術,2018,14(13):202-203,207.
【通聯編輯:梁書】