周 瑜 吴雨哲
云南省普洱市人民医院信息中心 云南 普洱 665000
医院信息化的发展对医院信息系统的服务能力提出了更高要求,提供7*24小时的高可用性服务,避免业务中断是医院信息部门重点考虑的问题。为了应对系统停机、业务中断等风险,多数医院建设了,以数据复制技术为基础的容灾数据中心,容灾数据中心架构均以灾难情况下的站点整体切换为第一目标,这种技术强调灾难情况下的站点恢复能力,但往往由于底层数据复制配置、网络环境、相互依存服务等方面的限制,无法顺利实现单个业务应用系统或主机的透明切换和迁移。而双活数据中心的特点是两个数据中心都是在线运行的,如果断了一个数据中心,另外一个数据中心还是在正常运行的,对用户来说是不可感知的,业务几乎不受影响。并且通过资源整合的双活数据中心的服务能力是双倍的。
图一
目前医院已上线HIS、EMR、LIS、PACS、病理系统,HERP、护理信息系统,OA、体检系统、心电系统,手术麻醉系统、重症监护系统、血液透析系统等共75个系统157个功能模块,覆盖了医院百分之九十五以上的业务。
图一为医院的系统网络服务架构。核心A和核心B采用双机冷备的工作形式,oracle服务器采用RAC实例集群服务模式,其他服务运行在VMware虚拟化服务器上,存储采用SAN加存储阵列的形式。
此网络架构的服务模式有其本身的局限性:核心交换机出现故障时交换机的切换势必会影响到医院全部业务的使用,网络服务承担故障的风险率相对较低;存储阵列虽然做了RAIDlevel,Oracle服务器和V Mware集群虽然做了虚拟化处理,但是他们容灾能力是有限的。如果机房出现较大的基础设施损坏,例如整个机房被毁,这样全院的业务都无法得到保障。所以如何在最短的时间成本上,最完整地恢复系统,保障医院业务 正常运行,降低数据丢失风险,是双活数据中心的目标。
基于原网络结构进行优化与改造,设计新的网络服务架构,应用虚拟化,云计算,分布式网络存储等技术实现网络双活、业务双活、存储双活的高性能、高可用的双活数据中心。实现了服务器、存储、网络端到端冗余,最大程度的保障医院业务系统的稳定运行。新的结构图如图二所示。
3.1 网络双活 采用华为CSS(Cluster Switch System)集群交换系统技术,将两个中心的核心交换机通过网络堆叠的方式进行虚拟化管理,集群对外表现为一台逻辑交换机,控制平面合一,统一管理,集群内核心A出现故障,核心B可以接管CSS的控制和转发,避免单点故障;两台设备间冗余备份,提高网络服务的可靠性。CSS在简化网络、提升转发性能的同时没有带来任何网络功能的损失。物理交换机具有的所有功能,都在CSS系统下得到继承,且性能还得到了放大。CSS拥有的这些特质,使它得到了越来越多的认可和接受,并成为了部署简单、高效网络的首选方案。CSS模式如图三所示
图二
3.2 业务双活 采用服务器虚拟化架构解决方案,可以在两个数据中心之间构建一个计算资源池,每个数据中心分别部署6台物理服务器,安装Vmware虚拟化软件,将两个数据中心的12台服务器配置成为一个Vmware HA集群,能够支持多个医院应用系统的正常运行,最有效的利用服务器资源,节省采购和运维成本,降低管理复杂度。同时在构建的Vmware HA集群中,任何一台物理服务器发生故障发生故障,该服务器上的虚拟机会平滑迁移到其他的物理服务器上,保障了医院业务系统的稳定运行。
图三
对于最关键的HIS、EMR、PACS等业务系统,采用物理机构建Oracle RAC的方式,在两个数据中心分别部署一台服务器来运行Oracle数据库,配置两个节RAC1和RAC2。实现跨数据中心的服务器集群,任何一台Oracle数据库服务器或数据中心发生故障,RAC节点会自动飘移,客户端不受影响能继续访问医院的HIS、EMR、PACS等数据库,确保医院业务的稳定运行,实现业务连续性。
3.3 存储双活 一个完整的双活数据中心要求业务、网络、存储所有层面实现双活,其最核心部分是存储双活。存储双活通过存储虚拟化技术实现,存储虚拟化技术通过输入输出重定向和存储地址重编排来实现。存储虚拟化可作为应用服务与存储设备之间的逻辑层,其主要任务是捕获应用程序 输入输出指令并重定向,对所有存储空间统一编址,并在这一基本机制衍生其他高级功能。存储双活技术中的硬件解决方案在高可用、高性能、高扩展性方面比软件方案都更具优势,当前业界具备相当多的成熟案例。
在数据中心1和数据中心2各部署一台OceanStor SNS2624交换机,组成一个VIS集群,为两数据中心主机业务同时提供读写服务。同时,在数据中心1和数据中心2各部署一套华为Ocean Stor Dorado 5000 V3存储,部署为双活模式,为两数据中心业务主机同时提供读写服务。两个数据中心的磁盘阵列都由VIS集群接管,利用VIS镜像技术对两中心的磁盘阵列做镜像冗余配置,实现两个数据中心存储数据实时镜像,互为冗余。任意数据中心故障,数据零丢失。结构设计图如图四。
图四
如图四所示,两个双活的存储整列间当存储链路出现故障时,阵列已经无法实时镜像同步,此时只能由其中一套阵列继续提供服务。为了保证数据一致性,在第三方站点布置一台仲裁机,通过仲裁机制决定由那套存储继续提供服务。
真正的双活数据中心,要从上到下各个层面都要实现双活,当任何一个中心的单点如服务器、网络、存储出现问题时都能无缝的切换到另外一个中心。双活数据中心随着技术的进步肯定会实现得更加完美,将来随着云计算技术的广泛运用,有可能实现多活数据中心或者云数据中心,为各单位提供更高的资源利用率、更加完美的容灾方案以及更加动态灵活的硬件扩展。