Chinaunix首页 | 论坛 | 博客
  • 博客访问: 714331
  • 博文数量: 535
  • 博客积分: 9970
  • 博客等级: 中将
  • 技术积分: 7260
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-15 03:47
文章分类

全部博文(535)

文章存档

2011年(1)

2008年(534)

我的朋友

分类: 服务器与存储

2008-06-23 01:15:14

 
 
 
 
 
 
 

、 需求分析
  
随着移动业务的迅猛发展和移动用户的迅速增加,移动通信市场的竞争日趋激烈。移动通信有限公司现有的各业务系统相对分散、孤立,缺乏有机的联系,很难对市场的变化作出迅速反应。为了适应竞争和企业的长远发展目标,迫切需要建立一个集中的、模块化结构的、可扩展的数据中心。
在新的业务系统中,应用的高可用和数据的高可用是最重要的两个部分,可以说是新系统成功与否的关键。两者即相互独立又密切相关,需要从整体上去设计和实施。
  
所谓高可用性,用最简单的话说,就是系统在使用过程中有百分之多少的时间是可用的。一般情况下,群集系统需要达到99~99.8%的可用性,也就是说,系统每年有四天零九个小时不可用是可以接受的。  
如果对系统进行了一些特别的优化管理,减少一些配置上不必要出现的错误,把可用性提升到99.9%~99.98%也是不成问题的。在某个群集中,可以使系统的可用性达到4个9或5个9;对于一些容错率特别高的系统,可能达到5个9,甚至6个9以上。
怎样才能让系统达到更高的可用性呢?
  
一般说来,一个高度可靠的应用系统具有以下特征:
l            包含一个完善的面向数据库的备份/恢复系统,以保证各种意外情况下的数据后备支援。
数据存放在一个地方总是有风险的,况且人为的逻辑错误有可能破坏数据,采用高性能、完善的备份系统,将数据的另一个Copy存放到价廉的存储介质上,是数据安全的基本保证。
l            包括一个本地的双机系统,用集群方式保证本地业务的不中断运行。
在网络、系统与数据的各个环节出现故障时,如何使系统的运行不受影响,或尽量少受影响。电信计费业务系统,要求系统保证7X24小时不间断工作。所以,必须从设备选型和方案设计上保证系统的高可用性。应用系统应配备安全性能极高的cluster 高可用热备份软件,该软件应该具有应用广泛、切换迅捷、用户界面友好、配置方便等特点。在任何应用环节故障的情况下,cluster软件应能做到不停机应用切换,确保应用系统平稳运行。
l            包括一个远程的容灾系统,保证在本地工作环境出现故障的情况下远程异地的备份系统能够自动接替工作。
在一般的系统设计中,自然而然地会考虑数据备份和Cluster结构, 全面地解决了本地数据的安全性和可用性。
但是,今天企业对数据可用性的认识达到了一个新的层次,不允许哪怕只有1%的可能性的问题对数据可用性带来的威胁,例如火灾、电力中断、地震等。容灾已成为数据可用性解决方案的重要组成部分。异地容灾系统提供一个远程的应用备份现场,有效地防止因本地毁灭性灾难(地震、火灾、水灾等)引起的数据丢失。
  
  
  
二 移动计费系统的容灾系统解决方案建议
  
       容灾主要是预防场地问题带来的数据不可用性,这些场地问题包括:电力中断:供电部门因各种原因长时间的中断;电信中断:各种原因造成的通信线路破坏自然灾难:地震,火灾,水灾等场地迁移:IP部门决定将数据中心迁移到其它地方等。作为企业的关键业务,任何原因造成的业务中断都将影响其经济收入,降低市场分额,丢失客户,甚至造成企业破产。容灾系统将这种“场地”故障造成的数据不可用性减到最小。即当灾难发生时,容灾系统保证(1)数据在远程场地存有一致、可用的拷贝;(2)应用立即在远程现场运行。
