双活数据中心面面观 - 图文

更新时间:2024-05-01 17:28:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

双活数据中心方案(华为)

目录

1 灾备建设的挑战与趋势 ............................................................................................................... 3 2 华为双活数据中心解决方案介绍 ............................................................................................... 4

2.1双活数据中心架构 ............................................................................................................. 4 2.2 双活数据中心部署 ............................................................................................................ 7 2.3 客户价值............................................................................................................................ 9 3双活数据中心关键技术 .............................................................................................................. 10

3.1存储层双活 ....................................................................................................................... 10

3.1.1 AA双活架构 .......................................................................................................... 10 3.1.2 高可靠技术 ........................................................................................................... 13 3.1.3高性能技术 ............................................................................................................ 25 3.1.4 高可扩展性 ........................................................................................................... 30 3.2 计算层双活 ...................................................................................................................... 34 3.3应用层双活 ....................................................................................................................... 35

3.3.1 B/S应用双活 ......................................................................................................... 35 3.3.2 C/S应用双活 ......................................................................................................... 37 3.3.3数据库双活 ............................................................................................................ 39 3.4.网络架构........................................................................................................................... 45

3.4.1 网络架构 ............................................................................................................... 45 3.4.2跨数据中心网络 .................................................................................................... 45 3.4.3业务访问网络架构 ................................................................................................ 46 3.4.4二层互联 ................................................................................................................ 51 3.4.5负载均衡技术 ........................................................................................................ 52 3.5传输层技术 ....................................................................................................................... 58 3.6安全层技术 ....................................................................................................................... 59 4可视化容灾管理 .......................................................................................................................... 64

4.1总体部署........................................................................................................................... 64 4.2应用支持矩阵 ................................................................................................................... 65 4.3 SAN双活场景 ................................................................................................................... 66

4.3.1 SAN双活场景 ........................................................................................................ 66 4.3.2 SAN双活+快照场景 .............................................................................................. 68

5. 故障场景.................................................................................................................................... 71

5.1 GSLB 故障 ..................................................................................................................... 72 5.2 SLB故障 ......................................................................................................................... 73 5.3Web服务器故障 ............................................................................................................... 75 5.4应用服务器故障 ............................................................................................................... 77 5.5 Oracle RAC 故障 ............................................................................................................... 79 5.6 IBM DB2 故障................................................................................................................... 80

[键入文字]

5.7 阵列单控故障 .................................................................................................................. 81 5.8广域网链路故障 ............................................................................................................... 83 5.9站点间链路故障 ............................................................................................................... 84 5.10站点故障......................................................................................................................... 85

[键入文字]

1 灾备建设的挑战与趋势

随着信息化技术的飞速发展,信息系统在各种行业的关键业务中扮演着越来越重要的角色。在通讯、金融、医疗、电子商务、物流、政府等领域,信息系统业务中断会导致巨大经济损失、影响品牌形象并可能导致重要数据丢失。因此,保证业务连续性是信息系统建设的关键。

目前,各行业普遍通过建设灾备中心来提高关键应用的业务连续性,在灾备中心保存生产数据副本。传统灾备部署方式为一个生产中心对应一个灾备中心,灾备中心平时不对外提供业务访问。一旦生产中心发生灾难,业务瘫痪,无法短时间恢复时,灾备中心才应需启动以提供业务访问。这种灾备系统面临以下挑战:

? 当生产中心遭遇供电故障、火灾、洪灾、地震等灾难时,需要手动将业务切换到灾

备中心,有可能需要专业的恢复手段和长时间调试,业务中断时间长,无法保证业务连续运行。

? 灾备中心不能对外提供服务,常年处于闲置状态,资源利用率低。

华为针对客户提高资源利用率,在两个数据中心间实现负载均衡和灾难自动切换的需求,推出了端到端双活数据中心解决方案。

[键入文字]

2 华为双活数据中心解决方案介绍

双活数据中心解决方案指两个数据中心均处于运行状态,可以同时承担生产业务,提高数据中心的整体服务能力和系统资源利用率。 业界目前有两种双活形态:AP双活和AA双活。

? AP双活通过将业务分类,部分业务以数据中心A为主,数据中心B为热备,而部

分业务则以数据中心B为主,数据中心B为热备,以达到近似双活的效果。 ? AA双活则是真正的双活,同一个双活LUN的所有I/O路径均可同时访问,业务负

载均衡,故障时可无缝切换。

华为双活数据中心解决方案为AA双活架构,以业界领先的OceanStor V3 HyperMetro 功能为基础,与Web、数据库集群、负载均衡、传输设备和网络等组件相结合,为客户提供100km内的端到端双活数据中心解决方案,确保业务系统发生设备故障、甚至单数据中心故障时,业务无感知,自动切换,实现RPO (Recovery Point Objective) =0, RTO (Recovery Time Objective) =0 (RTO 与应用系统及部署方式有关)。

2.1双活数据中心架构

端到端双活数据中心解决方案分为6层:存储层、计算层、应用层、网络层、传输层和安全层。逻辑架构图如图2-1所示。 图2-1逻辑架构图

[键入文字]

