1计算机高可用集群系统和云存储

所谓集群(Cluster)是指两台或多台服务器构成的一种松散耦合的计算节点集合。集群通常可分为:高性能计算科学集群、负载均衡集群和高可用性集群,但在实际应用的集群系统中,这三种基本类型经常是混合和交叉的,而高可用性集群(High AvailabilityCluster),是指以减少服务中断时间为目的的一种服务器集群技术。在这个集群中的每个节点都是运行其自己进程的独立服务器,但这些进程可以彼此通信,并协同起来作为一个整体向用户提供应用程序、系统资源和数据资源。此外,集群系统还具有恢复服务器级故障、在集群中可根据需要随意增、删系统节点和通过系统级的冗余来提供整个系统的可靠性和可用性的功能。

所谓云存储的概念应该是从云计算概念上延伸和发展起来的,就像云服务的概念一样。云存储主要是指通过运用集群、网格技术分布式文件系统等功能,将网络中大量各种不同类型的存储设备集合起来协同工作,并共同对外提供数据存储和业务访问功能的一个存储系统,或者也可以认为云存储就是一个以数据存储和管理为核心的云计算系统。

2基于云存储的高可用数据库集群系统方案规划

随着学校各业务系统应用的不断扩大和数据的不断累积,以及信息资源共享和信息标准化建设要求不断提升,公共数据库和数据仓库的建设正在逐步推进,因此,早期投资的服务器性能已无法满足进一步发展的需求。此外,由于整个学校的业务运转都已建立在数字校园平台上了,作为该平台核心服务器系统的安全和不间断运行就显得格外重要。为此,学校添置了2台富士通M5000的小型机和2HDS的高、中端存储设备,拟构建一个高可用的数据库集群系统,以提高数据库服务器的高速运算能力和整个计算机系统的安全性、可靠性。同时,也是为了消除“孤岛效应”、全面共享信息资源,更好的满足整个数字校园系统中日益增长的业务应用需求。

 

2.1选用ORACLE公司的RAC集群软件

计算机集群产品主要有两大类,一类是双机软件(HA),另一类是集群软件(Cluster)。这两类软件都是为实现系统的高可用性服务的。但是,双机软件一般只能支持两台服务器以主从或互备等方式工作。由于集群软件除了可支持双机工作外,还可以支持多台服务器工作,并具有同时部署多个应用和在多个服务器间灵活地设置接管策略等功能。

Oracle RAC的全称为Oracle ReaI Application Clusters,通过该软件,用户可以充分利用多个使用集群技术互联的计算机的处理能力,在其并行服务器工作方式下,两台(或多台)服务器上各自运行一个数据库核心进程,但共同管理和操作同一个数据库,用户端无论访问哪台服务器都能在数据库中进行操作。当一台服务器发生故障时,数据库系统本身不会停止运行,因此访问其余服务器的用户端还可继续正常工作。由于无需再启新的数据库服务器进程,因此保证了整个系统的连续不间断服务。此外,在正常运行时各台服务器还可进行负载分担,同时并行服务器方式对应用完全透明,从而可大大降低应用程序开发和系统扩展的复杂程度。因此,我们选择了ORACLE公司的RAC集群软件。

 

2.2数据库部署在分域的小型机上

一般而言,使用较好的PC服务器做集群,由多台服务器同时提供服务,如Oracle数据库的RAC运行模式也是可行的。考虑到学校整个业务系统对计算机系统高可用性的实际需求,以及小型机具有的高RAS特性和M5000可物理分域的功能,我们选用了富士通公司的处理能力更强的M5000小型机,并把每台小型机都划分成2个域,而且在每个域上都部署了oralce,组成了2套RAC环境。在每套RAC环境中只建了一个实例,是为了让各业务系统最大限度共享设备资源,更好的满足学校各项业务系统的负载分担和稳定运行的需求。

2.2.1数据库部署规划

