基于双活零切换的服务不间断的BOSS系统.docx
《基于双活零切换的服务不间断的BOSS系统.docx》由会员分享,可在线阅读,更多相关《基于双活零切换的服务不间断的BOSS系统.docx(15页珍藏版)》请在冰豆网上搜索。
基于双活零切换的服务不间断的BOSS系统
成果上报申请书
成果名称
基于双活零切换的服务不间断的BOSS系统
成果申报单位
山东省(自治区/直辖市)公司
成果承担部门
/分公司
帐务中心
项目负责人姓名
项目负责人联系电话
和Email
成果专业类别*
业务支撑
所属专业部门*
业务支撑线条
成果研究类别*
其它
省内评审结果*
优秀
关键词索引(3~5个)
容灾双活零切换
应用投资
200万元(指别的省引入应用需要的投资金额)
产品版权归属单位
中国移动通信集团山东有限公司
对企业现有标准规范的符合度:
(按填写说明5)
符合
如果该成果来源于研发项目,请填写研发项目的年度、名称和类型(类型包括:
集团重点研发项目、集团联合研发项目、省公司重点研发项目、其他研发项目),可填写多个:
省重点研发项目:
应急容灾零切换,革命性提升BOSS系统业务服务水平。
成果简介:
山东公司针对容灾系当前存在的切换时间长、投资大、容灾侧资源平时不能使用、流程复杂维护难等问题进行了积极探索,采用创新技术大胆尝试,彻底解决容灾系统资源闲置问题(含存储),通过在国内首次创新尝试将vplex存储虚拟化结合oracle的远程rac技术实现了跨数据中心的双活方案,即BOSS系统生产端和容灾端可以同时放开对外访问,彻底解决了以往容灾端平时不能打开对外访问的弊端。
双活数据中心结合通过定制开发的BOSS系统对外统一接口平台,经过测试容灾切换最多只需要几十秒,且无需人工干预。
BOSS系统的双活数据中心将是BOSS系统的一场革命,必将大大降低停机窗口、提高服务质量,降低业务风险,同时大大节约投资。
省内试运行效果:
描述成果引入后在本省试运行方案、取得的效果、推广价值和建议等。
1、人力解放:
通过优化,大大减轻了容灾系统维护工作量,山东公司目前只有一人在兼职维护容灾系统。
2、容灾系统可用性:
通过优化,是容灾系统可用性和切换信心度大幅增长,现在山东公司每半年均进行1到2次真实切换演练,在2011年集团公司组织的容灾演练专项检查中,山东公司第一个参与真实演练并获得满分,充分证明了优化的效果。
3、提高客户满意度
通过优化,使系统停机窗口做到最小,尤其是双活“0”切换技术,使切换窗口最到最小,近几年山东公司客户满意度在集团内保持了比较高的名次。
4、节约投资
通过创新的双活“0”切换技术以及虚拟化技术的应用,使容灾端的资源真正利用起来,从而大大节约了投资,以山东公司容灾系统投资占硬件整体投资的50%计算,相当于每年可以节约4000万人民币
文章主体(3000字以上,可附在表格后):
根据成果研究类别,主体内容的要求有差异,具体要求见表格后的“填写说明6”。
附表后。
基于双活零切换的服务不间断的BOSS系统
一、背景和意义
为了更好的保障BOSS系统运行,提高服务质量,我们先后建立了应急系统、容灾系统等,但仍存在如下矛盾,并越来越突出…
投资大,效益慢:
今年BOSS扩容需要约XXXX万TPCC,XXXT存储设备,需要同步对容灾系统扩容。
1、灾备端平时无法打开:
灾备端的资源(尤其是存储)平时无法打开使用,造成资源浪费严重。
2、切换时间长:
一般需要1-2小时以上才能起来。
3、故障情况下切换决策难:
有时切换时间+决策时间>=灾难修复时间,难以决策,期间无法办理业务。
4、难以找到RTO、RPO都为0的0切换方案。
5、流程复杂,维护难:
系统切换需要一系列管理和技术流程,维护复杂,生产、容灾端都需要维护。
6、无法做到在线的系统升级迁移和新业务上线。
这种情况下,我们急需探索在BOSS系统中引入容灾系统双活零切换技术,基于如下考虑:
1、可以从降低运行风险、提高客户满意度等方面提升业务运营水平。
2、可以从降低业务停机窗口、降低维护工作量等方面降低系统运维压力。
3、可以降低系统灾难处理压力、最大限度降低业务中断时间,从而提高客户满意度。
4、使容灾侧资源平时可用,达到双活。
5、降低演练测试的业务停顿窗口,提升演练质量。
二、山东公司双活零切换方案介绍
2.1双活零切换方案的选型原则
必须要从技术、管理、使用维护等方面考虑选择双活零切换的方案,具体来说:
1、技术可靠
要求数据要跨中心流动,在同一个中心内部的无法做到容灾。
要求数据必须双活访问,切换需要的RTO、RPO都为0。
2、满足高可用性
要求满足跨中心的高可用性,数据一致行的保证。
由于跨中心,网络(IP、SAN)稳定性问题必须考虑,由超强容错机制。
3、易于管理
方案必须易于管理,手段便捷,因为复杂的管理也是一种灾难。
4、易于使用维护
方案必须低风险,易于使用,自动化程度高。
切换简单,流程少甚至无流程,并降低人工操作风险。
2.2基于双活零切换技术的主要方案分析
目前主要有四类解决方案,对比如下:
应用改造+触
发器同步方案
应用改造+商用
软件同步方案
应用改造+赛门铁克卷管理+oracle远程rac
应用改造+Emcvplex+oracle远程rac
应用改造难度
难以全部数据同
步,只能关键表
关键表同步(gg、
dsg、quest等)
通过对应用本身改造并进行部署改造,可支持全部数据同步
投资
较小
较大
较大
较大
性能
影响生产、容灾端
影响生产、容灾端
影响生产,较低
不影响
维护管理
麻烦
麻烦
较麻烦
简单、稳定
RTO
>0
>0
接近0
0
RPO
<>0
<>0
0
0
脑裂现象
非全业务,非双活
非全业务,非双活
难以避免
通过创新应用避免
山东公司综合考虑并试验验证后选择了第四种方案。
2.3山东公司方案构成
主要由如下特色技术实现
1、核心数据层:
国内首创的将vplex和oracle远程rac技术相结合并创新性应用于BOSS系统三中心,可实现全业务跨数据中心的双活访问
2、应用路由层:
业内率先新开发实现统一应用接口平台,作为连接数据库服务的入口,并支持高可用连接切换。
3、应用部署层:
对应用部署方案进行创新性改造,支持跨中心双活部署.
下面分别进行介绍:
2.3.1核心数据层介绍
在引入vplex以前的存储复制架构:
主备模式,存储底层同步,备份端平时不提供对外访问。
如下图所示:
SiteB
SiteA
SYNCHRONOUSREPLICATION
Active-PassiveSite
引入vplex后,生产端、容灾端的存储资源平时均可访问,vplex通过全局缓存保证数据一致性和高可用性。
平时两边主机分别访问本地存储,故障情况下可跨中心访问对方存储。
如下图:
VPLEXMetro
SiteB
SiteA
FIBRECHANNEL
Active-ActiveSite
VPLEXenablesactiveuseofresourcesattwosites
DISTRIBUTEDVIRTUALVOLUME
Oracle远程RAC技术:
跨数据中心的数据库,一个数据库多个跨节点实例。
每个实例都是活的,可以访问。
但是需要结合其他共享存储技术(主机的镜像、存储复制、vplex等实现跨中心存储并发访问技术)才能实现,如下图:
但是数据层远程rac技术存在“脑裂”风险,由于数据中心间距离远,网络稳定性差,必须需要额外进行冗余设计,如网络连接、内部网络、san连接等。
2个数据中心间网络全断情况下,无论vplex还是oracle的rac均可能出现“脑裂”现象,造成访问中断,数据不一致现象发生。
山东公司结合三个数据中心设计,在第三中心分别增加vplex和oracle的仲裁节点,避免了“脑裂”现象。
共青团路机房
开发区机房
经十路机房
15KM/20GIP带宽/40GSAN带宽
5KM/10GIP带宽/24GSAN带宽
15KM/20GIP带宽/40GSAN带宽
在三个中心间建立互联环状全冗余架构,任何两点之间的故障都不会影响第三点。
通过增加第三节点,防止两个中心间网络全断场景。
最终的山东特色的核心数据层架构如下:
EMCVPLEX
SAN
SAN
EMCDMX4
EMCVPLEX
SAN
SAN
EMCDMX4
4节点
ORACLERAC节点集群
METRO光纤互联(波分15KM)
Ip网络(波分15KM)
第三中心
Vplex仲裁点oracle虚节点
第一中心
第二中心
2.3.2应用路由接口层方案
数据层实现双活方案后,应用路由接口层必须进行改造才能最终实现0切换。
山东公司针对外部接入,业内率先专门实现统一的对外应用接口平台,实现了跨中心高可用性、并提高了新业务开发效率和易维护性。
现状:
1、系统使用的协议多:
CICS:
网厅、WAP、SOCKET:
短信、VC、银行等,EASYCICS:
IVR、自助,HTTP+XML:
一级BOSS
2、一个接口需要针对不同的协议开发多套,提高了开发的成本,“烟筒式”架构。
3、做不到对外服务0切换:
难以做到每个对外服务接口均支持高可用性。
山东公司针对上述现状,结合0切换需求,开发的新的统一接口平台从架构、数据库连接、负载均衡等方面考虑了在单数据中心故障下的零切换方案。
如下图:
在每个数据中心均建立相应的接口机,接口机连接后台访问的中间件服务器,并提供对外服务,中间件负责连接数据库,接口负责同时提供对外服务,确保一个数据中心故障情况下另一个接口平台仍能正常对外服务。
通过多实例部署,分别练到多个数据中心,并同时对外提供服务,通过负载均衡技术,在多服务器和多数据中心间分担系统压力,降低了单节点和单中心接入宕机的风险,确保系统稳定。
新的统一接口平台解决了在数据库、网络故障情况下进程僵死、挂起等现象,从而支持了数据层的双活零切换。
下图是进程队列的处理逻辑:
2.3.3中间件层全业务部署方案
接入层和中间层保留相当余量,部署了相当的业务逻辑,每个中心中间层主机都可以接管所有业务,平时均为生产。
每个交易中间件主机针对每套数据库同时建立2-4个连接指向跨中心的数据库节点,并部署完全相同的服务和应用。
WEB层建立通用的分发器,负责调用交易中间件的region服务(主、备)。
可配置为负载均衡机制或主备机制,在一端失败时,自动调用备用端region和服务。
图示如下:
2.3.4山东公司0切换方案验证情况
完全按照一套生产营业crm系统测试。
充分模拟考虑性能、各类故障等情况。
测试环境:
NGCRM+统一接口软件+emcvplex+oraclerac(9i11g)。
测试时间:
2011年4月2号-6月18号。
测试拓扑如下:
测试设备清单如下:
设备名称
配置
用途
Server1-1,1-2
IBMP7,16CPU,60Gmemory
Site1测试主机(IBM),数据库节点
Server2-1,2-2
IBMP7,16CPU,60Gmemory
Site2测试主机(IBM),数据库节点
Serv3-8
IBMP54C40G
中间件测试机器
SAN1-1,1-2
MDS9509
Site1测试主机HOST用SAN交换机
SAN2-1,2-2
MDS9509
Site2测试主机HOST用SAN交换机
SAN1-3,1-4
MDS9509
Site1测试Site间互联用SAN交换机(EMC)
SAN2-3,2-4
MDS9509
Site2测试Site间互联用SAN交换机(EMC)
DMX-4-1
256GCACHE,320*300Gdisks
Site1测试存储(EMC)
DMX-4-2
256GCACHE,320*146Gdisks
Site2测试存储(EMC)
VPLEX1
64GCACHE,VPLEX
Site1测试VPLEX(EMC)
VPLEX2
64GCACHE,VPLEX
Site2测试VPLEX(EMC)
AIX/HACMP
AIX5.3/HACMP5.4.1.1
测试主机操作系统/集群软件(IBM)
ORACLE9i/11gRAC
ORACLE9i/11gStretchRAC
测试数据库软件(ORACLE)
测试场景用例:
1、重点功能测试,包含仲裁测试和业务测试。
2、容错测试,包含数据库繁忙测试、数据库故障测试、主机故障测试、VPLEX故障测试、存储故障测试、中心互联故障测试等。
3、性能测试,包含IOPS和MBPS等指标。
故障层次
故障测试场景模拟
ORACLE故障
1.Server1-1oracle故障宕机
2.Server1-2oracle故障宕机
3.ORACLERACServer心跳互联故障
主机故障
1.Server1-1故障宕机
2.Server1-2故障宕机
VPLEX故障
1.Vplex1direct1故障
2.Vplex1故障
存储故障
1.Vplex1部分存储空间故障
2.Vplex1整个磁盘阵列故障
数据中心故障
1.VplexMetro数据中心互联故障
2.VplexMetro数据中心互联故障,NOWitnessServer
测试结果如下:
序号
容错测试场景模拟
测试结果
1
S2-1ORACLEundospacefull
OthersNOimpact
2
S2-1ORACLESharePoolLatchwait
OthersNOimpact
3
Server1-1,1-2oracle故障宕机
Othersdelay18s
4
Server1-1,1-2oracle心跳网卡故障
Othersdelay33s
5
Server1-1,1-2故障宕机
Othersdelay23s
6
Vplex2direct2-1故障
Server2-1,2-2delay20s,othersNOimpact
7
Vplex2engine2故障
Server1-1,1-2NOimpact
8
Vplex1部分存储空间故障
AllserversNOimpact
9
Vplex1整个磁盘阵列故障
Allserversdelay15s
10
VplexMetro数据中心互联故障
Server1-1,1-2delay43s(reconnect,delay17s)
11
VplexMetro数据中心互联故障(NOwitness)
Server1-1,1-2delay43s(reconnect,delay23s)
性能方面:
和传统SRDF方案差别不大。
针对真实应用的测试结果如下:
业务占比
双活模式(秒)
当前模式(秒)
差距百分比
响应时间差值(秒)
001过户提交
1.60%
5.06
3.26
55%
1.8
002停开机提交
1.60%
3.94
2.731
44%
1.21
003产品变更提交
6.80%
2.14
2.232
-4%
-0.09
004营收统计提交
5.20%
0.852
0.896
-5%
-0.04
005日志查询提交
6.80%
0.492
0.467
5%
0.03
006改资料提交
2.00%
1.58
1.515
4%
0.07
007缴费提交
50.40%
1.94
1.856
5%
0.08
008客户资料查询提交
6.80%
2.09
2.186
-4%
-0.1
009禁止业务提交
2.00%
2.004
1.787
12%
0.22
010销户退网提交
1.20%
5.38
5.362
0%
0.02
011改付费计划
1.20%
5.847
1.833
219%
4.01
012开户提交
5.20%
4.099
2.259
81%
1.84
013补卡提交
2.00%
2.458
2.595
-5%
-0.14
014用户帐单查询提交
6.00%
0.948
1.169
-19%
-0.22
015退费登记提交
1.20%
2.6
2.359
10%
0.24
测试结论:
通过vplex+oracle远程rac+应用改造,可以实现跨数据中心BOSS系统双活零切换方案
在各类容错灾难场景下,全业务切换时间接近0(小于1分钟),数据无丢失。
该双活方案性能和传统基于存储级同步复制(非双活0切换)方案差距不大,几乎相同。
通过建立oraclerac的仲裁节点和vplex的第三方仲裁节点能防止集群“脑裂”发生。
实现0切换方案,需要针对应用进行相应改造以支持0切换。
三、小结
1、山东公司进展情况
vplex+oracle远程rac+应用改造测试完成。
购买vplex、oracle远程rac的商务正在准备之中。
应用改造已经完成。
后续计划:
8-10月份,启动0切换方案商务。
11-1月份,NGCRM双活0切换方案全面上线。
2、预期效果:
1)可以降低运营风险,提高内外客户满意度。
BOSS系统停机窗口构成:
主动变更:
故障=1:
1,期间主要通过应急停开机系统保证客户缴费开机。
2)引入零切换技术,可以大幅降低BOSS系统停机窗口(含主动和故障),预计降低40-60%,由目前每年150小时降低到70小时左右。
3)提高故障情况下的恢复速度,由现在一般需要30分钟左右到1分钟之内,可以大大降低中心维护压力,提高客户满意度。
4)实现双活,可节约40%的硬件投资。
以山东公司为例,每年硬件(小型机、存储)投资约在8000-9000万,用在容灾系统的占比40%,而容灾系统平时闲置状态,无法提供客户服务,则每年至少将3500万以上的容灾的投资“盘活”。