端到端双活数据中心解决方案,为了实现更好的可靠性、性能和负载均衡,针对每一层进行一些设计和优化,表2-1列举了一部分设计要点。 表2-1 6层方案设计要点 存储层 ?免网关双活架构。 ?通过OceanStor V3阵列的HyperMetro功能,实现存储层的双活,减少方案故障点,避免存储虚拟化网关的I/O性能瓶颈。 ?通过OceanStor V3阵列的SmartVirtualization功能,接管现网异构存,储,将不同的存储资源的统一池化。 网络层 ?通过FastWrite功能,将标准的1个写I/O 2次往返优化为1次往返, ?采用华为CloudEngine系列数据中心交换机的EVN技术。 ?通过EVN打通大二层网络,实现2层网络协议在3层网络上运行, 保障了业务的跨数据中心互联互通。 ?通过多种互联优化技术,实现广播域隔离,达到数据中心间东西向流量优化。 安全层 传输加密 ?通过华为USG系列提供数据中心的FW、IDS等安全防护功能。 ?通过数据中心间光传输加密技术,支持AES-256等多种加密算法,预防数据中心间数据窃听。 计算层 采用华为FusionSphere、VMware等虚拟化平台提供跨数据中心大集群技 [键入文字]

应用层 ? web和App应用基于虚拟化集群提供更好的可靠性,通过负载均衡实现业务自动切换。 传输层 ?采用华为OptiX OSN系列作为双活数据中心的波分设备。 ?通过线路冗余,板卡冗余,设备冗余三种1+1保护方案,满足多级可靠性要求。

[键入文字]

2.2 双活数据中心部署

整体的方案物理组网图如图2-2所示。 图2-2 物理组网图

[键入文字]

各方案模块部署如表2-2所示: 存储层 ?跨DC的两套华为OceanStor V3系列存储阵列组成一个存储集群。 ?支持其中一台异构接管第三方存储,使用接管后的LUN与另一台 V3上的LUN构建双活LUN。 网络层 ?采用华为CloudEngine系列数据中心交换机作为核心交换机。 ?数据中心内部采用典型二层或三层物理架构组网,启用EVN形成二层通道,由核心交换机通过CSS+链路聚合接入波分设备。 ?每个站点部署一台独立的GSLB实现站点间负载均衡。 ?每个站点部署2台SLB,组成HA集群,实现应用层服务器的负载均衡。 应用层 ? Web、App层可以部署在虚拟机或者物理机上,DC内的多台服务器 组成集群,或者跨DC的多台服务器组成集群。 ?数据库建议物理机部署,跨数据中心组成一个集群。 计算层 模块 传输层 部署方式 ?采用华为OptiX OSN系列DWDM,每个站点部署2套波分设备。 ?如若不能设备级冗余,则需要至少每套波分设备配置2块传输板卡,实现板卡冗余。 ?将多路FC信号和IP信号复用到光纤链路上传输,每套波分设备通过两对裸光纤互联。 安全层 ?采用华为USG系列防火墙,每个站点部署2台防火墙,接入核心交换机。 ?在华为OptiX OSN系列DWDM启用传输加密功能。 使用华为FusionSphere、VMware等虚拟化平台,跨数据中心组成虚拟主机集群。 仲裁 ?选择一个第三方站点部署仲裁设备和软件。 ?软件支持安装在物理服务器或虚拟机上。 ?仲裁服务器使用IP网络连接到双活数据中心的两套存储阵列。 说明

GSLB是英文Global Server Load Balance的缩写,意思是全局负载均衡。作用:实现在广

[键入文字]

域网 (包括互联网)上不同地域的服务器间的流量调配,保证使用最佳的服务器服务离自己最近的客户,从而确保访问质量。

SLB是Server Load Balancing ,意思是服务器负载均衡。SLB可以看作HSRP (热备份路由器协议)的扩展,实现多个服务器之间的负载均衡。

2.3 客户价值

华为充分利用其宽产品线的优势,通过多产品的紧耦合,为客户提供端到端双活数据中心解决方案,也是业界唯一可提供端到端双活解决方案的厂家。6层Active-Active可靠性设计,业务负载均衡,应用零中断,数据零丢失,实现了业界最高等级的业务连续性保障。 华为双活数据中心解决方案有以下特点:

? AA双活架构,数据零丢失,业务零中断(RPO=0,RTO =0)。 ? 两个数据中心同时提供业务,充分利用灾备资源。 ? 支持异构存储,保护已有设备投资。 ? 方案扩展灵活,容灾可视化管理。

华为6层双活数据中心解决方案能给客户带来以下价值:

? 端到端双活设计:华为提供端到端双活方案设计,快速上线业务。

? 真AA精简双活,业务7X24小时持续运行:去存储网关精简双活架构,方案故障点

少,系统可靠性更高,提供站点同时读写的Acive-Active双活能力。

? 双活I/O优化,性能高:去存储网关的双活架构,I/O处理路径最短。同时,通过

锁预取优化,存储协议优化和地域优化访问等极大提升双活业务性能。

? 利旧现有设备,保护现有投资:存储支持异构接管第三方存储,计算层支持

FusionSphere等虚拟化平台利旧已有服务器,保护现有投资。

[键入文字]

3双活数据中心关键技术

以下是华为双活数据中心解决方案的关键技术:

? 存储层:通过HyperMetro实现存储层的双活

? 计算层:通过FusionSphere、VMware等虚拟化技术,提供虚拟机HA特性,故障时

自动恢复。

? 应用层:通过应用集群和数据库集群技术实现双活。

? 网络层:通过DWDM、EVN等二层互联技术,实现低时延、高可靠的二层网络互联;

通过网络设备的双活网关、RHI等路径优化技术,以及全局负载均衡器、 ? 服务器负载均衡器实现双活就近接入或高可用网络切换。 ? 传输层:通过设备冗余及板卡冗余构建可靠的双活传输网络。

? 安全层:通过防火墙和安全策略规划和设计保证访问安全,通过传输层加密特性,