由于各业务系统采用的数据库版本和字符集不同,必须归类部署,同时还需适当考虑负载均衡、管理便利等因素,因此各业务系统的分布如下:

(1)实例1部署的Oracle数据库版本是:10.2.0.4.0-production;字符集为:utf-8;其部署的业务系统有:公共数据库、信息门户、统一身份认证、人事、档案、校友、教务。

(2)实例2部署的Oracle数据库版本是:10.2.0.1.0-production;字符集为:GBK;其部署的业务系统有:办公、科研、学工、后勤、资产、外事、迎新。

2.2.2两台富士通M5000小型机的主要配置

SEM5000(2个硬件分区)、4×SPARC64VII四核2.53GHzCPU、32G内存、4*300G10K2.5"内置硬盘、配2块双通道千兆网卡、4块4Gb光纤通道卡、冗余电源和solaris10操作系统。

 

2.3重要数据文件的存储保障

通常组成双机热备的方案有基于共享存储(磁盘阵列)、单存储和全冗余(双机双存储)等方式。由于存储是双机热备或集群中唯一保存数据的设备,它一旦发生故障就会造成系统的全面崩溃,因此一个高可用的计算机数据库集群系统,还必须包括存储冗余的技术方案

2.3.1两台HDS存储设备的主要配置

(1)主存储HDS USPVM的主要配置包括:64GB数据缓存、l6GB控制缓存、8*8GbFC前端接口,26*600GB15KFC盘,46*2TB7.2KSAS盘,带外部存储虚拟化许可和150TB的克隆快照许可。

(2)备存储HDS AMS 2300的主要配置包括:18GB缓存、8*8GbFC前端接口,26*600GB SAS盘,40*2TB SATA盘。

(3)备份软件主要包括:一些Oracle、Mysql、SQL数据库备份许可,以及一些Solaris、Linux、windows、UNIX操作系统的客户端许可。

2.3.2HDS云存储设备的特点

(1)HDS高端存储USP-VM

HDS USP-VM的内部架构采用第四代全光纤通道无阻塞Crossbar交换架构,其所有的前端接口模块(CHA)、后端接口模块(DKA)和cache之间通过cache switch来进行智能的path路由,即USP-VM的微码会对模块之间的工作path进行监控,到前端或后端模块和cache之间需要传输的数据超过path的带宽时,微码会自动的通过其它的cache switch路由新的path,同时在这些path之间实现负载均衡。换句话说,在这种体系架构下,内部所有的path为全局资源,可以进行全局调用。因此,Crossbar交换架构,很好地解决了传统阵列内部数据传输的瓶颈问题。

HDS USP-VM最大可达40路并发内部缓存传输通道,最大内部缓存数据交换带宽可达到13.3GB,非常适合于大量主机同时对存储系统进行频繁的并发读写操作,存储设备的IOPS可以达到120万,完全可以满足整个学校业务系统对于主存储平台的性能要求。

(2)HDS的中端存储AMS2300

HDS AMS2300也是一款面向大中型企业的存储系统。与一般模块化阵列系统所采用的内部共享总线结构不同,HDS AMS 2300采用全新的类似HDS USP系列中的内存交换结构,其缓存、前端接口和后端磁盘通道接口都是通过Hi-Per结构以交换的方式进行数据传输,并且在两个控制器的Hi-Per结构之间通过8通路的PCI-E链路实现负载平衡的内部数据交换,包括任意前端到任意后端的访问和写I/O的镜像操作等。这样两个控制器可以运行在负载均衡模式下且保证存储响应性能,因此大大提高了系统的I/O能力。在我们的方案中,HDS AMS 2300作为HDS USP-VM主存储设备的备份,一起构成一个高可用的存储系统。

 

2.4HDS云存储设备在高可用数据库集群系统中的作用

2.4.1构建高可用数据库集群系统的主要条件

构建高可用性计算机系统的目的是通过消除业务系统中的单点故障而尽量减少停机(无论是计划内还是计划外的停机)时间,但要真正消除整个系统中可能存在的单点故障,就必须在整个计算机的软、硬件系统,特别是在关键部位创造强大有力的保障条件。