2.1异地容灾
异地容灾系统的核心就在于在不同的地方将灾难化解,在实践中主要表现为两个方面:一是保证企业数据的安全;二是保证业务的连续性。由于工作站点和灾难恢复站点运行同样的系统,包括操作系统、基础数据库和应用软件,并通过数据复制管理器完成在线和实时的本地复制,或者通过光纤通道的远程数据复制。假如工作站点发生灾难,不能再继续工作,这时容灾中心会将业务数据及时恢复到备用服务器上,并自动将业务切换到备用服务器,然后实现业务的远程切换,恢复系统不间断的运行,在容灾中心实现应用的异地容灾,这个过程只需要几秒或者几分钟的时间。
与高可用性相比,异地容灾对系统提出了更高的要求。异地容灾系统比集群系统能提供更高的高可用性和更快速的群集信息处理能力。集群系统被放置在同一个地理位置或一个机房里面;而容灾系统至少需要两个机房,或分别放置在不同地理位置上。集群系统中的每个成员之间的距离通常在三公尺之内;但容灾群集系统的两个机房之间的距离可以达到几百或者上千公里。一旦灾难出现,如洪水、火灾、地震或恐怖分子的骚扰,只有不同地理位置的群集系统之间的相互“接管“才可以保证整个网络系统的正常运行。集群系统的投资比较适中,较容易被用户接受;而容灾系统的投入非常大,需要立足长远的投资眼光,目前,国内各个行业都比较重视对容灾系统的投入。  
异地容灾的核心就是在工作站点以外的地方将灾难化解,所以异地容灾解决方案的基本原理就是在工作站点一定距离之外设立灾难恢复站点,然后通过网络设备将生产站点和灾难恢复站点连接起来,以实现实时的数据同步。异地容灾解决方案以存储区域网络为基础,在存储区域网络与网络之间采用光纤通道交换机来实现连接。
异地容灾系统的关键技术包括网络技术、存储技术与解决方案。从网络层面而言,无论是ATM网络还是光纤网络,都已经在世界各地得到了广泛的应用;在存储技术方面,RAID、磁盘等基础技术已经成熟,磁盘阵列的应用已经遍布全球每一个角落;存储区域网络(SAN)在世界各地也得到了全面的认同。
  
因此,容灾方案的核心是两个关键技术:数据复制和应用的远程切换。
  
2.2数据复制的分类
存储复制也有两种方式可以实现:在存储阵列级或主机级。基于阵列(或叫硬件)的存储复制通常价格昂贵,需要许多专用硬件,而且这种复制只能在同种阵列间进行。主机级的数据备份是采用软件的方式,在CPU级完成的,独立于所使用的阵列。数据复制采用TCP/IP标准协议完成。
2.2.1基于存储系统的远程数据复制
这种方法是基于磁盘阵列控制器的远程数据复制,它有在主副存储子系统之间同步/异步数据镜像的能力。对主机的资源占用很小,能保证业务正常运行下的I/O响应。缺点是占用大量的磁盘阵列资源,降低存储设备的性能;仅能实现数据的远程复制,对于应用的切换还需要软件来实现。
目前能够提供此类解决方案的厂商有IBM、HP、EMC等,上述厂商的方案有以下特点:
Ø        硬件厂商只支持自己的硬件存储设备
Ø        传输距离限制
Ø        存储设备造价昂贵,扩展费用高
Ø        须配置特殊硬件软件设备
Ø        占用主机资源小
Ø        占用存储设备(磁盘阵列)的大量资源,影响其性能
  
2.2.2基于主机系统的数据复制
这是通过软件形式实现的数据容灾方法。数据安全性方面的公司,比如VERITAS推出了一系列的跨平台存储管理软件的解决方案。
此种解决方案有如下特点:
Ø            不依赖于存储硬件,用户可以灵活地选择任何厂家的磁盘阵列
Ø            设备管理简单,IBM、HP、EMC等需要复杂的硬件管理知识
Ø            价格相对于硬件实现,便宜很多。
Ø            两个现场间的距离不限
Ø            主机资源占用(约5%)
越来越多地取代硬件实现方法,成为主流
  
