大型医院信息系统的容灾设计和应用
2011-02-14翁锦阳何萍朱铁兵
翁锦阳,何萍,朱铁兵
上海交通大学医学院附属瑞金医院计算机中心,上海 200025
大型医院信息系统的容灾设计和应用
翁锦阳,何萍,朱铁兵
上海交通大学医学院附属瑞金医院计算机中心,上海 200025
容灾的实质是通过各种容灾技术和手段保持信息系统业务的持续性。本文介绍了我院信息系统的容灾设计和10余年的运行经验,总结出了适合大型医院使用的容灾系统设计方案,并详细说明其了原理和实现过程。
医院信息系统;容灾技术;存储局域网
1 医院信息系统的容灾目的和需求
当前,大型医院已普遍建有医院信息系统,并已成为医院高效、有序开展医疗服务的基本保障。由于大型医院全年365天、全天24h不间断服务和高峰期业务并发量大的特点,一旦信息系统发生故障,整个医院的业务将陷于瘫痪,因此对医院信息系统的运行安全性和连续性提出了很高的要求。为此,医院信息系统的容灾设计对于大型医院来说显得尤为重要。
医院信息系统的容灾目的,不仅是确保数据的完整性,还要保障关键业务运行的持续性。即当医院信息系统发生故障时,仍能够不间断地或尽可能快地恢复提供关键业务支持,并尽可能避免关键数据的丢失,以保证医疗业务的正常运行。
系统的容灾设计有两个评价标准:恢复时间目标(RTO,在灾难发生后需要恢复的紧迫性)和恢复点目标(RPO,在灾难发生后恢复运转时数据丢失的可容忍程度)。RPO针对的是数据丢失,而RTO针对的是服务丢失。即系统容忍丢失的数据量越小,RPO的值越小;系统服务的紧迫性要求越高,RTO的值越小。由于医院承担救死扶伤任务的特殊性,决定了医院信息系统对RPO和RTO具有很高的要求。
2 医院信息系统的容灾设计和实现
医院信息系统有计算、传输和存储三大核心资源。计算资源主要包括具有计算能力和业务处理能力的服务器。传输资源主要包括网络和各类网络交换设备。存储资源主要包括存放数据的各类存储设备。医院信息系统的容灾设计重点就是要保护这三种核心资源。
2.1 计算资源的保护
计算资源的传统容灾方式主要是通过采用服务器群集技术来实现的。以典型的三层架构(一般将医院信息系统架构由上至下划分为表示层、业务逻辑层和数据访问层)分别独立部署在服务器或服务器群集上运行为例介绍:
位于数据访问层的数据库服务器采用基于共享存储的双机热备方式。两台数据库服务器可以采用互备、主从、并行等不同的方式。在工作过程中,两台服务器将以一个虚拟的IP地址对外提供服务,依工作方式的不同,将服务请求发送给其中一台服务器承担。同时,服务器通过心跳线侦测另一台服务器的工作状况。当一台服务器出现故障时,另一台服务器根据心跳侦测的情况做出判断,并进行切换,接管服务。这一过程可自动在短时间内完成(分钟级),对业务不会造成影响。由于使用共享的存储设备,因此两台服务器实际上使用的是一样的数据,由双机或集群软件对其进行管理。通过服务器群集的方式,能够以较短的时间在部分计算资源发生灾难后恢复,保障业务系统持续稳定地运行。
在上两层中——业务逻辑层(应用服务器)和表示层(页面服务器)由于只提供应用服务和用户访问界面,并不保存数据,一般不需要使用共享的存储设备,而应配置多台服务器建立负载均衡机制:一是避免在这两层上出现单点失效,实现容灾;二是可以为用户提供更好的访问质量、提高服务器响应速度。
对于服务器供电中断这类故障,可通过UPS的冗余并联实现快速甚至无缝的灾难恢复。UPS冗余并联实现了若干UPS设备本身的灾难恢复,一旦主机故障停机,系统自动选择作为从机(哪台先开哪台就是主机,而后开机的都是从机)运行的另一台UPS接替主机的工作,保持供电不间断。
2.2 传输资源的保护
传输资源的保护主要通过虚拟路由技术,以及双链路冗余和负载均衡来保障系统容灾的RTO。虚拟路由技术中最具代表性的是VRRP(虚拟路由冗余协议),可将一组用于医院信息系统服务器与客户端通信的路由器协同工作,共同构成一台虚拟路由器。该虚拟路由器对外表现为一个具有唯一固定IP地址和MAC地址的逻辑路由器。处于同一个组中的路由器具有两种互斥的角色:主控路由器和备份路由器。一个组中有且只有一台处于主控角色的路由器,可以有一个或者多个处于备份角色的路由器。VRRP协议使用选择策略从路由器组中选出一台作为主控,负责ARP响应和转发IP数据包。组中的其它路由器作为备份角色处于待命状态。当主控路由器发生故障时,备份路由器能在几秒钟的时延后升级为主路由器。由于此切换非常迅速而且不用改变IP地址和MAC地址,故对医院信息系统客户端用户是透明的。
通过合理的网络设计,也能到达备份和负载均衡双重效果。比如让两台路由器同时属于互为备份的两个组:在组1中路由器A为IP地址所有者;组2中路由器B为IP地址所有者。将客户端1的默认网关设定为路由器A;客户端2、客户端3的默认网关设定为路由器B。这样既分担了设备负载和网络流量,又提高了网络可靠性。同样可以利用如Port-channel等技术实现链路的冗余和负载均衡。
2.3 存储资源的保护
存储资源由于承担保存医院信息系统数据的功能,建议在数据库服务器群集中采用双存储阵列作为共享存储(双链路双控制器冗余的存储阵列最佳),并以镜像方式同步。这样,即使作为共享存储的其中一个盘阵离线,服务依然能够无间断运行。
此外,可利用连续数据保护技术(CDP)对医院信息系统数据进行备份,此技术可以捕捉到一切文件级或数据块级别的数据改动,可以对备份对象进行更加细化的粒度的恢复,可以恢复到任意时间点。硬盘部分,设置RAID容错报错,且有热拔插功能,一旦硬盘毁损,立刻抽换硬盘,系统仍可正常运作,无需中断或关机。
2.4 建立异地灾备中心
上述技术手段实现了医院信息系统的本地容灾,但对于机房遭遇火灾等大型灾害,本地容灾则显得无能为力。有鉴于此,应当在数据中心所处的建筑之外建立异地灾备中心,将重要性高的应用实现异地数据容灾。由于现在存储局域网(SAN)的发展,使得数据备份过程可以在SAN中实现,以满足异地容灾需求。数据中心和异地灾备中心直接通过专用存储网络进行连接,生产系统的数据实时地通过专用的存储网络传输到灾备中心存储。由于数据的备份过程不经过主机系统所在的网络,因此不会对生产系统的网络有任何影响。
虽然异地数据容灾可以保障在生产系统设备遭遇严重损坏情况下的数据完整性,但该方案的系统恢复时间较长,业务支持连续性较差,较适合对实时性要求相对较低的业务应用,如出院结算服务、行政办公服务等。
对实时性要求高的应用,如门急诊结算应用,应实现异地的应用级容灾。即在异地灾备中心建立一套与生产系统相同的备用系统,不但通过SAN实现数据的备份,还应搭建一套备用的应用服务器,并与客户端间采用双网络回路。即使数据中心主核心路由器完全停止工作,网络线路仍可以快速切换到通向灾备中心的链路,客户端程序也可以通过容灾系统的路由连接到备用数据库,可使应用系统得以在30s内恢复运行,RTO值很小。
2.5 部署持续数据保护软件
上述技术可以有效降低或防止自然灾害、设备损坏对医院信息系统造成的破坏,但人为破坏(误操作、蓄意破坏等)同样会给医院造成不亚于前两者的损失,而上文提到的技术对此无能为力。
为防止此因素造成的破坏,需要在存储资源和计算资源上部署持续数据保护软件(CDP),它可以提供连续的恢复点,能够存取任何时间点上的数据,而不仅仅针对那些由快照流程预先确定的特殊时刻。
3 医院信息系统容灾的日常管理
除通过技术手段建立医院信息系统容灾方案以实现信息系统高可用性之外,信息系统日常管理的重要性也不可忽视。平时应定期对机房巡检,通过查看设备状态灯以及各类日志(包括操作系统、数据库、服务器和存储硬件监视软件、路由交换设备),分析系统当前的健康情况。对操作系统以及数据库的用户和密码进行严格管理,及时删除不再使用的帐户,定期更改密码。及时更新杀毒软件病毒码,不推荐被杀毒软件扫描的目录和文件(如数据库系统和数据文件),应当及时将其列入排除列表,以免严重影响系统性能和杀毒软件误删文件后造成系统崩溃。定期进行灾难恢复演练,确认恢复点及容灾方案在发生各种故障后的可用性。综上所述,日常的管理措施可以尽量减少系统故障点,防患于未然,避免不必要的系统恢复工作。
上述医院信息系统的容灾方案,是笔者所在医院的信息系统容灾建设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