APP下载

IT云服务能力平台业务连续性策略研究

2017-12-01王海霞黄植勤

移动通信 2017年20期
关键词:集群服务器中心

王海霞,黄植勤

(中国电信股份有限公司广东研究院,广东 广州 510630)

IT云服务能力平台业务连续性策略研究

王海霞,黄植勤

(中国电信股份有限公司广东研究院,广东 广州 510630)

IT云服务能力平台承载全网集中系统业务,存在着系统故障点集中、风险集中的风险,一旦出现故障容易导致服务中断,影响电信业务的受理。为了规避业务中断的风险,通过分析IT云服务能力平台的三层服务框架,从基础设施的高可用、服务器的高可用、应用层的高可用三个方面探讨了本地高可用的主要技术,并提出了IT云服务能力平台两地三中心的容灾部署方案以及IT云服务能力平台通过LVS+keepalived实现负载均衡的详细方法。

IT云服务能力平台 业务连续性 高可用 负载均衡

1 引言

日益激烈的市场竞争和不断提高的客户服务质量要求需要中国电信提供不间断的服务,尤其是发生灾难时也要提供一些关键业务的客户服务,避免企业的财务损失,保障企业信誉不受影响,增强企业核心竞争力,这对业务支撑系统提出了更高的数据保护和稳定运行要求。

自2004年以来,中国电信各省的业务支撑系统逐步从省集中建设转变为集团集中的模式,在市场拓展、客户服务等工作中发挥着越来越重要的作用;与此同时,集团级业务支撑系统集中化带来了业务快速响应等优势,但同时也存在系统故障点集中、风险集中的危险,如人为误操作、系统故障等一般风险以及大面积停电、水灾、地震等重大灾难。

IT云服务能力平台作为新一代IT架构核心,需具备基础能力,以平台为核心逐步实施BSS(Business Support System,业务支撑系统)全国集中系统部署上线,提升IT对4G等新业务的集约化运营支撑能力。全网集中对云平台的处理能力、稳定性、弹性部署、业务连续性等提出了更高的要求。鉴于此,本文将对IT云服务能力平台的业务连续性策略和关键技术进行分析研究。

2 IT云服务能力平台框架

IT云服务能力平台总体框架图如图1所示。IT云服务能力平台采用分布式框架,分别由Web层、服务层和数据层组成,每层都是由一组主机组成,采用集群部署模式,分别为Web服务器集群、应用服务器集群和数据库集群。集群可以看作是一个整体,集群的节点可以单独提供服务,各节点之间通过负载均衡实现高可用和故障隔离。

图1 IT云服务能力平台总体框架图

图2 IT云服务能力平台公共框架概要图

IT云服务能力平台公共框架概要图如图2所示。

平台公共框架是直接提供给BSS应用系统调用的开发框架,是BSS应用系统和各专题模块、第三方包之间的一个中心枢带。平台公共框架构建于Ketty和aLogic中间件之上。

Web层框架主要封装Web的相关框架,包括Session会话共享模块、Struts2相关基础模块、Filter、Servlet、分页工具以及调用服务层的接口封装等。该Web层应尽量依赖较少的第三方jar包,为Web层提供相关BaseAction基类和基础框架。

由于在分布式应用中,服务层和Web层是分开部署,Web层调用服务层的方法是通过远程restful服务。因此,框架对restful服务的调用进行了封装,使对Web层的调用是透明的。

服务层框架包主要封装后台服务的相关框架,包括业务逻辑基础类、全局序列、相关服务组装、restful开发封装等,处于Web层和数据层的中间。

服务层框架包为应用系统的后台服务层提供相关基类和基础框架。

数据层框架主要封装底层数据访问相关框架,包括抽象数据增删改查访问、mybatis封装、dao封装、全局序列生成等,并提供BaseDao和BaseEntity等基础类。

3 IT云服务能力平台业务连续性策略

3.1 本地高可用策略

从技术角度而言,可用性是指IT系统持续正常运行时间的百分比。它由两方面来确定:一方面是系统的可靠性,通常用MTTF(Mean Time To Failure,平均无故障时间)来衡量;另一方面是系统的可维护性,通常用MTTR(Mean Time To Restoration,故障平均维修时间)来衡量。那么,MTTF/(MTTF+MTTR)×100%表示为系统的可用性。因此,为提高系统的高可用,往往使用相关的高可用技术来提供保障,还可以从迅速地发现和解决故障,恢复系统正常运行这方面着手。