2.3数据复制技术
  
       数据复制是指将关键信息(数据和环境)安全、一致、实时的存放到容灾现场。实际上,从一个服务器到另一个服务器的数据复制有很多方式可以完成。传统地,一般采用磁带传送的技术分发数据。但是,今天企业的运作完全建立在电子商务的基础上,对数据立即存取的要求越来越高,计费系统更是这样。基于磁带的容灾系统虽然简单,但是它不支持这种数据立即存取的运行模式。取而代之的是在线数据复制技术。
       数据复制一般有两种基本的策略来取得:
       存储复制: 批量地将文件或数据块从一台服务器传送到另一台或多台服务器。存储复制独立于应用,这意味着运行在单台服务器上的多个应用,其数据可以同时复制到备用服务器上。
       应用级复制:是应用相关的,例如数据库或Web 分别采用不同的复制方法。一般这种复制在交易级(表或行)完成。如果有多个应用在同一个服务器上,各自采用自己的复制技术。
       相比之下,应用级复制管理复杂,常常只复制数据,而不能复制应用和系统的实时运行环境,影响应用在备份服务器上启动的时间。
       存储复制在卷一级进行,对应用透明,具有极强的通用性,最重要的是复制整个应用环境,能够立即在备用服务器上运行应用,保证系统的高可用性。
       Veritas提供卷一级的数据复制解决方案。
  
2.4数据复制方式
  
     
       软件数据复制方式具有配置灵活、价格低、高性能等特征。Veritas 数据复制软件提供两种复制类型:同步复制和异步复制。应用系统采用哪种复制模式,将决定于很多因素。
  
同步复制: 在同步复制环境中,系统上的应用写操作完成之前,数据必须写到复制系统中。这保证了任何时间任何情况下目标系统上的数据尽可能的新,即远程现场的数据和本地现场的数据有完全一样的影像。但是如果数据复制的网络带宽不够,同步复制可能会带来本地系统性能下降。
  
异步复制; 异步复制时,本地系统不等待对远程系统写的确认,复制软件将数据排队,在网络科研用的情况下批量的发送。Veritas采用Log技术支持异步复制,以保证远程系统上的写操作与本地的写有同样的顺序,从而维护远程数据的完整性。
很多情况下,同步复制和宜步复制模式结合使用。例如当网络问题发生时,同步转换成异步,问题解决后,再转回同步。从而保证容灾系统的可靠性。
  
2.4.1 Veritas Volume replicator
  
Volume replicator是一个高度可扩展的、灵活的存储复制解决方案,提供一个现场到另一个或多个场地的数据复制,保证复制数据的完整性。
       Volume Replicator 与Veritas Volume Manager集成在一起,复制逻辑卷级的数据。这意味着复制完全对存取数据的应用透明。无论何时数据写到复制的卷, Volume replicator 自动地将其发送到一个或多个远程场地的服务器上


Volume Replicator 提供同步复制和异步复制两种模式。同步复制时,一个写操作在复制完成之后再提交;异步复制根据网络的可用性将写操作排队。同步复制与异步复制可以设定在某种方式下自动转换。从而保证复制系统的可靠性。
  
Volume Manager:企业级的数据硬盘卷管理和维护工具,使用Volume Manager不但可以实现Raid0+1到Raid5的磁盘冗余管理,还可以在不中断业务数据的情况下进行数据卷和数据块的在线调整。这对于支持电信业务数据的快速增长是非常必要的。VERITAS Volume manager 是一个真正的存储管理软件, 对目前存储管理上面临的问题迎刃而解。Volume Manager的主要功能特点如下:
l            突破了OS对一个磁盘7个分区的限制, 任何一个卷可以从自由硬盘缓冲池里扩充容量. 例如, 在OS中, 300MB的/mnt 区是不能够在线扩充的, 而Volume manager     可以。
l            Raid 结构的在线重组.     例如, 5个Disk的Raid可以在线改为6个 Disk的Raid5。
l            I/O平衡. 例如, 当一个Volume 上的数据访问太密集时, 可以将其数据转移到另外的Volume 上去。
l            在同一个GUI上集中管理所有的存储设备。
l            增强的Mirror功能, 使得同时允许多个Disk 故障, 且恢复时间快。
l            支持RAID0, RAID1, RAID0+1, RAID5。
l            DMP(Dynamic Multipath)功能, 改进I/O 吞吐率, 且支持冗余。
  