(1)服务器硬件方面

主要应保证CPU、电源、网卡、光纤卡等重要部件冗余;同时,服务器的关键设备还必须支持可热插拔、配置的内存应能自检并纠错、为磁盘阵列另配Hot Spare磁盘等。

(2)服务器软件方面

主要应选择稳定的操作系统且其内核应可进行动态配置,并立即生效。同时,对重要应用程序必须能进行运行监视,并在其意外中止运行时能告警和重启。此外,结合自己所用的数据库选择一个好的数据库集群软件也十分重要。

(3)存储设备的冗余和数据信息的备份

由于双机热备和高可用集群都不是用来保护业务数据的,它所要保障的只是用户业务程序能对外不间断地提供服务。因此,一个真正的高可用数据库集群系统,其中存储设备的高可用性就非常关键

了,必须提供存储设备的冗余和数据信息的安全备份。因为,从用户的角度来说,各系统的业务数据有时候甚至比计算机硬件系统的安全更重要,因为它一旦完全销毁,损失就难以弥补。

2.4.2 HDS云存储设备的高可用性

1关键部件全冗余

由于HDS USP VM所有部件均为冗余设计(包括CPU、磁盘、端口、风扇以及电源(N+1)),因此可完全消除系统的单点故障隐患;同时HDS存储的镜像(Cache Mirror)技术也非常成熟可靠,所有I/O都是镜像写缓存;此外该设备所有部件都可以热拔插更换,完全支持在线不停机的系统维护、微码升级、扩容,因此是一个非常可靠和稳定的存储系统。

2)完善的Cache设计

HDS USP-VM的数据缓存可达到128GB,同时采用多块缓存芯片,并且数据在缓存区为镜像写处理方式,保证了HDS USP-VM相对其他存储设备在缓存一级无单故障点设计。其工作原理是这样的,HDS USP-VM存储系统中的cache被平分为两个段,并位于不同的电源分区中。系统的一个数据写操作会将所有数据同时写入两个cache段中,这样,在不同的电源分区中的数据通常是双备份的。在存储系统回应主机系统写数据成功之前,教据必须被写入两个cache段中并通过了比较。这样可以保证在有电池保护的cache中存在着两个数据拷贝。如果其中的一个拷贝发生了错误或丢失.则另一拷贝数据会立即存入磁盘。这种互为备份的设计可以帮助系统在cache或电源发生故障时保持数据的完整性。一旦系统电源失效,电池系统可保护cache中的数据在至少48小时内不会丢失。

此外,系统中独立的双备份的共享内存可用来存放cache的管理信息及系统的配置信息。访问cache和共享内存的数据通路是彼此独立的,电池系统同样可以保护共亨内存中的数据在至少7天内不会丢失,因此,可以说是一个缓存设计非常安全的存储系统。

3)逻辑分区功能

HDS USP-VM引入了逻辑分区的概念,通过这个技术,用户可以对通用存储平台进行逻辑划分,最大可以32个逻辑虚拟存储系统。每个虚拟存储系统都拥有独立的主机通道端口、CACHE、磁盘等资源。在通用存储平台和与之相连的外部存储设备中,通过逻辑分区功能可以使得应用系统的需求和分配给该应用的资源得到合理的调度和匹配,从而保证应用服务质量。

4)云存储的虚拟化空间管理

HDS USP系列的云存储产品具有其独特的存储虚拟化技术,它可通过存储设备前端智能控制器将用户现有的磁盘阵列全部接管过来(不限品牌),并由HD SUSP云存储平台来统一管理,而且并不影响外部磁盘阵列的内部数据的正常使用,同时由于增加了二级缓存而使性能得到了一定的提升。

HDS USPVM的外部存储虚拟化功能可以管理96PB容量,这既是对用户的投资保护,也使用户在未来的存储扩容问题上可以不局限于任何厂商。

