【摘要】本文分享了医疗机构基于核心业务系统的双活数据中心建设方案。方法:结合电子病历业务应用场景,对比存储网关双活和无网关双活两种方案的技术架构、投资成本、运维保障成本和应用效果。结果:基于全闪无网关双活结合Oracle RAC + ADG技术构建A-A双活数据中心,可节约投资成本,降低系统复杂度,并大幅提升系统性能。结论:存储无网关双活可简化支撑平台架构,降低投资和运维成本,提高系统可靠性。

背景与现状

某省立医院是省卫生健康委直属的、非营利性三级甲等综合医院,下辖两个院区,年门诊量270万人次,住院量近10万人次。

医院自2014年开始基于VPLEX整合原有VNX5500、VNX5600、CX-480等存储设备建设了A-P(Active-Passive)双活数据中心,并利用RecoverPoint将数据实时同步至第三数据中心机房,实现数据持续保护。

医院电子病历系统部署在VMware虚拟环境下,利用VMware的HA功能实现高可用,服务器采用Windows Server 2008 R2操作系统,数据库采用Oracle 11g,使用NBU备份软件进行数据备份。经过近十年的持续运行,这批设备已经老化,部分存储设备性能落后,无法满足日益增长的业务需求。

同时,电子病历系统大量的病历文书以小文件形式存储在磁盘上,频繁的调阅和写入对磁盘IOPS、响应时延等要求较高,随着医院业务量的持续增长,系统高峰期时常出现业务卡顿,部分时段系统的响应时间在30秒以上,严重影响了临床科室应用体验。

此外,由于现有双活架构复杂,网元数量众多,运行维护成本也较高,为此,医院准备对现有双活数据中心进行升级改造。

双活数据中心是指两个数据中心分别有自己的存储、网络以及服务器资源,两个数据中心同时对外提供服务,整个系统具有业务负载均衡和自动故障切换功能。

在新一代医院数据中心建设中,全闪A-A(Active-Active)双活数据中心已成为多方共识,因为其稳定性高、安全性高、性能高效,可以保障核心业务连续性,保障数据安全性。因此,医院经调研后决定基于全闪存储搭建新一代A-A双活数据中心,以提升数据中心支撑平台能力,满足临床核心业务系统需求。

需求分析

目前,纷繁复杂的数据已经成为医院发展的“第一生产力”,医院核心业务系统每天产生大量门急诊、住院等临床数据,并对可靠性和实时性要求非常高,架构中任何一个节点出现故障都可能影响医院正常诊疗活动的开展。因此,新一代双活数据中心要满足以下要求:

系统性能要求

根据国家相关政策要求,医疗数据需长期在线访问,随着时间的增长,数据量的持续增长会严重拖累数据库性能,再加上互联网诊疗的不断发展,在医院就诊高峰时段,大量业务及就医人员并发访问,如医生站、护士站、自助机、微信小程序等各种数据查询写入,还有临床数据中心、大数据平台数据抽取等,都会带来性能挑战,一旦系统响应变慢,将降低就诊效率,影响患者就医体验。

业务连续性要求

随着医院信息化应用的不断深入,医疗应用的重要程度越来越高,一旦业务系统出现问题,将会对正常诊疗秩序产生重大影响。因此,医院数据中心要具有可靠的解决方案,保证在单个软件、硬件、数据中心故障情况下,核心业务系统仍能连续运行,医院诊疗过程不中断。

数据安全性要求

医院信息系统中保存了HIS、EMR、LIS、PACS等大量的医疗数据及患者隐私数据,一旦遭受损失,其价值是无法估量的。因此,必须建立数据连续保护和容灾备份方案,保障医疗数据在误操作、中病毒等场景下的安全性,确保在数据损坏后能够快速恢复到保护时间点的数据。

业务稳定性需求

稳定运行是医院关键业务系统的核心诉求,系统中断将影响挂号、缴费、就诊、报告查询等,会导致业务无法开展。同时,系统在故障与灾害威胁、无法避免的误操作与逻辑错误时,如何保证关键业务系统不间断运行变得至关重要。另外根据《电子病历应用管理规范(试行)》要求,住院病历保存时间不得少于30年。

在电子病历时代,为满足个体终生健康保障需求,支持大数据时代的医学研究,医疗数据的保存期限需要更久而且要保证数据不能丢失。

容灾备份要求

《全国医院信息化建设标准与规范(试行)》规定,三级甲等医院容灾备份应满足:关键业务信息系统复原时间目标(RTO)≤15分钟,复原点目标(RPO)≤10分钟。

《医院信息系统软件基本功能规范》也明确规定:“门诊信息系统恢复时间在5—10分钟之内、支持7x24小时工作等”。《医院信息互联互通标准化成熟度测评方案(2020年版)》对存储灾备能力要求为四级甲等RTO≤0.25h,RPO≤0.25h。根据这些政策文件的要求,新建双活数据中心容灾备份应至少满足RTO≤10分钟,RTO≤10分钟。