IT云服务能力平台主要采用以下高可用技术:

(1)服务器的高可用技术

服务器的高可用性有两个层次,通常情况下,开放平台应用服务器的高可用是通过结构冗余来实现,另外还可以提高服务器硬件的可靠性。结构冗余的方式主要包括双机热备、服务器N+1备份和负载均衡等模式,具体如下:

◆双机热备模式通常对生产系统采用1+1的冗余配置,硬件和软件完全一致,一旦生产服务器发生故障,系统软件也可发现故障,然后将应用自动切换到备用服务器,实现应用的快速恢复。

◆服务器N+1备份一般是采用1台备机对N台服务器进行备份,当任何一台生产服务器发生故障时,备用服务器则接管这台生产服务器继续服务。

◆负载均衡模式通常在群组中配置一些冗余服务器,当其中任何一台服务器出现异常时,路由将服务请求转到集群中的其他服务器,这样就能实现群组整体对外能力的可靠性。

总体来说,服务器N+1备份可维护性好,资源利用率较高,但恢复时效性稍差;而双机热备和负载均衡的恢复时间目标的性能较好,但维护起来相对复杂,并且存在资源冗余度大的问题。

在服务器硬件层面,目前服务器厂商采用了多项高可用技术如群集管理、提供远程镜像支持、软硬件监控等方式提供高可用的平台,还可以采用部件冗余等来保障服务器硬件的正常运行。

此外,随着虚拟化技术的快速发展,有效屏蔽了硬件之间的差异,服务器的可用性得到有效提升,从而实现了硬件资源的按需分配、服务器的在线迁移,即使发生服务器故障,系统也可以做到自动隔离故障部件,并且完成快速切换。

(2)基础设施的高可用技术

基础设施主要是指存储、网络和电源设备等,这些设备的可用性目前主要是采用冗余技术来实现。存储设施的高可用技术有以下两种方式:

◆存储设备内部的磁盘冗余:主要依靠RAID(Redundant Arrays of Independent Disks,磁盘阵列)技术实现,可以分为镜像冗余和校验冗余。

◆存储设备之间复制技术:具体是通过磁盘阵列自身的数据块复制技术手段来实现。

复制方式既可以采用同步方式,也可以采用异步方式。目前,同步方式主要应用于服务器I/O性能好、网络带宽充足和对J恢复点目标(RPO)要求高的应用环境,主要包括EMC SRDF/S(Symmetrix Remote Data Facility/Syncronous,同步远程数据复制拓扑)、HDS TrueCopy等;异步方式主要适用于对磁盘性能和网络带宽要求低的应用环境,主要包括EMC SRDF/A(Symmetrix Remote Data Facility/Asyncronous,异步远程数据复制拓扑)、HDS HUR(远程异步容灾软件)等技术。

网络高可用技术通常包括网络接口冗余、网络负载均衡技术、多个备用的交换机和路由器、多网卡聚合等。电源的高可用性既可以通过UPS(Uninterruptible Power System,不间断电源)来保障,也可以配置冗余的电源来提供保障。

(3)应用层的高可用技术

该层使用的技术主要包括以下两方面:

一方面是提高应用的可靠性,如在业务处理的时候采用负载均衡模式,在应用接入方面采用多点接入架构,在应用数据库方面采用高可用技术;

另一方面是提高应用可维护性,如故障监控、故障报警和系统恢复等工具。

负载均衡模式具体实现方式是将多个节点部署在应用层,这些节点承担同样的业务,如果一个节点发生故障,服务访问请求能够被系统自动转到其他节点处理,并且其他节点均不受影响。

多点接入架构主要采用的方式是同时部署多个访问接入点,并且在不同地点提供多套彼此独立的冗余应用系统,如果任何一地或者多地的应用系统出现故障,其他地点的应用系统能自动接管。多点接入架构大多适用于网上银行、电话银行等渠道交易处理类型的应用系统。

数据库的高可用往往通过冗余的方式实现,包括结构和数据的冗余,具体如下:

◆实现结构冗余的有Standby技术和集群技术,Standby技术适用于故障时的主、备用数据库快速切换,一般是采用事务日志同步方式来实现,如Oracle的DataGuard等,数据库的集群架构技术可通过多节点负载均衡提供故障容错和无缝切换,如Oracle的Real Application Cluster。