保证跨数据中心数据传输安全。

华为双活数据中心解决方案在以上6个层次上进行联动及联合,为客户提供端到端的双活方案。

3.1存储层双活

华为双活数据中心解决方案存储层基于OceanStor V3融合存储系统的HyperMetro特性实现。HyperMetro采用AA双活架构将两套存储阵列组成跨站点集群,实现数据实时镜像,具有高可靠、高性能和高扩展的特点。本章节将对HyperMetro特性的主要技术原理和特点进行介绍。

3.1.1AA双活架构

3.1.1.1并行访问

HyperMetro特性基于两套存储阵列实现AA(Active-Active)双活,两端阵列的双活LUN数据实时同步,且双端能够同时处理应用服务器的I/O读写请求,面向应用服务器提供无差异的AA并行访问能力。当任何一台磁盘阵列故障时,业务自动无缝切换到对端存储访问,

[键入文字]

业务访问不中断。相较于AP方案,AA双活方案可充分利用计算资源,有效减少阵列间通信,缩短I/O 路径,从而获得更高的访问性能和更快的故障切换速度。图3-1展示了几种双活方案的交互流程。 图3-1存储双活架构

数据中心A 数据中心B

3.1.1.2 免网关设计

HyperMetro双活架构无需额外部署虚拟化网关设备,直接使用两套存储阵列组成跨站点集群系统。最大支持32个存储控制器,即两套16控存储阵列组建双活关系。 本方案架构精简、与存储增值特性良好兼容,对客户的价值如下:

? 减少网关故障点,提高方案可靠性。

? I/O响应速度更快,无需经过存储网关转发,减少网关转发I/O时延。

? 双活可以兼容存储阵列已有特性,与OceanStor V3融合存储系统的其它Smart系

列和Hyper系列特性组合,可为客户提供多种数据保护和灾备解决方案。 ? 显著降低双活组网复杂度,便于维护。 3.1.3.3 I/O访问路径

HyperMetro在应用主机侧,通过UltraPath主机多路径软件,将两台存储阵列上的双活成员LUN聚合为一个双活LUN,以多路径Vdisk方式对应用程序提供I/O读写能力。应用程序通过访问VDISK时,Ultrapath通过选路模式,选择最佳的访问路径,将I/O请求下发到存储阵列。

存储阵列的LUN空间上接收到I/O请求后,对于读I/O请求,直接读本地Cache空间,将数

[键入文字]

据返回应用程序;对于写I/O请求,首先会进行并行访问互斥(参见3.1.3.4 分布式锁技术),获取写权限后,将I/O请求数据同时写本地双活成员LUN Cache以及对端的双活成员LUN Cache,双端写成功后返回应用程序写完成(参见3.1.2.2跨站点数据实时镜像)。 图3-2双活IO路径

3.1.1.4存储层组网

两套双活存储阵列间通信支持FC或IP链路,推荐使用FC链路。另外,存储阵列和仲裁服务器之间的链路采用更易于获取的IP链路。

图3-3为4控制器的双活组网情况下,FC交换机端口占用情况。 图3-3阵列双活方案组网

[键入文字]

3.1.2 高可靠技术

HyperMetro在继承OceanStor存储系统高可靠设计的基础上,全新设计了一些解决方案级高可靠技术,最大化提高了存储双活方案的可靠性。 本章节将从以几个方面介绍HyperMetro的高可靠技术:

? 跨站点集群 ? 跨站点数据实时镜像 ? 跨站点坏块修复 ? 仲裁防脑裂 ? 高可靠链路设计

3.1.2.1 跨站点集群

两套独立的存储阵列组建成跨站点集群,并以跨站点集群为核心,提供双活存储架构,向应用服务器提供无差异的并行访问,处理应用服务器的i/o请求。双活跨站点集群配置过程极为简单,只需要将两套存储阵列配置成双活域,即可完成跨站点集群配置。跨站点集群系统使用阵列间FC或IP链路作为通信链路,完成全局节点视图建立和状态监控。在全局节点视图基础上,跨站点集群系统提供分布式互斥等能力,支持AA 双活架构。下图为双活跨站点集群示意图。 图3-4双活跨站点集群

[键入文字]

集群节点具有并发访问能力。当出现单个控制器故障时,其承接的业务将被切换到本地集群的其它工作控制器;本地集群工作控制器全故障时,则切换至跨站点集群另一个本地集群。 图3-5双活访问与切换

在跨站点集群基础上,HyperMetro以双活Pair或双活一致性组为单位提供服务和进行状态管理。两套存储阵列上的双活成员LUN组成一个虚拟双活LUN,通过实时镜像技术保持两个数据中心的双活成员LUN的数据实时一致。一致性组是多个双活pair的集合,可以确保单个存储系统内,主机在跨多个LUN进行写操作时数据的一致性。一致性组进行分裂、同步等操作时,一致性组的所有双活pair保持步调一致。当遇到链路故障时,一致性组的所有成员对会一起进入异常断开状态。当故障排除后,所有成员同时进行数据的同步,从而保证从站点灾备阵列数据的可用性。

[键入文字]

3.1.2.2 跨站点数据实时镜像

HyperMetro通过实时镜像功能,保证两个站点存储阵列之间数据的实时同步。主机写操作通过实时镜像技术同时写入两个数据中心的双活成员LUN,保持数据实时一致。具体的写I/O流程如图3-6所示。 图3-6 跨站点镜像

假如数据中心A阵列收到写I/O,镜像处理流程如下:

1.申请写权限和记录写日志:数据中心A阵列收到主机写请求,先申请双活Pair的写权限。获得写权限后,双活Pair将该请求记录写日志。日志中只记录地址信息,不记录具体的写数据内容。该日志采用具有掉电保护能力的内存空间记录以获得良好的性能。 2.执行双写:将该请求拷贝两份分别写入本地LUN和远端LUN的Cache。 3.双写结果处理:等待两端LUN的写处理结果都返回。 4.响应主机:双活Pair返回写I/O操作完成。

HyperMetro支持断点续传功能。当某些故障场景(如单套存储故障)导致双活Pair关系异常断开时,HyperMetro通过记录日志的方式,记录主机新产生的写I/O。当故障恢复时,HyperMetro将自动恢复双活Pair关系,并且将所记录的增量数据自动同步到远端,无需全量同步所有数据,整个过程对主机“透明”不会影响主机业务。 双活Pair运行状态和主机访问状态关系见表3-1

[键入文字]

表3-1双活主机访问状态表

双活Pair运行状态 主机访问状态 暂停 读写 不可读写 状态描述 用户暂停双活镜像关系 待同步 读写 不可读写 阵列间链路故障或 I/O错误导致双活镜同步中 读写 不可读写 恢复双活镜像关系时全量/增量同步双端正常 读写 读写 两端LUN都进入 双活AA实时镜像关系 强制启动 读写 不可读写 用户进行了强制将双活从LUN升级为主LUN

双活Pair运行状态和镜像状态关系见表3-2 表3-2双活镜像状态表

双活Pair运行状态 暂停/待同步/强制启动 同步中 正常 镜像状态 主LUN 不镜像,记录差异日志 镜像写,后台复制差异 镜像写 从LUN 不涉及 不涉及 镜像写 3.1.2.3 跨站点坏块修复

硬盘在使用过程中可能因为掉电等异常情况出现坏块,如果是可修复错误但是本端已经无法修复时,HyperMetro将自动从远端阵列获取数据,修复本地数据盘的坏块,进一步提高系统的可靠性。 图3-7跨站点数据修复

[键入文字]

数据中心A阵列出现坏块时,从该阵列读I/O处理流程如下:

步骤1主机下发读I/O。 步骤2 读本地LUN。

步骤3 读取到坏块后,如果为可修复错误,执行步骤4,否则执行1、2后流程结束。

A.重定向远端读。 B.远端读返回。

步骤4 将读数据返回主机,确保主机响应的快速返回。 步骤5 根据远端的读数据,进行本地写入修复 步骤6 写修复结果返回。3.1.2.4 仲裁防脑裂

3.1.2.4 仲裁防脑裂

当提供双活LUN的两套阵列之间的链路故障时,阵列已经无法实时镜像同步,此时只能由其中一套阵列继续提供服务。为了保证数据一致性,HyperMetro通过仲裁机制决定由哪套存储继续提供服务。

HyperMetro支持按双活Pair或双活一致性组为单位进行仲裁。当多个双活Pair提供的业务相互依赖时,用户需要把这些双活Pair配置为一个双活一致性组。仲裁完成后,一个双

[键入文字]

活一致性组只会在其中一套存储阵列继续提供服务。例如,Oracle数据库的数据文件、日志文件可能分别存放在不同的LUN上,访问Oracle数据库的应用系统存放在另一些LUN上,相互之间存在依赖关系。配置双活时,建议数据LUN、日志LUN 和应用LUN分别配置双活pair,并且加入同一个一致性组。 HyperMetro提供了两种仲裁模式:

? 静态优先级模式 ? 仲裁服务器模式

配置双活Pair前,需要配置双活域,双活域为逻辑概念,包括需要创建双活关系的两套存储阵列和仲裁服务器。每个双活Pair创建时均要选择双活域,每个双活域只能同时应用一种仲裁模式。

仲裁服务器模式比静态优级模式具备更高的可靠性,可保证在各种单点故障场景下,业务连续运行。因此,华为双活方案推荐采用仲裁服务器模式。 静态优先级模式

静态优先级模式主要应用在无第三方仲裁服务器的场景。用户可以按双活Pair或一致性组为单位,设置其中一端阵列为优先站点,另一端为非优先站点。如图3-8所示,不需要额外部署仲裁服务器。

该模式下,阵列间心跳中断时,优先站点仲裁胜利。

当发生阵列间链路故障,或者非优先站点故障时,优先站点上的LUN继续提供服务,非优先站点的LUN停止提供服务。

当优先站点阵列故障时,非优先站点不能自动接管双活业务,双活业务停止,需要人工强制启动非优先站点服务 图3-8静态优先级部署

[键入文字]

该模式的缺点是:两阵列之间的心跳丢失时,可能是站点间链路丢失或其中一个阵列故障,系统无法区分这两种情况。表3-3为静态优先级模式下的仲裁策略。 表3-3静态优先级模式仲裁示意图

编号 1 示意图 仲裁结果 故障类型:链路故障 仲裁结果:H1继续运行业务,H2停止业务 故障类型:非优先故障 仲裁结果:H1继续运行业务,H2失效 故障类型:优先故障 仲裁结果:H1失效;H2停止业务,需要人工启动

仲裁服务器模式

使用独立的物理服务器或者虚拟机作为仲裁设备,仲裁服务器建议部署在第三方站点。这样可以避免单数据中心整体发生灾难时,仲裁设备也同时故障。如图3-9所示。 图3-9仲裁服务器部署

2 3 [键入文字]

