应用级灾备的实现方法V1.0.doc

 

 应用级灾备的实现方法V1.0.doc

 

当前,灾备系统建设主要分为数据级灾备和应用级灾备两大类。数据级灾备关注数据的备份和恢复,是应用级灾备的基础和前提;而应用级灾备则在数据级之上,进一步提供业务接管和恢复能力。

应用级灾备包括两个方面:数据同步和应用接管。数据同步是应用接管的前提。在保证数据同步基础上,要实现应用接管,还要能实现灾难发生时的网络切换和应用切换。

本文将从数据同步和应用接管这两个方面来讨论应用级灾备的实现方法。

1    数据同步

数据的同步是应用接管的基础,保障数据同步的完整性和实时有效性才能使得应用的接管有意义。数据的同步主要分为两大类,第一类是基于磁盘阵列的复制软件实现,比如EMC MirrorView镜像功能、H3C ReplicationIP复制功能等,第二类是基于服务器或者应用软件(应用层)实现,比如Oracle DataGuard组件、GoldenGate数据库复制软件、Veritas VVR软件等。不管采用何种技术,都只是在不同的层面实现了数据的同步,要达到应用接管的目的,还需要实现网络切换和应用切换。从中我们可以了解到,应用层的数据同步和应用级灾备是有区别的,这也是经常会被混淆的地方。

在现实环境中,我们最常见的应用级灾备方案是“磁盘阵列的数据复制+备用服务器”,也就是通过磁盘阵列来实现数据同步,通过备用服务器提供业务接管能力。

磁盘阵列同步有以下主要特点:

Ø 可以实现对所有数据的灾备,支持所有的数据类型,是最全面的灾备保护方式;

Ø 基于存储设备进行灾备,可以有效的解决对数据库服务器和各种应用服务器的计算资源的占用问题;

Ø 部署简单,无需更改原来的文件系统。维护也更加简单,维护好存储灾备系统就可以。

 

基于服务器或应用软件的灾备,例如VVR主机复制方式,有以下特点:

Ø 对原系统改动巨大,需要重建原系统的数据和文件系统,对原有数据造成破坏,需要提前做好大量的数据迁移工作;

Ø 对软件要求较高,生产中心和灾备中心的每一台服务器上都要安装专门的软件,部署成本较高,在服务器扩展的时候,成本会直线上升;

Ø 灾备软件和应用软件、操作系统之间可能存在版本冲突、兼容性问题,这个问题长期存在,在扩容的时候更加需要考虑,有可能导致应用系统受到限制或扩展受到影响;

Ø 对主机的性能占用和消耗;

Ø 每个服务器对应一个节点,在管理和维护方面增加了复杂性;

Ø 数据复制采用异步的方式,在网络故障的情况下,会造成同步数据的不一致,导致数据不可用或无法访问;

因此,数据同步从实现效果、成本、维护、资源占用、对原系统的影响几个角度来看,从磁盘阵列层面实现都要优于通过主机软件方式实现。通过磁盘阵列进行数据同步之后,可以通过备用服务器的启用实现应用的切换,配合管理者的切换决策也更加方便,并能够有效降低误切换带来的风险。

 

2      应用接管

在数据同步基础上,可进一步考虑网络切换和应用切换,来实现应用级灾备。

2.1 网络切换技术

应用级灾备要求提供冗余的网络线路和设备。正常情况下,客户端通过生产中心的业务网络访问生产中心的应用服务器;在发生灾难时,通过网络切换,客户端能够访问到灾备中心的备用服务器。

目前,网络切换技术主要有以下三种:

(1)基于IP地址的切换

生产中心和灾备中心主备应用服务器的IP地址空间相同,客户端通过唯一的IP地址访问应用服务器。在正常情况下,只有生产中心应用服务器的IP地址处于可用状态,灾备中心的备用服务器IP地址处于禁用状态。一旦发生灾难,管理员手工或通过脚本将灾备中心服务器的IP地址设置为可用,实现网络访问路径切换。

(2)基于DNS服务器的切换

在这种方式下,所有应用需要根据主机名来访问,而不是直接根据主机的IP地址来访问,从而通过域名实现网络切换。

对于对外提供服务的业务,可通过向运营商申请相应的DNS服务器,对主生产中心和备用生产中心各申请相应的DNS服务,通过运营商DNS切换机制实现对外服务的切换。

对于内部提供的业务,生产中心和灾备中心各自部署一台DNS服务器,负责所有主机的域名解析。生产中心的为主DNS服务器,灾备中心的为备份DNS服务器,两台DNS服务器的内容自动保持完全同步。对于每个应用服务器的域名,DNS服务器上可以保存两个IP地址,主IP地址指向生产中心应用服务器的IP地址,备份IP地址指向灾备中心服务器的IP地址。

在所有的客户端上设置这两个DNS服务器(可通过DHCP服务器自动分配)。系统首先查询主DNS服务器,如果没有应答,就查询备份DNS服务器。

当生产中心的主服务器出现故障,主DNS服务器发现无法联系到主服务器时,会自动将DNS请求解析至灾备中心服务器的IP地址,从而实现单个应用的自动切换。

当生产中心发生火灾、地震等灾难,导致整个生产中心不可用时,客户端因为联系不上主DNS服务器,会自动将地址解析的请求发往备份DNS服务器。备份DNS服务器通过存活状态检查确认生产中心的主服务器已经不可用,就将灾备中心的服务器IP地址作为DNS应答,从而将所有应用切换到灾备中心。