◆数据冗余一般通过数据备份和磁盘复制来完成,如为了将生产系统的数据备份到磁带介质离线保存,可使用集中备份软件(如NetBackup),还可以通过Oracle软件工具EXP、RMAN进行数据库的数据导出备份。

此外,在信息系统的运行维护中还广泛使用了一些应用工具,如监控报警、系统恢复和故障诊断等,使用这些应用工具可以尽快发现服务器、网络、电源和应用等的故障,并能在短时间内完成诊断和修复应用组件,大大减少了应用系统的平均维修时间,从而有效提高可用性。

3.2 容灾策略

IT云服务能力平台两地三中心部署示意图如图3所示。

图3 IT云服务能力平台两地三中心部署示意图

“两地三中心”中的两地是指同城和异地;三中心是指除了生产中心外,还包括两个容灾中心,分别是同城容灾中心和异地容灾中心。由于近几年国内外曾发生过大范围的自然灾害,“两地三中心”即同城双中心加异地灾备中心的灾备模式应运而生,这种灾备模式的优势是既有高可用性,又具备灾难备份的处理能力。

同城双中心的具体实现方式是建立两个数据中心,分别位于同城或邻近城市,这两个数据中心相互独立,并具备基本等同的业务处理能力来承担关键业务运营,两个数据中心之间是通过高速链路实现数据的实时同步。正常情况下,双中心是同时运行的,互相之间可切换运行,并同时分担业务;灾难情况下,双中心可进行灾备应急切换,保障业务连续性,并且可做到基本不丢失数据。与异地灾备方式比较而言,同城双中心建设快、投资低,并且可靠性高、运维管理比较简单等。

异地灾备中心通常远离生产中心的所在城市,在其他城市建立一个灾备中心,对生产数据进行备份,当生产中心出现故障时,就可以启用异地灾备中心的备份数据,实现业务的恢复。

总体而言,两地三中心的灾难恢复方案可以保障不同灾难场景下的业务连续性要求。

由于本地机房与生产中心位于同一个机房,它们之间是通过局域网进行连接的,因此比较容易实现生产与灾备服务器之间应用切换和数据的实时复制,本地机房的容灾主要是用于防范生产服务器的故障。

由于异地灾备中心与生产中心不在同一个机房,受限于生产端与灾备端连接的网络线路带宽和质量,因此应用系统的切换需要一些时间,异地灾备中心完全可以在业务限定的时间内进行恢复和实现在可容忍丢失范围内的数据恢复。异地灾备中心主要用于防范大规模区域性灾难。

IT云服务能力平台上的承载业务按照重要性分为三级:一级业务是支撑生产的关键业务;二级业务是实时性不高的查询;三级业务是指统计业务等。为了保障业务的连续性,具体实现方案如下:

(1)三中心同时在线

同城两IDC(Internet Data Center,互联网数据中心)各承接49.5%的一级、二级业务访问流量。异地备IDC承接1%的一级、二级业务随机热度流量,确保所有应用版本和数据的正确性。异地备IDC同时承接三级业务流量,如实时性不高的统计报表业务、各省数据准实时同步以及一些临时取数操作等。同一中心内的应用和数据原则上部署在同一个机房内。

(2)三中心应用软件版本一致

各IDC中心部署全套应用软件,各IDC中心应用软件版本统一一致(除灰度发布状态)。应用依据请求类型,动态加载租户个性化插件。

(3)三中心业务部署

各IDC中心分别都存储一套全量业务数据,主数据库集群和备数据库集群结构一致。二级业务访问同城备数据库,三级业务数据仅仅在异地备数据集群存储(三级业务数据可通过一级业务数据重新计算生成)。各IDC数据集群,数据库采用一主一从。

(4)访问分类

一级业务数据操作:所有IDC应用都连到主IDC数据集群;

二级业务数据访问:所有IDC应用都连到同城备IDC数据集群;

三级业务数据操作:连到异地备IDC数据集群。

(5)IDC间数据同步

主备IDC中心通过异步方式进行数据备份。主IDC到同城备IDC 99.9%的数据同步时延5分钟内,同城备IDC向异地备IDC 99.9%的数据同步时延30分钟内。外系统数据同步给主IDC数据集群,单次数据量不大于5千条,可通过实时接口发送;单次数据量大于5千条,可通过数据同步,10万条最大时延在10分钟。异地备IDC同步到各省99.9%的数据同步时延30分钟内。