仲裁服务器模式下,当存储阵列间心跳中断时,两端阵列向仲裁服务器发起仲裁请求,由仲裁服务器综合判断哪端获胜。仲裁获胜的一方继续提供服务,另一方停止服务。

仲裁服务器模式下如果有优先获得仲裁的要求,也可以配置站点优先级。优先阵列端具有仲裁获胜的优先权,心跳中断但其它正常时,优先阵列将获得仲裁胜利。仲裁过程如图3-10所示: 图3-10仲裁机制

1.数据中心之间的链路断开时,跨站点阵列集群分裂为两个小集群。

2. 小集群分别抢占仲裁,优先阵列将优先抢占仲裁,抢占成功的小集群“获胜”,将继续对外提供服务,为应用提供存储访问空间;抢占失败的小集群则停止对外 服务。

3.中间链路恢复时,两个子集群检测到中间链路恢复正常,经过握手通信将两个小集群自动组成一个跨站点集群,双活关系恢复,以Active-Active模式提供服务。 表3-4列出了仲裁服务器模式下,各种故障场景下双活业务表现。 表3-4各故障场景仲裁示意图 1 故障类型:仲裁失效 仲裁结果:H1、H2继续运行业务 [键入文字]

2 故障类型:一套阵列与仲裁之间链路故障仲裁结果:H1、H2继续运行业务 3 故障类型:一套阵列失效 仲裁结果:H1失效,H2继续运行业务 4 5 6 故障类型:阵列间链路中断仲裁结果:H2失效,H1继续运行业务 故障类型:一套阵列与仲裁同时失效仲裁结果:H1失效,H2停止业务 故障类型:一套阵列与对端、仲裁的链路同时中断仲裁结果:H1停止业务,H2继续运行业务 7 故障类型:一套阵列失效,且对端与仲裁链路中断仲裁结果:H1失效,H2停止业务 8 故障类型:仲裁失效,且阵列间链路中断仲裁结果:H1与H2均停止业务 9 故障类型:仲裁失效,且其与一套阵列链路中断仲裁结果:H1、H2继续运行业务 说明

H1和H2表示组成双活HyperMetro LUN的两个阵列,C表示对应的仲裁服务器 强制启动

某些特定的多重故障情况下,仲裁机制优先保证数据的一致性,可能会将存活的双活成员LUN都停止主机访问。例如静态优先级模式下优先站点故障等场景,存活的双活成员LUN会被停止主机访问,用户或售后工程师可根据故障情况选择人工强制启动业务,快速恢复业务。

强制启动后,被强制启动端会升级为双活数据同步源端,强制启动端的双活成员LUN 具有最新数据。链路恢复后,系统主动停止对端双活成员LUN主机访问。发起数据同步时,将以强制启动端的双活成员LUN数据覆盖对端。该过程中只会同步增量差异数据。 注意

[键入文字]

执行强制启动前,需要充分考虑双主风险,应在执行前确认两个数据中心的LUN状态和业务状态,确保对端存储已经停止工作。

3.1.2.5高可靠链路设计

HyperMetro阵列间组网支持FC或IP网络,可以根据用户的实际网络条件配置网络。支持使用阵列直连、通过FC光纤交换机连接、通过IP交换机连接等。为了提供更好的双活性能,推荐采用FC组网。

以‘跨数据中心2节点+2节点双活组网’为例,建议每个控制器节点都与对端阵列建立2条阵列间镜像链路,并对两条链路的交换机进行隔离,获得最高的链路可靠性。 图3-11以跨数据中心4控双活组网示例

上图中,为保证双活性能,HyperMetro对站点间双活链路的网络要求如下:

? 误码率<10-12e。 ? 时延RTT<2ms。 ? 无抖动,无丢包。

? 链路带宽>业务峰值带宽,最低要求2Gbps。

除了高可靠的组网和链路质量要求外,双活阵列间镜像链路还应用了传输带宽自适应特性,该技术通过一系列自动检测机制,根据链路质量,动态调整各链路传输占比,减少数据重传率。例如当前控制器与对端阵列控制器存在两条镜像链路A和B,当系统检测到链路A因为误码等原因存在较大的传输时延时,会根据算法将链路A的流控带宽下降20%,将更多的带宽压力导向链路B,降低链路A的带宽压力,从而获得更稳定的传输时延。当链路A的传输时延较小时,系统又会根据算法将链路A的流控带宽上调20%,从而恢复带宽吞吐量。

[键入文字]

3.1.2.6分布式锁技术

分布式互斥能力是实现AA双活的关键能力之一,双活分布式锁模块利用Paxos和 CHT (Consistent Hash Table) —致性算法,提供了分布式对象锁和分布式范围锁,从而满足AA双活的分布式互斥诉求。通过锁预取技术,可有效减少跨站点的数据传输量和通信交互次数,从而提升I/O读写性能。

在AP双活架构中,由于主机无法通过从端直接访问双活LUN,从端主机写数据时,必须将完整的写数据发送到主控端,再通过镜像链路把I/O从主控端同步到备控设备上,这样数据存在多次跨数据中心传输,严重影响写性能,如图3-12所示。 图3-12 AP双活的数据访问

HyperMetro以主机I/O粒度,对主机I/O访问的LBA区间加分布式范围锁进行并发互斥,从而达到双向实时同步的目的,该方案可省去不必要的阵列间数据传输带宽,并有效的减少数据传输次数。HyperMetro双活数据访问如图3-13所示。 图3-13应用分布式锁的双活数据访问

[键入文字]