(5)大规模异构存储虚拟层

HDS Universal Volume Manager(通用卷管理)软件,能创建一个可支持247PB容量的虚拟存储系统。它能帮助用户重新分配现有存储资产、对其结构化和非结构化数据环境进行合理和简便的数据迁移,同时能对闲置或未被充分利用的归档及存储设备进行有效整合。该软件能够将HDS控制器引擎中所有先进和强大的存储功能都应用到外部连接的存储设备中,从而大幅提高用户现有资产的性能和延长其使用寿命。此外,它还能让用户将非关键性大型机数据储存于低成本的SATA磁盘系统上。

(6)动态精细化管理与预分配

典型的存储管理实践和传统的主机卷管理都要求用户预先规划并分配足够的存储容量,以确保业务应用有足够的存储空间。但是,固定的物理卷分配,可能会造成存储容量的很大的浪费,也可能会带来由于为现有卷增加性能或容量而导致的人为干预混乱。针对这个问题,HDS采用面向服务的方法为用户提供了一种新型的卷创建工具,这就是Hitachi Dynamic Provisioning(动态预配置)软件。

这款动态配置软件能够使用户根据自身所预期的未来需求合理分配虚拟磁盘存储,而无需预先分配专用的物理磁盘存储。因为,总体来说,如有必要,将来一定可以更低的价格购买增加的磁盘,并且可透明地实施安装而不会造成其关键任务的中断。

(7)数据复制软件ShadowImage

ShadowImage是一种基于存储系统内部运行的数据复制技术,它无需主机资源参与可最大程度的发挥软件的可用性;瞬间分离得到的多个数据备份拷贝,可提供给用户应用到诸如并行处理联机业务、批量作业、应用开发测试、数据分析和数据挖掘、快速恢复等解决方案中,从而节约了主机宝贵资源并使其得以能处理更重要的事务;此外,它还革新了批量作业、磁带备份的策略,配合HDS公司的TrueCopy和Freedom智能存储系统,可为用户提供高度安全、灵活、统一的数据保护和容灾、数据备份的解决方案。

 

2.5双域、双RAC数据库集群方案拓扑图及简介

整个双域、双RAC数据库集群方案拓扑图如下图所示,下面再作些简要说明:

 

 基于云存储的小型机数据库集群系统的研究

 

1双域、双RAC数据库集群方案拓扑图

 

2.5.1网络和服务器部分

(1)学校所有的应用服务器可通过网络平台(有内部防火墙)访问小型机(M5000)上部署的数据库。由于是双RAC集群,所以可访问任一台小机中对应域的数据库,因此能达到负载均衡。

2)从小型机的冗余配置(包括内部部件)以及光交换机、HBA卡和存储设备的冗余,说明服务器系统的配置是高可用的。

2.5.2高可用虚拟化存储部分

1)统一管理和统一分配存储空间

方案主要是拟在新校区规划一个基于SAN架构的高可用性的校园级统一虚拟化存储平台。在HDS USP VM高端主存储上配置存储虚拟化功能,以整合学校现有的异构存储资源。使数据能在不同层次存储设备和介质之间进行在线迁移,从而实现数据的分级存储管理。HDS AMS 2300备存储,由USP VM来统一管理、统一分配其存储空间,因此,用户只需要通过一个管理界面就可以完成存储资源的配置。

2核心业务、普通业务分区管理

方案中通过HDS USP VM的存储分区技术将学校的核心公共业务系统和非核心电子资源业务系统进行了相互隔离,即划分在两个不同的存储区域内。这样处理,既可实现统一管理,又不互相干涉影响,可确保核心业务系统的后台存储资源稳定远行。

(3)核心公共数据和邮件数据采用实时同步镜像保护