(6)数据准确性保障

记录全部数据的变更日志,对日志及主数据进行核对,确保数据准确。记录关键数据变更日志,对日志和备份数据进行核对,保障备份数据准确一致。

4 业务连续性关键技术

4.1 集群

集群一般是由一组计算机构成,每个节点可以是不同硬件构成的计算机,也可以是部署不同操作系统的计算机,从外部看起来又是一个整体。如提供Web服务的集群,集群的每个节点可以单独提供服务,对外界而言可看作是一个大Web服务器。

常见的应用服务器集群、Web服务器集群和数据库集群属于负载均衡系统。负载均衡系统是指集群内所有的节点同时分担系统的工作负载,它们都处于活动状态。负载均衡集群一般适用于相应网络请求的网页服务器和数据库服务器。负载均衡集群可以在接到请求时检查到接受请求较少、不繁忙的服务器,并把请求转移到这些服务器上。从检查服务器状态这一点来看,负载均衡和容错集群比较接近,不同之处在于负载均衡集群的数量更多。

集群系统主要解决以下问题:

(1)负载均衡:集群中的计算机共同承担负载压力,这样主服务器的负载得到缓解,主服务器的硬件和软件要求也随之降低。

(2)高可靠性(HA):通过集群管理软件提供不间断服务。

(3)高性能计算(HPC):通常适用于科学计算领域,并行处理复杂运算。

4.2 负载均衡

负载均衡比较常用DNS(Domain Name System,域名系统)负载均衡,还包括反向代理负载均衡和IP负载均衡等,即在集群中有服务器A、B、C,它们之间互不相干,当其中任何一台的机器宕机了,都不会影响其他机器的运行。用户发来一个请求时,通过负载均衡器的算法来决定由哪台机器处理,如使用round算法,分别有用户a、b、c,则分别由服务器A、B、C来处理。

(1)基于DNS的负载均衡

在DNS服务器中,不同IP地址的服务器可以配置相同的名称,查询服务器根据名称解析得到一个IP地址。因此,不同的查询服务器可以访问不同IP地址上的Web服务器,实现负载均衡的目标。

(2)基于NAT(Network Address Translation,网络地址转换)的负载均衡

负载均衡的方式具体是通过地址转换网关实现,配置内部IP地址的计算机通过转换网关可以访问外网。而且地址转换网关能将每个外部访问连接均匀转换为不同的内部IP地址,则外网中的服务器就能各自与自己转换得到的地址上的计算机进行通信。

(3)反向代理负载均衡

通过代理服务器实现负载均衡,客户通过代理访问内部Web服务器,代理服务器可以将请求均匀地转发给多台内部Web服务器上。

4.3 IT云服务能力平台采用LVS+keepalived

IT云服务能力平台整体采用分布式架构,Web层和服务层都采用集群部署模式,通过负载均衡实现访问调度,实现服务器集群高可用和故障隔离,具体采用LVS+keepalived的方式,其中LVS(Linux Virtual Server,Linux虚拟服务器)实现负载均衡,keepalived承担健康检查和故障转移,提升系统的可用性。采用这种架构对现有系统的扩展非常容易实现,只需更改LVS的配置文件,并在后端添加或者减少realserver,就能实现无缝配置变更。

LVS是一个开源的软件,可以实现Linux平台下的简单负载均衡;keepalived是运行在LVS之上,其主要功能是实现真实机的故障隔离及负载均衡器间的失败切换,提高系统的可用性。

keepalived的主要作用是检测服务器的状态,并能将有故障的服务器从集群中去除,当服务器修复后,keepalived可以把恢复正常的服务器重新加入到服务器集群中。

LVS+keepalived切换过程如下:

(1)主从机完成keepalived的安装,并且把vip指定到一台机器上。

(2)把主机断网或者是数据库stop,vip飘走。

(3)查看从机的ip,得到vip。

5 结束语