HyperMetro分布式锁技术使用了智能的锁预取和缓存策略,在写权限本地无缓存的情况下,会通过较小的控制报文,向锁权限缓存节点申请写权限,并多预取部分区间的写权限缓存到本地。后续的连续写I/O可快速在本地命中写权限,不需要再跨站点申请写权限。分布式锁实现原理如图3-14所示。 图3-14分布式锁预取

[键入文字]

3.1.3高性能技术

为了保证两个数据中心存储的数据实时一致,写操作都需要等待两端存储写成功之后再返回主机“写成功”双活i/o性能因为实时双写导致一定的时延增加,华为 HyperMetro设

[键入文字]

计了一系列I/O性能优化方案,减小对写时延的影响,提升整体双活的业务性能。

3.1.3.1数据零拷贝

在双活镜像数据的初始同步或者恢复过程中的增量同步过程中,差异数据块通常有大量的零数据块,无需逐块复制,该功能叫数据零拷贝。例如,虚拟化场景下,新建虚拟机时会产生大量的零数据块,一个数十GB的操作系统盘,实际非零数据块仅2- 3GB。数据零拷贝原理图如图3-15所示。 图3-15数据零拷贝

HyperMetro零页面识别技术的实现方法如下:

通过硬件芯片,对数据拷贝源端进行快速识别,找出零数据,在拷贝过程中,对全零数据特殊标识,只传输一个较小的特殊页面到对端,不再全量传输。该技术可有效减少同步数据量,减少带宽消耗,缩短同步时间。

3.1.3.2FastWrite

HyperMetro通过FastWrite功能对阵列间数据传输进行了协议级优化,应用SCSI协议的First Burst Enabled功能,将写数据的链路传输交互次数减少一半。

正常的SCSI流程中,写I/O在传输的双端要经历“写命令” “写分配完成” “写数据”和“写执行状态”等多次交互。利用FastWrite功能,优化写I/O交互过程,将 “写命令”和“写数据”合并为一次发送,并取消“写分配完成”交互过程,将跨站点写I/O交互次数减少一半。如图3-16所示。

[键入文字]

3.1.3.3地域优化访问

双活数据业务场景,两站点的距离远近,是影响I/O访问性能的关键因素。HyperMetro 特性通过与华为OceanStor UltraPath多路径配合,根据双活站点部署距离,提供了两种 I/O访问策略供用户选择。

? 负载均衡模式 ? 优选阵列模式 负载均衡模式

该模式下实现了 I/O的跨阵列负载均衡,即I/O以分片的方式在两个阵列上下发。分片大小可配,例如分片大小为128M,即起始地址为0-128M的I/O在A阵列下发, 128M-256M在B阵列下发,以此类推。

负载均衡模式主要应用于双活业务部署在同一数据中心的场景。在该场景下,主机业务访问两套双活存储设备的性能几乎相同,为最大化利用两套存储设备的资源,将主机I/O按分片方式下发到两套阵列上。 图3-17负载均衡访问

[键入文字]

优选阵列模式

该模式下,由用户在OceanStor UltraPath上指定优选访问阵列,主机业务访问时,I/O只会在用户设置的优选阵列路径上进行负载均衡下发,不产生跨阵列的I/O访问。只有当优选阵列出现故障时,才切换到非优选阵列下发I/O。

优选阵列模式主要应用于双活业务部署在距离较远的双数据中心场景。在该场景下,双活数据中心的跨站点访问的代价较高,假如两个数据中心的链路距离为100km,一次往返传输通常需要消耗约1.3ms时间。优选阵列模式可以减少跨站点交互次数,从而提升 I/O 性能。

针对数据读场景,双活数据中心的业务主机只需要读本数据中心对应的双活存储阵列即可,避免主机跨数据中心读取数据,提升整体访问性能。 图3-18优选阵列模式数据读

[键入文字]

针对数据写场景,业务主机直接写本数据中心对应的双活存储阵列,避免主机跨数据中心转发数据,充分利用HyperMetro AA双活能力,AA集群的每个控制器都能够接收写I/O,由本地控制器处理本地主机的写I/O请求,减少跨数据中心的转发次数,提升方案整体性能。数据写I/O过程如图3-19所示。 图3-19优选阵列模式数据写

[键入文字]

3.1.4 高可扩展性

HyperMetro双活特性通过与OceanStor V3融合存储系统的其它Smart系列和Hyper系列特性组合,可形成多种数据保护和灾备解决方案。

3.1.4.1 两地三中心扩展

近年来,大范围自然灾害时有发生,3DC (两地三中心)容灾解决方案越来越受到业界重视和认可。所谓3DC即两地三中心,即一份数据有3份备份(包括自己)且分布在三个不同的地理位置即称之为三数据中心,通常是指生产中心,加上同城灾备中心以及异地灾备中心。

HyperMetro特性与OceanStor统一存储系统的HyperReplication特性组合,并结合 BCManager专业容灾管理软件实现3DC容灾。当生产中心发生灾难,可在同城灾备中心进行接管业务,并保持与异地灾备中心的容灾关系。若生产中心和同城灾备中心均发生灾难,可在异地灾备中心对远程复制进行主从切换,并拉起业务。 图3-20 3DC容灾方案

相对于传统的同步复制+异步复制的3DC方案,双活+异步复制的方案具有更好的资源利用率和故障切换速度。双活数据中心实现同城容灾时,可将同一关键业务负载均衡到双数据中心,并且在单数据中心发生故障,业务零中断,数据零丢失。在部署层面,双活数据中心支持平滑扩展为两地三中心,可先期实现同城双活,待异地数据中心建设完成后,再添加异步复制,实现应用异地保护。