通过HDS USPVM云存储平台内部的数据快速克隆技术,将10TB的核心公共数据和20TB的邮件数据实时同步镱像到AMS2300的存储空间上。一旦主存储USPVM出现重大事故不可使用,可以通过直接加载AMS2300上的镜像卷,来快速启动和恢复业务,恢复时间即RTO可以小于15分钟,存储上的数据无丢失,即RPO=0。同时,为了充分考虑所有数据的逻辑错误保护,方案还在主存储设备上按照时间顺序建立了数据快照,以有效防止因出现信息误删,非法篡改、系统错误等非正常操作所导致的数据丢失。

4)非核心电子资源数据采用定时克隆保护

由于图书馆电子资源十分庞大,且大都由数据供应商提供,因此,可将40TB的电子资源数据定时(4小时)克隆到AMS2300的存储空间上,一旦出现生产卷被破坏或数据丢失,可以快速的从本地AMS2300上的克隆备份卷启动和恢复业务,恢复时间即RTO可以小于15分钟,或者直接从克隆备份卷中抽取丢失的数据进行恢复,存储上的数据最大丢失量小于4小时,即RPO<4小时,由于电子资源的更新周期较长,这种备份策略是完全可以接受的。

(5)数据库所有数据的异地容灾备份

虽然核心公共数据是在主、备存储之间实现同步镜像复制的,非核心电子资源数据也采用了定时克隆的保护,为防万一,数据库中所有数据都将通过备份软件,远程(光纤直连)备份至异地机房的离线存储设备中,以实现数据的异地容灾备份。方案的实现主要是将异地校区的一台Windows平台PC服务器作为备份介质服务器,磁盘阵列内置足够的可用磁盘容量。此外,还须在每台需做备份的应用服务器上安装一套备份软件客户端和相应的应用在线备份接口程序,来实现所有的数据在线被份工作。

2.5.3整体方案实施的主要步骤

(1)对小型机M5000进行划域和配置:域1(供实例1);域2(供实例2)。其主要配置都是:16GB内存、2*单通道 4Gbps 光纤卡、4*千兆网口、2*300G 10K 2.5"内置硬盘、2×SPARC64 VII四核 2.53GHz

(2)对系统和网络进行规划:包括对主机命名(主机1:M5000_1,Rac1-db1,Rac2-db1;主机2:M5000_2,Rac1-db2,Rac2-db2)、IP地址规划(主要是对数据地址、心跳地址、浮动地址、网关地址、掩码地址(数据与浮动地址))等进行设置。

(3)对存储系统和数据备份制定规划:主要包括共享存储、主机目录等的规划。

(4)制定数据库迁移规划:根据业务系统的轻重缓急,制定相应的数据库迁移规划。同时,做好应急预案,包括做好数据库备份和备用数据库服务器。

(5)整个方案正式实施前必须进行测试,主要包括:节点故障透明切换测试、实例故障透明切换测试、节点集群服务出现故障测试以及与存储设备相关的数据备份和恢复的测试等等。由于规划、配置、系统测试等工作非常复杂、繁多,篇幅所限就不再一一阐述了。

 

3、结语

本方案的规划从硬件到软件、从服务器到存储设备,既充分考虑了业务系统的负载均衡、高可用性需求,也能兼容原有存储系统,并且具有极强的扩展能力和容灾能力,可以为学校数字化校园所有业务系统的正常运转提供强有力的保障。

 

参考文献

[1]于斌,刘宏伟,崔刚,.高可用双机容错服务器的研究与设计[J].计算机工程与设计,2006,27(9):1524

[2]妙全兴,武海鹰.一种高性价比的网络容灾与高可用集群的设计[J].微机发展2003,13(9)

[3]周晓丹,冯少荣,薛永生.Oracle10gRAC核心技术研究与分析[J].计算机工程2007,33(7)

[4]郭敏,郭靖.基于0raclel0GRAC的校园数据中心备份策略[J].江汉大学学报(自然科学版)2008(1):51

[5]日立数据系统有限公司.HDS AMS 2300存储产品介绍.2008(12).

[6]TechTarget中国.Oraclc数据库迁移指南.http://SearchDatabase.com.cn.