本文结合IT云服务能力平台的框架,分别从本地高可用策略和容灾策略两个方面探讨了业务连续性的主要策略,并提出了IT云服务能力平台两地三中心的具体实现方案。同时,重点分析业务连续性主要实现的技术,包括集群和负载均衡技术,以及IT云服务能力平台通过LVS+keepalived实现负载均衡的具体方法。目前,虚拟化技术成为重要的发展方向,运用该技术能够显著提高计算机的工作效率。按应用领域的维度,虚拟化技术可以划分为服务器虚拟化、存储虚拟化、网络虚拟化等;按实现层次的维度,虚拟化技术又可以划分为硬件虚拟化、操作系统虚拟化、应用程序虚拟化等。下一步,虚拟化技术将成为IT云服务能力平台重点研究领域。

[1]刘振栋,罗群. 基于云平台的业务与数据迁移技术分析与研究[J]. 信息与电脑: 理论版, 2015(17): 32-33.

[2]高勇. 业务连续性管理与灾难管理——从IT连续到业务连续[J]. 中国信息安全, 2014(12): 114.

[3]杨钧,黄传俊. 云架构下支撑系统业务连续性提升方案研究[J]. 江苏通信, 2016(6): 43-45.

[4]梁晓欢. 数据库安全、虚拟化和云计算——现代IT领域数据保护所面临的三大关键技术挑战[J]. 电脑与电信,2011(4): 5-8.

[5]王霜,修保新,肖卫东. Web服务器集群的负载均衡算法研究[J]. 计算机工程与应用,2004,40(25): 78-80.

[6]李双庆,古平,程代杰. Web集群系统负载均衡策略分析与研究[J]. 计算机工程与应用,2002,38(19): 40-42.

[7]李坤,王百杰. 服务器集群负载均衡技术研究及算法比较[J]. 计算机与现代化, 2009(8): 7-10.

[8]盖九宇,张忠能,肖鹤. 分布式数据库数据复制技术的分析与应用[J]. 计算机应用与软件,2005,22(7): 36-38.

[9]孙海燕,王晓东,肖侬,等. 数据网格中的数据复制技术研究[J]. 计算机科学, 2005,32(7): 13-16.

[10]张秋余,王璐. 分布式系统中数据复制的研究与应用[J]. 计算机工程与设计, 2005,26(5): 1185-1186.

[11]刘威. 信息系统的高可用性建设探讨[J]. 中国金融电脑, 2012(6): 44-48.

[12]刘威. 商业银行的业务连续性管理探讨[J]. 中国金融电脑, 2012(10): 58-61.

Research on Service Continuity Strategy of IT Cloud Service Capability Platform

WANG Haixia, HUANG Zhiqin
(Guangdong Research Institute of China Telecom Co., Ltd., Guangzhou 510630, China)

As IT cloud service capacity platform bears the centralized system services of the entire network, there are disadvantages of intensive system fault point and centralized risk. Once fault happens, the service would be interrupted and the telecommunication service reception would be affected. In order to avoid the risk of service interruption, three-level service architecture of IT cloud service capacity platform was addressed. From three aspects including the high availability of infrastructure, server and application layer, main techniques of local high availability were discussed. In addition, the deployment scheme of remote disaster recovery in three centers of two places for IT cloud service capacity platform was put forward. Finally, the detailed method to implement load balancing by means of LVS+keepalived for IT cloud service capacity platform was elaborated.

IT cloud service capability platform service continuity high availability load balancing

10.3969/j.issn.1006-1010.2017.20.005

TP393.0

A

1006-1010(2017)20-0027-06

王海霞,黄植勤. IT云服务能力平台业务连续性策略研究[J]. 移动通信, 2017,41(20): 27-32.

2017-05-19

责任编辑:袁婷 yuanting@mbcom.cn

王海霞:高级工程师,硕士毕业于武汉大学,现任职于中国电信股份有限公司广东研究院,主要研究方向为IT系统架构设计、需求分析等。

黄植勤:高级工程师,学士毕业于大连理工大学,现任职于中国电信股份有限公司广东研究院,主要研究方向为IT系统架构设计、需求分析、应用性能管理、IT系统软硬件评测等。

猜你喜欢

集群服务器中心
剪掉和中心无关的
在打造“两个中心”中彰显统战担当作为
通信控制服务器(CCS)维护终端的设计与实现
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
别让托养中心成“死亡中心”
Python与Spark集群在收费数据分析中的应用
中国服务器市场份额出炉
勤快又呆萌的集群机器人
得形忘意的服务器标准