(3)基于负载均衡设备的切换

通过在服务器集群前端部署一台负载均衡设备,根据已配置的均衡策略将用户请求在服务器集群中分发,为用户提供服务,并对服务器可用性进行维护。

负载均衡能够按照一定的策略分发到指定的服务器群中的服务器或指定链路组的某条链路上,调度算法以用户连接为粒度,并且可以采取静态设置或动态调配的方式。

负载均衡设备能够针对各种应用服务状态进行探测,收集相应信息作为选择服务器或链路的依据,包括ICMP、TCP、HTTP、FTP、DNS等。通过对应用协议的深度识别,能够对不同业务在主生产中心和灾备中心之间进行切换。

这三种网络切换方式比较如下:

网络切换方式

基于IP地址

基于DNS服务器

基于负载均衡

切换方式

手动或半自动

自动

自动

切换时间

10-30分钟左右,与服务器数量相关

10分钟左右

分钟级

技术成熟度

成熟

成熟

一般

实施案例

较多

较多

设备投资

增加2台DNS服务器

在数据中心前端交换机上增加负载均衡板卡

单个应用和整个子网的切换

适合整个子网切换

适合单个应用和整个子网切换

适合单个应用和整个子网切换

 

在以上三种网络切换方式中,基于IP地址的切换方式较简单,实现成本低,但是对于拥有较多服务器的灾备中心而言,手工更改大量IP地址和网络配置需要比较长时间,因此这种方式适合于只有少数应用服务器的场合;基于DNS的切换方案,从技术上讲较成熟,应用也较多,而且能够实现网络切换的全自动,但是需要增加两台DNS服务器的投资;而基于负载均衡的切换,需要增加负载均衡板卡,但是切换能够精细到业务和服务内容,因此,在大型数据中心情况下,也可采用负载均衡的方式进行应用之间的切换。

 

2.2 应用切换技术

应用切换是指生产中心由于发生灾难而瘫痪时,可由灾备中心的备用服务器提供业务接管,确保业务运行的高连续性。

实现应用切换的前提条件是:

l  数据已经从生产中心同步到灾备中心;

l  灾备中心配置与生产中心对应的应用软件服务器、数据库服务器和中间件服务器等,且运行正常;

l  灾备中心网络运行正常或能够实现正常切换。

应用切换技术主要有以下几种:

(1)双活数据库技术

部分数据库复制容灾软件,能够实现生产中心和灾备中心数据库双活,即灾备中心的备份数据库也处于Open状态,客户端可对灾备数据库进行只读访问(例如GoldenGate、DSG等数据库复制软件)。生产中心和灾备中心数据库保持双活,可提高灾备中心的资源利用率,分担生产中心的业务负担,在发生灾难时,自然也可以实现应用和业务的接管。

H3C作为GoldenGate、DSG等数据库复制容灾软件厂商的合作伙伴,对于基于数据库复制的应用级灾备解决方案进行过严格的测试验证,能够保证方案的快速正确的实施。

这种方式的缺点之一是只适合于特定的数据库应用,不适合文件系统等应用,有一定的局限性。

(2)远程集群技术

远程集群是指通过在生产中心和灾备中心的应用服务器上安装远程集群软件(例如Veritas Storage Foundation中的GCO组件),实现跨广域的多服务器状态的监控,当发生灾难时,实现应用服务器的自动切换。

这种方式的主要弊端在于,多种潜在因素(例如集群服务器心跳线中断、网络短时间中断、应用服务器响应不及时等)容易导致在生产中心实际运行正常情况下进行误切换,运行风险高。我们知道,灾备中心的应用接管是一个管理和决策的过程,需要人为参与,无法完全交给机器和软件来替代完成的。

其次,对于存在多应用情况下,采用自动切换,可能导致部分应用出现故障时切换,由灾备中心接管,而其它应用在数据中心运行正常,没有切换,最终产生两个数据中心同时运行,造成数据混乱。

另外,需要注意的是,即使实现了应用服务器(或者数据库服务器)的自动切换,也并不等同于应用的自动切换。一般来说,一个应用由应用服务器和数据库服务器构成,前者提供前端客户端的直接读写请求,并通过数据库服务器进行真实的读写操作,应用服务器本身并不进行数据存储操作,而数据库服务器才是真正和存储系统打交道的服务器。采用集群技术,能够实现应用服务器或数据库服务器的自动切换,但是应用服务器和数据库服务器之间往往存在着依赖关系,它们之间连接关系的建立,一般无法自动完成,因此也无法实现真正的应用自动切换。

(3)手动切换方式

手动切换方式实现较简单,总体成本低,适用范围广,而且较可靠。采用这种方式时,灾备中心部署与生产中心相对应的应用服务器和数据库服务器,安装相应软件。在正常情况下,灾备中心服务器可选择不运行或者处于就绪状态但对外不可访问;发生灾难时,可在人为决策后,将灾备中心服务器启动或恢复对外访问,实现业务的快速切换。

这三种方式比较如下:

应用切换方式

双活数据库技术

远程集群

手动切换

适用范围

仅限特定数据库

无限制

无限制

应用完全自动切换

灾备中心日常可访问

运行风险

高,可能误切换

实施成本

较高

维护工作量

较高

较高

 

通过对以上应用切换技术的分析,建议首选手动切换方式,针对个别核心数据库应用,也可选择数据库双活技术,提高灾备中心的利用率。

 

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值