[键入文字]

3DC方案中,BCManager能够提供简化管理的容灾拓扑展示与端到端监控功能,直观清晰的展示保护方案的状态与变化,实时监控相关设备部件,实现业务灾难切换前就识别问题与故障并协助用户排除,规避影响业务和增加成本的容灾切换发生。

3.1.4.2 异构双活

HyperMetro与OceanStor V3融合存储系统的SmartVirtualization特性结合,利用 SmartVirtualization特性的虚拟化功能,实现高可靠的存储资源整合和优化,提高资源利用率。

异构虚拟化就是把异构阵列映射到本端阵列(华为阵列)的LUN,作为本端阵列能提供存储空间的逻辑盘,再在该逻辑盘上创建eDevLun,逻辑盘为eDevLun提供了全部的数据存储空间,eDevLun的元数据卷的存储空间由华为存储提供。异构虚拟化可保证外部LUN数据完整性不被破坏,eDevLun与原异构LUN具有不同的全球唯一名称 WWN。由于eDevLun与本地LUN具有几乎相同的LUN属性,所以,异构虚拟化接管之后的 LUN可以通过HyperMetro技术为异构LUN提供双活功能。 图3-21异构阵列保护

[键入文字]

3.1.4.3 本地保护

快照保护

当遭遇病毒攻击或人为误操作等异常时,数据中心的数据可能被破坏。采用虚拟快照技术,在操作前对现有数据卷激活快照,实现本地数据保护。

虚拟快照采用写前拷贝(COW)技术,仅将变化的数据拷贝至快照卷,系统资源占用少。当原卷数据被错误修改或删除,需要进行恢复时,采用快照对原卷进行回滚,实现数据恢复,并且,快照卷可分别映射给主机进行数据测试和挖掘,不影响生产业务。结合华为容灾管理软件,激活快照前触发数据库完全检查点,待数据写盘完成后,激活快照,保证快照数据完全满足数据库的一致性要求,快速拉起数据库。 注意

如果将当前的双活数据进行快照回滚,数据会被覆盖,无法返回当前的状态。如果可能需要返回当前状态,需手动将当前状态打个快照。HyperMetro与HyperSnap结合,可分别在双活两则阵列上对双活成员LUN配置快照保护。 图3-22有快照保护的双活

卷镜像保护

卷镜像(HyperMirror)是一种本地数据持续保护技术,可以为一个LUN创建两个镜像物理副本,提供持续的冗余保护而主机侧不受任何影响。当某个镜像副本故障时,存储系统可以利用卷镜像提供的另一个镜像副本,保证主机业务继续正常工作,并且可以保障数据不会丢失。华为OceanStor V3存储系统支持与第三方存储系统的LUN创建卷镜像,提高第三方存储系统LUN的可靠性。.

[键入文字]

HyperMetro与卷镜像结合,可在镜像LUN基础上,再创建双活Pair。这种组合可充分利用本地数据保护和远程数据保护的特点,提供更高级别的业务连续性保护。逻辑图如图3-23所示。

图3-23有卷镜像保护的双活

[键入文字]

3.2 计算层双活

通过物理机部署跨数据中心的集群,可以保证在各种故障场景下,快速完成业务切换,提供零中断零丢失的业务访问。常见的虚拟化集群技术,有以下最突出的特点:

? HA重启恢复虚拟机,业务有短暂中断

? 发生宿主机故障时,运行其上的虚拟机在其它宿主机上自动重启恢复。该虚拟

机业务会有短暂中断,虚拟机内存数据会丢失。

? 虚拟机集群资源利用率提升数十倍

? 一台物理宿主机上能运行几台甚至几十台虚拟机,提供极高的资源利用率。 由此可见,解决虚拟机HA时业务中断是需要解决的首要问题,否则双活零业务中断无法满足。前述我们使用了负载均衡设备,可以实现在双活数据中心实现业务负载均衡,此时虚拟机上部署服务时,只需要在两个数据中心部署同样的服务,即可满足要求。因为当宿主机故障时,另一个数据中心的虚拟机上的服务可以实时接管业务。

当前,常见的几个虚拟化平台(VMware vSphere,FusionSphere)已经商用多年,稳定性和可靠性已经得到了验证。计算资源虚拟化的建议配置如下:

? 跨数据中心配置虚拟化集群,将计算资源虚拟化后,其上部署虚拟机。 ? 配置HA,使虚拟机受HA保护,故障时能自动恢复。

? 配置DRS,使虚拟机按业务要求更好的分布在不同宿主机上。网络大二层互通,使

虚拟机能无障碍跨数据中心在线迁移,提供虚拟化平台更好的维护性,日常维护时业务不受影响。

? 双活存储平台提供的共享存储空间,映射给虚拟化集群的所有宿主机,以便虚拟机

具备足够的灵活性。

计算层虚拟化双活改造后,虚拟机能更好的基于原计算资源负载均衡,资源利用率和运行效率能得到极大提高,新业务部署更为灵活和简单,所有虚拟机具备良好的高可靠性、在线迁移特性和易维护性。

虚拟机部署方式如下:B/S 和C/S

? 如果是B/S应用:Web和App采用虚拟机部署,虚拟机不部署集群。SLB可以检测

服务器故障,将业务分发到正常运行的服务器上。

? 如果是C/S应用:App如果采用虚拟机部署,虚拟机部署跨DC集群。

[键入文字]

3.3应用层双活 3.3.1B/S应用双活

工作原理