架构设计

数据中心双活分为存储网关双活和无网关双活。存储网关双活能充分利用现有不同品牌和型号的存储设备,实现统一管理,方便扩容和数据迁移,但存储网关架构多了一层网关设备,增加了采购成本和故障风险点,维护难度也增加不少。

此外,存储网关双活在高可用架构上基本以A-P为主,整体性能受限于网关性能和架构中最差的存储,无法满足日益增长的业务系统性能需求。无网关双活即无需额外部署网关设备,直接使用两套相同存储阵列组成跨站点集群系统,通过主机多路径软件,将两台存储阵列上的双活成员LUN聚合为一个双活LUN,面向应用服务器提供无差异的A-A并行访问能力,无需网关设备转发,可以减少故障点,还具有组网简单、便于维护的好处。

根据以上需求,医院基于投资成本、架构复杂性和运维压力考虑,并充分利用原有网络基础架构,经调研后决定采用无网关双活数据中心架构。具体架构图如图1所示:

存储层面

在5号楼和6号楼两个数据中心机房各部署一台华为OceanStor Dorado全闪存储,基于HyperMetro技术对两台磁盘阵列做镜像冗余配置,实现无网关A-A存储双活架构,每个数据中心的存储可同时提供读写服务。

当任何一台存储阵列故障时,业务自动无缝切换到对端存储访问,业务访问不中断。任意数据中心单个存储故障时,另一台存储设备仍能保存相同数据,最大化保障业务连续性。同时,为了提升存储空间利用率,启用数据重删压缩功能,减少数据占用的空间,提高每TB可用空间性价比。

网络链路层面

在网络链路层面,医院前期在基于VPLEX的双活数据中心建设时已利用OSPF路由协议实现负载均衡,并基于HSRP热备份路由协议实现链路聚合,数据中心之间已实现大二层打通,为业务双活提供条件。

两个数据中心之间通过裸光纤直连,存储、交换机和服务器通过专用的SAN网络互联,均采用冗余方式组网。两个数据中心的交换机通过FC互联,利用其高效率和可靠性来保障存储之间实时同步数据。

计算应用层面

原有电子病历系统依赖于虚拟化的HA功能实现高可用,同一时间只能有一个节点对外提供服务,无法满足大量并发业务的应用,而且备份时间对业务系统影响较大。

因此,医院在两个数据中心各部署一台安装0racle Linux操作系统的物理服务器,组成Oracle RAC负载均衡故障转移集群,配合0racle自动存储管理ASM功能对两个数据中心的存储提供外部冗余(External Redundancy)模式管理,实现跨数据中心的负载均衡和自动故障转移功能。

同时利用 Oracle ADG(Active Data Guard) 技术配置只读副本,完成主备库实时同步,实现零数据丢失保护,并满足高性能、高可靠性、读写分离等需求。

两个数据中心的应用使用独立的虚拟化集群,通过流量入口控制进行集群DRS负载均衡及HA主备故障切换,从而在应用层面实现双活。

双活仲裁部署

在早期的双活架构中,医院仲裁设备部署在6号楼数据中心,因运维人员理线误碰导致心跳网络中断而出现脑裂的情况,为此医院完善了第三容灾机房设施,并部署了独立的物理服务器(当然也可以使用虚拟机)作为仲裁设备,避免单数据中心整体发生灾难时,仲裁设备也一并故障。

同时,利用华为OceanStor Dorado全闪存储提供的静态优先级模式设置优先存活站点,实现双仲裁保护能力,保障业务系统数据安全。此外,服务器及虚拟化集群之间的仲裁也部署于该容灾机房。

容灾备份方面

利用存储的HyperCDP特性,启用高频快照功能,每三秒生成一个快照,并将快照日志实时同步至第三容灾数据中心,该中心部署了华为混闪存储来存放快照日志,以节约采购成本,同时能满足数据持续保护要求。

在数据恢复时,可以通过文件系统共享挂载直接访问,实现RPO=0,RTO≈0,满足互联互通、电子病历评级及相关政策对RPO和RTO的要求。

同时还部署了具有重删压缩功能的备份一体机,通过RMAN(Recovery Manager)接口对ADG副本进行备份,确保极端情况下数据的可恢复。

应用效果

全闪存储加速,保证核心业务性能要求

原有存储设备(配置600GB SAS硬盘60块,900GB SAS硬盘15块,3TB NL_SAS硬盘15块)IOPS仅有6.8万,而华为OceanStor Dorado全闪存储(配置15块3.84TB NVMe固态盘)实测IOPS达到23万,系统响应速度提升3倍以上,有效降低了电子病历等核心业务系统事务处理时延。

