同城双中心灾备系统建设技术研究
2022-11-07朱润娟肖菊香陈小娇张小文
朱润娟,肖菊香,陈小娇,张小文
(成都飞机工业(集团)有限责任公司,四川 成都 610091)
作为信息化平台的运行载体,数据中心承载了主机系统、存储系统、网络系统、安全设备及动环系统等一系列信息化要素。在日常运行过程中,为了解决如服务器死机、数据库宕库、系统病毒感染、运维人员误操作、存储设备损坏等这些原因导致的业务系统停机或者业务数据丢失等情况,IT人员会利用技术手段搭建专业的数据备份系统,通过合理的策略调度,将生产数据从应用主机的硬盘或磁盘阵列备份到专用的备份存储或物理磁带库设备,从而保障业务数据的安全,可应对单数据中心的数据破坏或数据丢失情况。但如果发生地震、火灾、恐怖袭击等整个数据中心都被破坏的情况,单数据中心的数据保护明显是不够的,需建立异地数据保护系统,考虑到实施难度和实施成本等方面的因素,目前采用较多的是搭建同城双中心灾备系统,应对跨中心级别的数据破坏,保障数据安全,提高业务连续性和可靠性。
同城容灾,一般是指在一个城市内符合规定距离的不同地点建立2个数据中心(通常2个数据中心之间的建设距离建议在200 km之内)。2个数据中心的功能定位不同:其中一个数据中心定义为生产数据中心,配备信息化平台运行所需的所有软硬件要素,负责为公司科研生产信息系统正常运行提供稳定的平台支撑;另一个数据中心定义为灾备数据中心,配备相应的软硬件备份设备(备份设备可以和生产数据中心一样配置全要素的软硬件设备,也可以仅配备可提供支持核心系统运行的部分软硬件设备),并结合生产数据中心的实际情况搭建同城灾备系统,通过专业软件的自动化调度,定期将生产信息化数据从生产数据中心备份至灾备数据中心,负责对生产数据中心的信息数据、信息系统和信息设备进行容灾管理。当生产数据中心发生灾难或者破坏时,灾备数据中心可以临时或正式接管生产数据中心的部分功能或全部功能,为企业科研生产提供信息化支撑能力,同时可以将备份数据恢复至生产数据中心,并恢复生产系统的正常运行,从而支持科研生产的正常开展。
1 同城双中心灾备系统建设
企业灾备系统建设是一个复杂而庞大的系统工程,涉及到机房基础设施、网络系统、存储系统、主机系统、应用系统等不同层面的规划和建设,每个环节都拥有本专业独立的一套技术体系,实现方式和影响因素各不相同。
1.1 机房基础设施建设
按照理论规划,企业在基础建设时,应该同时规划生产数据中心和灾备数据中心的相关建设,但是实际建设中,考虑到同城灾备系统的建设规模和建设成本等因素,很多企业会优先建设生产数据中心,让生产数据中心优先投入使用,先让科研生产信息化系统稳定运行起来,后面随着企业生产业务的逐步发展,再后一步进行灾备数据中心的建设。
同城灾备数据中心建设的首要问题是机房地理位置的选择,是否满足各种次生灾害的预防要求,如防火、防水、防电磁干扰、防地质灾害等因素,不建议将数据中心建设在强电磁辐射或地震断裂带等自然灾害活动频繁的地区。其次,生产数据中心和灾备数据中心之间的物理距离是否满足同城双中心的建设要求(理论距离范围控制在200 km之内),若生产数据中心和灾备数据中心之间距离较长,其网络链路建设成本较高,不利于数据量较大的生产数据传输,若距离较短,则不能完全实现各种灾难的预防,遇到较大的自然灾难时,可能会同时波及到2个数据中心。再次,是机房基础设施的建设,包括电力接入(双路市电及UPS)、动环能源负载规划、消防给排水、周边交通情况等要与生产数据中心完全分离,以便在灾难发生时,灾备数据中心可以不依赖生产数据中心而独立运行。最后,要考虑灾备数据中心的机房建设是否满足业务安全性及信息化应用系统部署的基本要求,例如机房安防监控如何部署,双中心之间的通信网络如何规划,包括IP网络和SAN网络之间的链路建设,网络线路是否符合冗余设计,网络带宽设置是否满足业务数据的访问需求等。
1.2 网络系统建设
根据其作用不同,网络系统分为计算网络、存储网络和对外服务网络。其中计算网络用来实现同城双中心灾备系统内服务器设备之间的通信,根据计算节点对网络带宽和延迟的不同要求,可以基于千兆、万兆以太网等不同性能的网络构建;存储网络用来实现生产数据中心和灾备数据中心内服务器和存储设备或是存储设备之间的数据通信,通常基于FC、千兆和万兆IP网络(iSCSI、NFS、CIFS等)或是Infiniband网络构建;服务网络用来为互联网或是局域网用户提供服务,对网络带宽要求不高,通常采用百兆或是千兆以太网络即可。
同城灾备网络建设时,为了确保数据传输的安全性和业务系统恢复的可靠性,一般建议在灾备数据中心与生产数据中心之间建立裸光纤网络,并根据业务系统的实际情况选择配套的网络带宽。成熟的灾备网络链路会根据具体的业务功能规划多条光纤链路,包括专用的生产网络光纤链路、存储网络光纤链路、监控网络光纤链路、备份网络光纤链路、管理网络光纤链路等等。一般银行系统、金融行业、大型企业或运营商等会建立自己的专用灾备网络链路,而小型公司会综合考虑生产应用和链路投入成本的问题,一般会选择租用网络链路来进行灾备业务系统的数据传输。
1.3 数据复制传输架构建设
在构建容灾系统所涉及的诸多要素中,双中心之间的数据复制传输技术是关键,必须确保生产数据中心和灾备数据中心的数据及时同步,确保有2份冗余数据,只有保证了数据的安全可用,当生产数据中心发生数据丢失时,应用或是业务的恢复才有可能。正常情况下系统的各种应用在数据中心运行,数据在生产、使用、加工、存储和备份的过程中,数据流会经过应用系统、数据库、生产服务器、生产存储和备份存储全部流程或是其中的几个流程,那数据传输就可以在这些流程的任一层次上实现。具体在哪一层实现,主要和单位对业务应用系统的容灾目标有关,最终是实现数据级的灾备?还是实现应用级的灾备?或是数据级和应用级都要达到的双活容灾?一般应用级的容灾可以通过服务器主机层面或数据库层的数据传输技术来实现,数据级容灾可以通过存储层的数据传输技术来实现,若是双活容灾,不仅需要在主机层、数据库层和存储层都进行技术构建,同时也要求网络层、动环系统甚至中间件等都具备容灾能力,这是个比较复杂、全系统层面的灾备建设。
1.3.1 基于存储设备的数据复制技术
存储层的数据复制传输,要求存储设备必须采用同一厂家同一系列的且都安装有数据复制模块的高端存储平台,在两端存储上安装数据传输软件,两个中心之间通过数据复制软件的调度,完成生产数据中心和灾备数据中心两端存储之间的数据复制,复制可以是“一对一”复制方式,也可以是“一对多或多对一”的方式,而且复制可以是双向的。数据复制是基于存储数据块级别的数据同步,与前端应用无关,数据传输时系统并不会判断数据的具体内容,数据传输软件只要检测到有新的数据块产生就启动数据传输机制,这种方法适用于底层存储结构平台单一、服务器平台构成复杂、上层应用繁多的IT系统架构数据级的容灾方案,不适合于复杂、异构存储平台的容灾场景。一般包括同步复制和异步复制。
同步方式:即生产存储和备份存储之间可以实现数据同步更新,应用系统的数据写入生产存储时,数据复制软件识别到有新的数据块落盘时,立刻调用程序将新的数据块写入备份存储,备份存储写操作完成后,生产服务器才给前方应用返回数据落盘确认信息,即生产存储和备份存储之间可以实现数据同步更新,确保生产端和备份端的数据一致,当生产数据中心发生灾难时,不会造成数据丢失,可实现RPO为零。
异步方式:即生产存储和备份存储之间可以实现数据异步更新,应用系统的数据写入生产存储时,数据块落盘的同时立刻给前方应用返回数据落盘确认信息时,并不会等待数据复制软件将新的数据块写入备份存储,即生产数据先写入生产存储,备份数据会延迟写入备份存储,当生产数据中心发生灾难时,网络中断可能造成最后一次数据并没有写入备份存储,造成生产数据丢失。
1.3.2基于主机系统的数据复制技术
主机层面数据复制技术,主要是在生产数据中心和灾备数据中心的服务器主机之间建立数据传输通道,在生产服务器和灾备服务器上安装专业的主机数据传输管理软件,并根据实际情况配置自动调用策略,通过专业软件的调度定时完成双中心之间的数据复制,当生产数据中心发生数据破坏时,可通过灾备数据中心的服务器恢复备份数据,从而进一步快速恢复业务应用,提高企业应用系统的容灾能力。
主机层面的数据复制技术是基于应用层面的业务级数据同步,与存储层面的数据复制技术不同,它和底层的存储平台无关,并不要求生产存储和备份存储必须同构。只需要在生产服务器和备份服务器上安装专业的数据传输软件,当生产应用数据库和文件系统有数据更新时,数据传输软件将新的应用数据复制到备份服务器端,为了确保数据的快速同步,此技术对主机性能要求较高,且数据复制时会占用大量的主机资源,在数据复制过程中占用了大量较大的CPU、内存和网络资源,严重时会影响应用系统的正常使用,不适合大规模推广,一般较少使用。
1.3.3 基于数据库的数据复制技术
应用系统层一般会选择在数据库层面进行数据同步,数据库作为支撑应用系统运行的核心部分,应用系统的高可用直接依赖数据库的高可用,很多企业的核心应用系统大多是基于数据库平台开发的,数据库承载了应用系统的所有生产数据信息,若数据库平台发生故障,造成数据丢失,短时间内无法修复,将直接影响信息系统的正常运行,单实例节点的数据库架构无法满足应用系统高可用及业务连续性的需求,因此针对数据库的高可用建设是很有必要的。
常用的基于数据库的数据复制技术是通过数据库之间的数据日志同步功能来实现生产数据中心和灾备数据中心之间的数据传输复制,其中以Oracle数据库的Data Guard数据复制技术为代表,需要在生产数据库和备份数据库主机上安装DG软件,通过Oracle数据库的日志同步功能,实现生产数据库和DG备库之间的数据同步。数据传输过程不会占用太多的主机资源,但是为了确保日志数据能及时同步,对生产数据库和DG备用数据库之间的网络要求较高,建议使用万兆SAN网络。由于Oracle-DG同步库的搭建操作较复杂,对DBA的技术要求较高,需要数据库管理人员有丰富的运维经验和扎实的专业知识,并在运维工作中严谨细致,有足够的工作责任心。
Oracle数据库的Data Guard数据复制架构在生产主库构建基于分布式的数据库集群,通过2个节点的RAC数据库对外提供访问服务,同时构建基于Oracle-Data Guard技术的冷备库环境,通过Oracle数据库独有的日志闪回技术能够达到生产主库和冷备库之间的数据库同步,该架构具备几点优势:①RAC集群的2个节点可以自动实现负载均衡,当前端应用系统访问会话数较多时,负载均衡程序会根据会话访问队列进行合理的负载分流,防止会话拥堵,有效提高应用系统的访问效率;②可提供数据库高可用,RAC集群的2个节点可同时对外提供并发访问,若其中一个节点故障后,另一个节点可自动接管数据库的所有业务并继续提供服务,前端业务访问无中断;③故障容错和无缝切换功能,将硬件和软件错误造成的影响最小化;④通过并行执行技术提高事务响应时间——通常用于数据分析系统;⑤通过横向扩展提高每秒交易数和连接数——通常用于联机事务系统;⑥节约硬件成本,可以用多个廉价PC服务器代替昂贵的小型机或大型机,同时节约相应的维护成本;⑦可扩展性好,方便添加删除节点,便于扩展软硬件资源。
构建基于Oracle-Data Guard技术的冷备库环境,生产主库与备库之间采用“块对块”的日志复制进行构建,运行时主、备节点之间通过日志同步来保证数据的一致性,可实现数据库快速切换与灾难性恢复。在对主数据库影响很小的情况下能够实现主、备库的同步,结合Oracle闪回技术可达到如下目标:①通过程序自动化调度,生产集群库与容灾库可进行实时数据同步,实现数据同城容灾的目的;②日常运行中,在没有数据恢复业务的时候,灾备中心的容灾数据库可提供查询、报表类只读服务,因为报表类的业务模块在运行时对数据库的CPU、内存的消耗都非常高,尤其是在业务高峰期时,运行报表类业务更是对系统负载雪上加霜,让灾备库代替生产库承担报表查询业务,可有效减低生产库的访问压力;③当生产中心的RAC集群生产库发生故障时,灾备中心的Data Guard灾备库可快速切换为生产库,提供业务访问,提高生产业务连续性。
2 结束语
建立同城双中心灾备系统是信息安全应急工作的一个重要环节,对于保障企业科研生产安全运行有着重大意义。本文介绍了国家标准对灾难与恢复的相关体系要求,探讨了同城双中心灾备系统建设中基础设施、网络体系和数据存储等方面的技术要点,为企业建设同城双中心灾备系统提供了参考。该如何选择同城双中心灾备系统的建设模式,对于各个企业而言并没有一个统一的模式,每个单位所实施的灾备方案都是依据其业务需求与IT策略来制定的,至于具体方式的选择,要综合考虑实施的复杂度、建设成本、可承受的折中风险等诸多因素,根据不同的要求和应用特性去选择最合适的方案。