Volume Replicator特点:
  
l                             复制在逻辑卷级进行,对应用软件透明,配置灵活。
l                             支持任何数据类型,包括存储在Raw 设备上的数据库
l                             工作在任何IP网上:LAN WAN,支持到32个复制节点
l                             保证任何时刻所有系统数据的完整性
  
  
3. 应用的远程切换
       容灾系统的最终目的是提高应用和数据的高可用性,保证即使数据中心现场灾难的情况下,计费系统停机时间最短。
       在数据复制已保证了远程现场数据一致性的情况下,如何监视本地系统的运行情况?什么情况视为灾难?如果灾难的条件成立,如何尽快的在容灾现场启动应用,从而使得计费服务不中断?这是容灾系统另一个核心。
       Veritas 容灾解决方案区别于其他厂家主要在于,Global Cluster Manager 有效地解决了这个问题。Global Cluster Manager 集成于Veritas Cluster Server, 它们协同操作,构造一个坚实的HA系统。
       容灾系统是构造24小时数据可用性业务的一个组成部分。其实许多公共的因素威胁着数据中心,因此一个健全的本地HA系统是容灾系统建立的前提。Veritas Cluster Server是构造HA系统最领先的解决方案。
  
3.1 Veritas Cluster Server
  
VERITAS 的VCS 定义为:多台服务器协同工作,保证客户能够随时存取应用和数据。具体的,VCS保证应用在一台服务器上故障时,可以快速地切换到另一台服务器上,从而,提供应用和数据的高可用性。
应用切换时,需要在数据的一致性基础上完成,因此,快速的文件系统是提高切换时间的根本保证。
  
Veritas File System (VxFS) 这是是OS的一个文件系统, 完全嵌入OS里,克服了传统的UNIX文件系统UFS的缺陷。VFS是一个日志式文件系统,     UFS修改文件时, 采用先读后写的方式, 即修改的文件块先缓存在系统内存缓冲区里, 一定的周期内再写到盘上。 当系统由于破坏而重起时,Fsck程序要对文件系统做一致性检查, 需要逐个查对文件索引表(inode), 一般需要花相当长的时间。VFS在系统盘设置Log区, 记录修改过的inode, Fsck只需检查这些文件即可, 因此, 可以让系统快速恢复。另外, VFS采用的基于扩展(extent-based)的数据块分配方式, direct-I/O 和discovered direct I/O技术, 提高了对大文件访问的I/O性能.
概括起来, VxFS具有如下特点:
l            支持系统crash后快速恢复功能;
l            提供文件系统的在线伸缩(shink and resize);
l            提供文件系统的照相功能, 使得数据在线备份;
l            提高大文件的I/O吞吐率
  
VCS区别于第一代HA 产品的关键点在于:VCS是基于应用级的高可用软件.在一个CLUSTER环境中,如果一台服务器运行多个应用,只有一个应用出现故障,那么VCS只将该应用切换到预先定义的服务器上,另一个应用仍然在原来的服务器上继续运行。
VCS将其监视的应用当作一组资源来管理,这一组资源定义为资源组(RG)。例如Web-Server, 要保证这个应用正常运行,VCS将监视存放数据的磁盘组,该磁盘组上的文件系统,网卡,IP地址及Web服务进程. 也就是说,     Web-server应用由这几个资源组成. 对每个资源的监视工作均由叫做Agent 的程序完成


既然vcs是基于应用的高可用软件, 一台服务器上运行的多个应用可以切换到不同的服务器上.。例如,下图中,服务器A,B,C分别运行4 个应用.当服务器B出现故障时, RG-Web切换到服务器A上, 应用RG-Oracle 切换到服务器C上。当然条件是他们都能存取对应的应用数据。
  