医院电子病历系统迁移至新双活架构后,系统响应速度明显提升,就诊高峰期业务从未出现卡顿情况,连调阅数据量最大的应用也能在3秒内完成,明显改善了信息系统的使用体验。

另外,华为OceanStor Dorado全闪存储具有较好的横向扩展能力,可满足未来不可预期的业务增长,并提供丰富的数据保护服务,在不影响业务系统性能的情况下充分发挥固态硬盘的优势,提供高性能、高可靠、高可用的存储系统,保障核心业务7x24小时稳定在线。

真正A-A双活,保障业务连续性要求

医院原有基于VPLEX建立的AP双活数据中心,部分业务以数据中心A为主以数据中心B为备,部分业务以数据中心B为主以数据中心A为备,并不是任何数据中心中所有业务都同时对外提供服务,两个数据中心中每一个时刻只能有一个业务在运行中,并非我们部署双活数据中心的真正目的。

而此次构建的A-A高可靠双活架构,两个数据中心可同时承担起所有对外访问的业务,做到业务负载均衡的同时故障可无缝切换,没有主备之分,共同承担业务,存储资源利用率和读写性能提升100%;若一个数据中心发生意外,另一个数据中心将自动接管业务应用,整个数据中心可实现无感知切换,数据零丢失,业务零中断,提升了数据中心整体对外服务能力。

秒级数据保护,满足容灾备份要求

随着医院信息系统的快速发展和业务大集中,医院数据中心容灾备份的压力也越来越大。医院原有的持续数据保护设备虽然可以实现RPO=3秒,但是随着数据量快速膨胀,RTO已经将近25分钟,一旦发生灾难事件,将导致医院业务处理停顿,给医院带来巨大的经济和名誉损失,甚至引起医疗纠纷。

此次基于全闪存储搭建的无网关A-A双活数据中心架构,可以实现RPO=0,RTO≈0,保障核心应用不受宕机困扰,关键业务又快又稳。另外,还部署了具有重删压缩功能的备份一体机,降低网络备份流量,提升备份效率,并满足电子病历应用水平分级评价五级对容灾备份的要求。

简化双活架构,降低采购和运维成本

利用存储设备自带的HyperMetro特性实现无网关A-A双活架构,无需额外采购网关设备及进行复杂的配置,至少为医院节约100万的采购成本,并减少了故障节点,简化组网和管理,减轻后台运维压力。

同时,两个数据中心的全闪存储互为镜像,数据可以在两台存储之间实时同步,并能在单台设备故障切换时实现业务无感知,确保医疗关键业务的连续性。

另外,此方案充分利用现有硬件基础实施,无需对现有网络架构、业务系统、运维方式进行变动,为医院节省大量人力和时间成本。

读写分离,减少对生产系统影响

在电子病历系统原有基于HA的高可用方案中,临床数据中心在抽取电子病历文书内容时,为减少对业务系统的影响,采用定时抽取机制,避开业务高峰,致使临床数据中心与电子病历生产系统存在半天的数据差,一定程度上影响了临床诊疗系统的应用效果。

此次基于Oracle RAC + ADG技术实现应用双活,临床数据中心抽取电子病历文书内容及容灾备份均通过只读副本完成,不对生产系统造成任何影响,而且数据抽取可以同步进行,实现临床数据中心与业务系统数据几乎一致,为医生提供更加及时的决策信息支持,提高医疗质量和安全性。

总结

在双活数据中心建设过程中,我们必须要考虑两数据中心业务系统之间相互调用、应用解耦问题,两数据中心彼此可完全脱离对方独立运作,对外提供服务,且数据可以保持一致性,即业务双活的应用架构从底层基础设施到高层应用是完全解耦的。

本次搭建的全闪无网关A-A双活架构正是秉承这一理念,不仅带来了性能和可靠性的提升,同时还简化了支撑平台架构,降低投资和运维成本。

考虑到南院数据中心现状,以及两地的网络时延问题,目前两院区尚未实现大二层网络互通,不能实现两院区双活。但南院正在进行数据中心机房建设,按照医院“顶层设计、分步实施、全面融合、有效支撑”的信息化建设原则,待南院数据中心机房建成后,本方案可平滑升级到同城三中心架构,满足医院高质量发展的要求。

另外,伴随着信息和网络技术的跨越式发展,医院信息系统的智能化程度越来越高,新兴IT技术的使用越来越广泛。但由于医院业务的专业性,医疗业务流程的复杂性,造成医院信息化的复杂程度非常高。在数据中心建设过程中,我们也不能一味追求新技术、性能指标,而要根据医院实际的网络和业务情况,做好顶层规划,并能化繁为简,使自身IT技术人员能从容驾驭,以免被IT厂商或IT技术绑架。

  • 无标签
写评论...