一个从浏览器发送的HTTP请求经过Web服务器(例如Apache)之后会被重新定向给应用服务器(例如Weblogic)。这个重定向的操作就是由Web服务器来完成的。一般的,一台Web服务器对应一个应用服务器集群,从而达到负载均衡效果。 图3-24 Web应用服务器集群部署

[键入文字]

图3-25 网络层 B/S请求转发拓扑图

如图所示,一个站点部署多台Web服务器,不组成集群,在SLB (F5 LTM)上创建两个资源池,将一个站点内部的所有Web服务器组成一个资源池。双活数据中心方案分别创建 DC1资源池和DC2资源池;

一个站点部署多台应用服务器,跨站点将同类应用服务器组成AA集群。 两个数据中心的应用服务器集群均连接跨DC的数据库集群。 HTTP Session持久化管理

一个HTTP Session是指一个用户在同一个浏览器上对服务器发出的一系列请求。HTTP Session使得运行在Web容器上的应用能够跟踪记录每个用户的一系列操作。Session持久化管理是指客户的所有后续请求都会被分发到同一台应用服务器上。通过 Session持久化管理,系统的性能会得到提高,因为各个应用服务器不需要重新创建和维护Session信息,

[键入文字]

而且这样也避免了前面Session丢失的情况。

应用服务器集群跨数据中心创建,使用内存同步完成Session持久化管理,即使跨数据中心访问,也不会Session丢失。 负载均衡

B/S应用的双活负载均衡,流程如下:

1.SLB接受到新的HTTP请求,根据负载均衡算法分发到Web服务器;

2.Web服务器接受到SLB分发下来的新的HTTP请求,然后在资源池中选择应用服务器节点进行转发。

a.HTTP Session持久化检查,检查请求的Cookie或URL中的jSession id参 数。如果匹配,那么插件就会将请求转给这台应用服务器。 b.如果不能匹配。插件会根据既定规则寻找合适的应用服务器。

3.Web服务器通过TCP/IP协议将浏览器请求转发给应用服务器。如果请求转发成功,应用服务器返回成功的TCP/IP ACK回复。如果超时无回复,Web服务器会返回一个500错误。

4. 返回应用服务器处理请求结果。发送请求后,Web服务器会进入等待状态。当应

用服务器返回对应的结果后,Web服务器结束其等待状态。如果请求处理失败, Web服务器会把应用服务器标为不可用的状态,并将请求转给另一台应用服务器。

3.3.2 C/S应用双活

C/S业务一般对外提供IP访问,例如使用一款Client软件,使用IP地址、用户名和密码登录某款应用。

如果C/S应用不支持分布式部署。主路由只能在一个数据中心发布,所以应用只能在单数据中心运行,但支持故障自动切换至备站点。将不同应用分布到2个数据中心运行。 图3-26 C/S应用双活原理(IP访问,C/S应用不支持分布式部署)

[键入文字]

如果C/S应用支持分布式部署,在两数据中心运行(对外使用不同IP地址)。手动配置客户端对应的服务器端IP,将不同客户负载均衡到两个DC;

图3-27 C/S应用双活原理(IP访问,C/S应用支持分布式部署)

[键入文字]

3.3.3数据库双活

数据库层双活通过数据库集群实现,在业界主要分为两种方式:A/S (Active- Standby)集群与 A/A (Active-Active)集群。

常见的 Active-Standby 集群系统有:IBM PowerHA、HP ServiceGuard、Microsoft WSFC、Veritas Cluster Server等。在主节点故障后,集群备节点将自动重新启动应用系统,无需管理员干预,即所谓的“故障切换(Failover)”管理员需要提前在所有集群主备节点上部署集群软件,由集群软件控制文件系统的挂载,应用系统服务的启动,以及公网IP地址的配置。主备集群架构如图3-28所示:

图3-28 A/S集群

Active-Active集群的多个集群节点可以同时提供同一项服务。采用Active-Active集群,可以做到故障的无缝切换,而且可以提升应用系统整体性能。当前典型、应用最广泛使用的是 Active-Active 集群,例如 Oracle RAC(Real Application Cluster)集群系统。Active-Active集群架构如图3-29所示: 图3-29 A/A 集群

[键入文字]

3.3.3.1 Oracle RAC 双活

Oracle RAC以共享存储为基础,通过共享的存储资源,实现各节点对数据文件、重做日志文件、控制文件和参数文件的并行访问,且在单个节点出现故障时,业务能自动切换到正常节点,从而保证数据库系统正常可用。

存储双活提供的双活LUN作为共享卷,实现跨数据中心的Oracle Extended RAC集群构建。Oracle Extended RAC集群配合Oracle监听器技术,可实现客户端在数据中心间业务双活访问和负载均衡;配合Oracle透明应用程序故障转移(TAF)技术,当服务器或单数据中心故障时,使客户端能够在新的连接中继续工作,防止业务中断。 在出现中间网络心跳链路故障时,Oracle RAC会采用如下的原则进行仲裁:

? 拥有最多节点数目的子集群(Sub-cluster with largest number of Nodes)获胜。 ? 若子集群内数目相等则拥有最低节点号的子集群(Sub-cluster with lowest node

number)获胜。

Oracle RAC建议采用“2+1”的部署方式,数据中心A部署2台服务器,数据中心B 部署1台服务器。保证在出现心跳链路故障时数据中心A的实例优先存活。若节点数一致,则建议部署时将节点号小的服务器部署在数据中心A。

Oracle Extended Distance Cluster 节点部署如图 3-30 所示: 图3-30 RAC网络拓扑图

[键入文字]

本文来源:https://www.bwwdw.com/article/bmeg.html

Top