两地三中心双活系统灾备切换场景和数据补录问题?

目前同城双活的架构部署说明如下:1、同城双中心应用采用双活部署,数据库采用ADG复制,两中心的应用实时连接主中心的数据库,当主中心的数据库出现问题切换到灾备中心,应用通过DNS自动解析到灾备中心进行交易。2、主备数据中心分别部署F5负载均衡,应用通过F5 LTM实现应用负载。数...显示全部

目前同城双活的架构部署说明如下:
1、同城双中心应用采用双活部署,数据库采用ADG复制,两中心的应用实时连接主中心的数据库,当主中心的数据库出现问题切换到灾备中心,应用通过DNS自动解析到灾备中心进行交易。
2、主备数据中心分别部署F5负载均衡,应用通过F5 LTM实现应用负载。数据中心内部通过F5 GTM实现内部DNS解析,广域网通过F5 GTM实现双数据中心DNS解析。
3、主备数据中心的网络采用三层架构(未采用二层互通),应用采用不同的网络段地址部署。
对于双活测试需要测试哪些场景?故障切换的场景应该覆盖哪些?对于非计划内的切换,数据丢失的RPO怎么验证,业务数据补录怎么做?

收起
参与42

查看其它 6 个回答haizdl的回答

haizdlhaizdl技术经理大连
  1. 对于双活测试需要测试哪些场景? 故障切换的场景应该覆盖哪些?

a)大的故障分层,从底层到上层: 存储设备、数据库、数据库计算节点、应用节点、接入层网络、汇聚及核心层网络、LTM本地负载、GTM全局负载、数据中心路由等各功能层都要测试其单点和整体功能失效情况,当然测试的时候一个CASE可以覆盖多个分支。

b)数据库功能层:

ADG 无GAP正常切换、有GAP可以修复场合下的切换、有GAP不可修复场合下的切换等。

  1. 对于非计划内的切换,数据丢失的RPO怎么验证,业务数据补录怎么做?

首先,所谓非计划内的切换也分为很多种场合,例如数据可修复以及不可修复的场合,DNS切换过程是否对于全部应用都奏效,DNS缓存机制如何设计?这个需要针对自己的架构再仔细考虑考虑。

接着,我们来谈数据丢失的场合。架设日志有GAP,但是不可修复,最终强制切换成功的情况下:
数据库界定数据的唯一方式就是事务的时间戳,ADG只能从日志GAP的事务ID顺序来判断数据丢失的时间戳信息,通过时间戳信息可以转换为数据库节点的时间点。应用判断业务完整性是靠应用的事务性和应用执行的时间点信息。如果两个时间点信息一致,那么结合应用事务的完整性就可以判断不同业务数据的RPO。具体通过什么方式达到时间信息的完全一致性,可能会涉及多个方面,需要根据自己的架构综合考虑NTP、RAC MTSS、应用取时机制及事务机制等等,总而言之要保障这几个时间机制最终能达到一致,这样才能将RPO定位到业务上,后续无论是补录还是其他方式都有业务根据可依。

银行 · 2020-03-16
浏览4605

回答者

haizdl
haizdl101634
技术经理大连
擅长领域: 灾备存储服务器

haizdl 最近回答过的问题

回答状态

  • 发布时间:2020-03-16
  • 关注会员:10 人
  • 回答浏览:4605
  • X社区推广