概括起来VERITAS VCS 具有如下特点:
l                          真正的图形化管理,如图


l            提供应用级的高可用性
l            提供对应用的多级监视, 在了解应用故障原因的基础上切换应用
l            支持多到32个服务器节点的CLUSTER结构
l            对服务器系统的稳定性提供监视
l            快速的应用切换过程
l            支持多种应用,提供丰富的agent机制,如web server,Oracle,Informix,      
Sybase,多网卡等
安装,管理,使用简单, 管理界面基于Java。
  
3.2 Global Cluster manager
  
       GCM管理一个或多个现场的所有Cluster,管理工作在单台系统控制台上完成。它的功能如下:
l            管理所有Cluster 中的应用运行情况,
l            制定应用切换策略,例如可以在同一现场的多个Cluster之间切换,此时不需要管理员干预。
l            决定灾难发生的定义,并制定灾难发生时,系统应对策略
l            利用Veritas 的ENE,可以向管理员发送报警信息,例如发送SNMP Trap 或Pager 信号。
  
数据复制Volume replicator本身需要是高可用的,它将在VCS环境下运行,保证在运行服务器各种故障时,Voulume Replicator随着应用一起切换到VCS监控的另一台服务器上,继续完成复制。
在由VCS/VVR/GCM构造的容灾系统中,GCM监视整个应用环境的运行过程,一旦定义的灾难发生,它将自动地或被动(需要系统管理员确认)地将应用切换到指定的容灾中心。
系统管理员制定合适的灾难条件,例如现场完全瘫痪10分钟或某个应用停止运行半小时。当这种情况发生时,我们可以设定有GCM自动切换应用,或向系统管理员报警,得到确认后,再切换应用。无论应用切换是自动还是需要确认,两个场地之间应用的启动过程均无须人工干预。
  
下图是两个场地容灾系统最基本的结构图。本地现场是基于三个节点Cluster的多个应用,容灾场地配置成两个节点的Cluster系统,它们配有同等容量的存储,并具有数据容错功能。 Site A运行的是关键业务,完全置于容灾系统控制之下。Site B的业务是一般业务,不做容灾。整个HA系统的工作过程为:
l            应用在Site A运行过程中,所存取的数据通过主机上的VVR实时地复制到Site B
l            一旦因为运行主机或应用故障造成应用 在这台系统上班Downtime, Cluster     立即将其切换到定义好的另一台系统上,响应地数据复制继续在新服务器上工作
l            一旦应用在Site A 所有系统上均不能运行,或Site A 本身出故障,GCM 将自动或在得到管理员确认后将该应用切换到Site B
l            应用在Site B立即运行,所有的Client自动存取Site B

本方案由主数据中心和备份中心组成,网络连接可以是LAN或WAN,只要基于TCP/IP;纯软件实现数据复制,独立于存储设备--可选择HPUX服务器、NT服务器或Solaris 服务器支持的所有存储设备;同样支持同步和异步的数据复制,并且可以相互切换,互为备份;结合VERITAS Cluster Server和VERITAS Global Cluster Manager软件,不仅能够实现数据复制,还能支持主结点与备份结点间的应用自动切换,以及支持多达32个地域间的容灾。  
容灾系统运作过程
Ø        正常情况下,数据中心和备份中心的系统均处于运行状态,但业务处理系统只在数据中心运行;同时,业务系统对数据的任何修改,会实时同步地复制到备份中心。  
Ø        当数据中心的某些部件发生故障,如进程出错、内存损坏等情况发生时,产生故障的机器上的应用系统会自动地由VCS 快速切换到数据中心的其他机器,整个系统正常运行。  
Ø        当灾难发生,导致数据中心整个系统瘫痪时,Global Cluster Manager会马上监测到这种异常情况,及时向管理员发送各种警报,并按照预定的规则在备份中心启动整个业务应用系统。  
Ø        数据中心的计算机网络系统修复后,VERITAS Volume Replicator可将备份中心的当前数据复制回数据中心,然后将应用系统从备份中心切换回数据中心,备份中心的系统重新回到备份状态。

阅读(476) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~