当前位置:文档之家› RoseHA(Multi-node)技术白皮书

RoseHA(Multi-node)技术白皮书

RoseHA(Multi-node)技术白皮书Ver. 9.0

图表目录

图1-1 RoseHA(Multi-node)集群环境示意图 …………………………… 图1-2 MSSQL 数据库资源组结构图 …………………………………… 图2-1 RoseHA(Multi-node)集群硬件拓扑图 ………………………… 图2-2 RoseHA(Multi-node)软件内部结构图 ………………………… 图2-3 RoseHA(Multi-node)集群信息通信示意图 …………………… 图2-4 MSSQL 数据库资源组资源关系依赖图 ……………………… 图2-5 MSSQL 数据库资源组正常运行中 ……………………………… 图2-6 MSSQL 数据库资源组故障中 …………………………………… 图2-7 MSSQL 数据库资源组故障切换后 ……………………………… 图3-1 RoseHA(Multi-node)内部组件监控示意图 …………………… 图3-2 MSSQL 数据库资源组资源带出示意图 ………………………… 图3-3 MSSQL 数据库资源组资源带入示意图 ………………………… 图4-1 主备配置模式 ………………………………………………………… 图4-2 主主配置模式 ………………………………………………………… 图4-3 N-to-1第一种配置模式(1) ………………………………………… 图4-4 N-to-1第一种配置模式(2) ………………………………………… 图4-5 N-to-1第二种配置模式(1) ………………………………………… 图4-6 N-to-1第二种配置模式(2) ………………………………………… 图4-7 1-to-N 配置模式(1) ………………………………………………… 图4-8 1-to-N 配置模式(2) ………………………………………………… 图4-9 级联配置模式 ………………………………………………………… 图4-10 远程容灾模式 ………………………………………………………

7101213131718181819212223242425252626272728

前言

一个全新、便捷、开放、共享的网络信息时代,使我们越来越习惯并依赖它所创造的便利生活,这造成了企业信息系统数量日趋增多、重要程度日益提升、管理难度及强度不断增加、资金投入持续攀升的局面。

据Gartner统计,80%的业务流程完全依赖于信息系统。假如这些正在提供服务的信息系统,因网卡故障、磁盘故障、CPU故障、应用程序故障、操作系统故障、人为误操作、系统繁忙、系统崩溃等意外事件,造成服务运营中断,巨大的经济利益损失尚可弥补,现有及潜在的客户流失将使企业面临难以承受的生存压力。2005年8月,中国农业银行全国数据集中分行核心业务系统发生交易停顿,导致北京、天津、河北、吉林等十行一部交易停顿,影响了数百万用户。2008年5月12日,汶川发生8.0级特大地震,造成了超过8万的人员伤亡以及高达8451.4亿的人民币损失。当地震突袭,中国平安员工全部撤离,并立即启动远程业务紧急站点,第一时间恢复了平台作业,赔付了汶川地震第一单。前车之鉴,言犹在耳。

从不断强化服务器性能和稳定性开始,再到双节点高可用软件的平滑升级,为了保障信息系统的持续运营,IT技术人经过多方尝试和验证发现,随着信息系统复杂性及重要程度的不断提升,多节点集群软件能更好的满足大型企业多个核心业务系统的连续运营和统一管理需求,以及后续方案的整体拓展。Rose公司秉承多年高可用软件的开发经验及细致的市场分析和精心的用户环境验证,向Rose新老客户隆重推出RoseHA(Multi-node)多节点集群软件。该软件延续了RoseHA成熟、稳健的系统监控技术,并平滑升级到多个群集节点,大大加强了常见应用服务(数据库、邮件服务、Web服务等)连续运营的能力,同时密切配合Rose数据容灾产品(RoseDR,RoseReplicator(Enter-prise)),能更好的帮助企业实现核心业务系统严格的RTO与RPO运营标准。

第1章 RoseHA(Multi-node)概述

1.1 什么是RoseHA(Multi-node)

RoseHA(Multi-node)集群软件采用Rose 自行研发的集群技术,将企业多台提供网络资源的计算机,有效的组合成一个保证业务连续运营的高可用集群系统。

R

o s e H A (M u l t i -n o d e )集群网络

1.2RoseHA(Multi-node)常见名词解释

被RoseHA(Multi-node)按照一定逻辑关系组合在一起,实现核心业务系统7×24小时连续运营的计算机系统称为RoseHA(Multi-node)集群节点。

这些节点之间通过冗余的IP网络链路相互传递各自的运行信息。为了实现应用数据的一致性,这些节点都连接着同一个共享数据区域,但仅有业务系统处于运营状态的节点,才对该区域的数据拥有读写访问权限,数据共享区域可以是基于FC,SCSI,SAS,ISCSI结构的存储网络。

1.2.1 物理名词

1节点

集群节点对运行在其上的应用程序实施统一的管理,包括启动、停止、监控等。任何一台服务器均可作为RoseHA(Multi-node)的集群节点,只要它的操作系统平台与集群中其他节点的操作平台保持一致。这是因为在不同的操作系统平台上,很多应用程序具有不同的特性造成,而不是RoseHA(Multi-node)的要求。

节点又分为活动主机与备援主机:

活动主机

为前端客户端提供业务访问的计算机系统,它对整个应用程序、共享数据区域、客户端访问等资源拥有绝对控制权。

活动主机将业务系统的运行状态,通过RoseHA(Multi-node)传递给备援主机,达到服务器间信息通信的目的。在RoseHA(Multi-node)集群环境中,管理员可以为活动主机设置一台或多台备援主机。

备援主机

作为活动主机应用服务的备援系统,它通过与活动主机间周期性的心跳信息互通,了解应用服务当前的运行状况。当活动主机因计划内或计划外宕机时,接管活动主机运行的应用服务,确保业务系统持续运行。

2共享数据区域

共享数据区域是RoseHA(Multi-node)核心资源之一。应用程序的启动和运行,都需依赖存储于该区域上的数据文件,因此,顺利访问共享数据区域是集群节点实现应用切换的首要因素。

目前,很多企业均部署了SAN存储架构,该存储架构很好的解决了集群环境中共享数据区域的拓展问题,在第四章我们会详细讲到。

3网络

私网

私网也称为心跳链路,它作为集群节点间信息互通的纽带。属于同一网段的IP地址,才可以设置为私网。

公网

提供客户端访问应用服务的网络链接地址,也称为虚拟IP地址。它可以根据应用环境需求,灵活设置。

也可作为RoseHA(Multi-node)集群服务判断是否发生了网络分区症状的重要依据。

1.2.2逻辑名词

1切换

SwitchOver

SwitchOver是应用服务资源,按照预先设定的资源依存关系顺序带出,并在备援主机上顺序启动业务资源的一种业务系统切换方法。常用于系统测试、系统升级、应用程序补丁等需要主服务器脱机操作的日常维护的情况。

FailOver

FailOver主要应用于应用服务故障,执行应用服务系统转移,保证应用服务连续工作,所使用的一种业务系统故障切换方法。

2 资源组

RoseHA(Multi-node)以资源组作为集群配置和管理的基本单元。 它是由一系列为受保护应用程序,提供相应硬件支撑和软件服务等资源的统称,包括卷资源、IP 资源、应用程序资源等。 以下是一个MSSQL 数据库资源组的资源示例图。

卷资源(Volume)

卷资源(Volume)是RoseHA(Multi-node)资源组的基础资源,也是共享数据区域的逻辑称谓,它存储着MSSQL 数据库等应用服务的启动文件和应用数据。因此,只有当卷资源顺利挂载之后,集群才可以进行下一步工作。

卷资源由卷标、卷挂载路径、以及磁盘组(DiskGroup)构成。在卷资源的创建中,必须首先选好MSSQL 数据存储的磁盘组(DiskGroup),因为磁盘组(DiskGroup)是数据文件的物理存储位置,然后才能对卷标及挂载路径进行设置。

磁盘组(DiskGroup)可以由一个或多个单独的硬盘或多个不同的LUN 分区构成。针对每个磁盘组(DiskGroup),RoseHA(Multi-node)都会分配唯一的一个磁盘ID 号,作为RoseHA(Multi-node)识别卷资源的唯一标识。 IP 资源(IPResource)

IP 资源(IPResource)由IP 地址和IP 地址依赖的网卡组成。网卡组作为创建IP 资源的载体需要首先创建。

图1-2 MSSQL 数据库资源组结构图

MSSQL 资源组

NTService

Volume IPResource DiskGroup

NIC

RoseHA(Multi-node)资源

系统硬件资源

虚拟IP作为客户端访问应用服务的入口地址。

管理员可以根据具体需求,灵活创建网卡组。创建网卡组时,需要注意以下几个方面:

网卡组中的网卡上的IP可以在不同的网段,即组成网卡组的网卡可以自由组合;

集群节点心跳IP的建立需要同一个IP段的IP地址;

在网卡组中的主机允许选择超过一片的网卡,以配合做IP资源的Loc-alFailover(多片网卡需要用户指定一个优先顺序);

基于网卡组的IP资源的替换IP功能会作用于该资源,不单独提供或者智能的替换某些主机的网卡上的IP地址。

应用程序资源

需要RoseHA(Multi-node)提供业务连续性保障的应用程序都称为应用程序资源。应用程序资源是RoseHA(Multi-node)集群环境中配置最复杂也是最灵活的资源组合,它包括Oracle,MSSQL,MySQL等常见数据库,Exchange等常见邮件服务,Web服务以及用户自定义第三方应用程序。

RoseHA(Multi-node)可以配置一级、二级甚至多级应用程序资源,譬如FTP文件共享服务、Web服务、ERP系统等,实现企业整个业务系统7×24小时运转。

2.1

2.1.1

等协议的常见存储网络。

客户端

2集群监控服务(Monitor Daemon(Service))

集群软件自身的稳定性是确保整个集群正常工作的关键。RoseHA(Multi-n ode)集群监控服务就是以保证集群服务稳定运行为目的,而开发的一个特殊服务模块,它周期性检测集群服务运行的健康状态。倘若检测到集群服务异常,或人为误操作造成集群服务失败或故障时,集群监控服务会立即重启集群服务,保障RoseHA(Multi-node)集群软件自身运行的稳定和安全。

3脚本

脚本是RoseHA(Multi-node)对受保护应用程序执行启动和停止的软件模块,由一些C++或Shell脚本编写而成。在设置的时间范围内启动或停止应用服务,如果无法顺利启动或停止,RoseHA(Multi-node)集群服务将按照管理员配置的启停次数(默认为0次),再次执行,直到成功启动或停止,或者达到管理配置的启停次数。

为更好的满足某些客户的特殊需求,RoseHA(Multi-node)提供了用户自定义脚本的基础代码模板。当然,Rose也可以为客户进行第二次脚本程序的编写,更好的为顾客服务。

4GUI

基于JAVA设计的图形管理界面,可以对整个集群实施高效的配置、有效的监控和统一的管理。RoseHA(Multi-node)GUI支持远程集中管理,大大减低了总体拥有成本(TCO)。

5CLI

RoseHA(Multi-node)也为习惯利用命令行管理的管理员配置了CLI管理工具,CLI对整个集群实施的管理与GUI完全一致。

同时,CLI还提供第三方开发接口,用户可灵活、方便地对第三方特有的

应用程序编写接口程序,实现资源的合理利用。

6Agent程序

Agent程序是应用程序与集群服务之间进行信息交流的纽带,它由多个进程组成,提供对应用程序资源的状态监控和故障管理。

当RoseHA(Multi-node)启动后,集群服务就会调用应用程序相应的Agent 程序。成功调用后,它将周期性向集群服务报告应用程序的运行状态信息,以便集群服务针对不同的信息做出正确的判断,并执行相应的操作。

RoseHA(Multi-node)提供两类Agent程序:

常规应用Agent程序

主要包括IP,NT Service,Volume等常规高可用资源的Agent程序, Ro-seHA(Multi-node)内部集成,对用户完全透明,用户无需任何设置,即可使用。

第三方Agent程序

第三方Agent程序主要针对用户的应用环境而开发,灵活性强,经过十多年的用户研究,Rose强大的二次开发能力,几乎能完全覆盖用户所有的应用环境需求。这类Agent程序分为第三方应用Agent程序和第三方API程序开发两类:

第三方应用Agent程序开发

当用户环境复杂,RoseHA(Multi-node)针对数据库、邮件服务、文件服务、web服务等常规Agent程序,无法满足用户业务需求时,用户可定制开发相应的Agent监控程序,实现对特殊应用程序运行状态的监控。

第三方API程序开发

API开发接口可配合用户已有的第三方软件(譬如RoseDR集群远程容灾软件),实现既有资源的最大化利用或方案的整体扩展,大大降低了企业总体拥有成本(TCO)。

7日志系统

RoseHA(Multi-node)拥有独立的日志系统模块,该模块独立的信息查询界面,实时报告集群环境的工作状态,包括集群节点的增减、应用服务状态、服务器硬件状态、网络状态等。

RoseHA(Multi-node)的工作原理

以两个节点组成的MSSQL数据库高可用系统为例,MSSQL资源组包括网卡、磁盘组(DiskGroup)等硬件设备和IP资源、卷资源、NT资源等逻辑资源。资源组资源依赖关系如图所示

启动MSSQL 数据库资源组后,MSSQL 数据库资源组所依赖资源的所有Agent 程序会自动调用并开始运行,在这个配置结构图中,集群服务会调用DiskGroup ,NIC ,NT service ,Volume 以及IP 等Agent 程序。 资源之间的依赖关系如下:

Volume 资源的启动完全依赖于DiskGroup 是否已经上线。IP 资源的挂载依赖于NIC 资源,NIC 资源是系统资源,所以无需RoseHA(Multi-node)启动。 当IP 资源与Volume 资源均正常运行后,客户端就可通过RoseHA(Multi-no de)提供的访问资源对MSSQL 数据库资源组进行业务访问了。

RoseHA(Multi-node)集群环境中的任何一个节点都可以作为MSSQL 数据库服务的活动主机。当活动主机故障后,RoseHA(Multi-node)会根据管理员预先配置的切换策略(自动或手动),将MSSQL 数据库资源组FailOver 到备援节点运行。

MSSQL

MSSQL

图2-6 MSSQL 数据库资源组故障中

MSSQL

MSSQL

图2-5 MSSQL 数据库资源组正常运行中

MSSQL

MSSQL

第3章 RoseHA(Multi-node)关键技术

时,也会将其发送给集群环境的其他节点,让整个集群服务的状态完全一致。 应用程序故障原因有很多,譬如应用程序自身发生故障或出现异常,抑或其所依赖的硬软件资源故障,比如NIC、存储设备等。

当Agent程序无法在规定的时间范围内,检测到应用服务的运行状态,如果是应用程序故障,Agent程序会尝试重启应用服务,直到成功启动或达到管理员配置启动次数(默认为0次)。如果是相关资源故障,譬如网卡资源,RoseHA(Multi-node)集群服务会卸载原主网卡的IP地址,然后加载在本地另一张可用的网卡上,实现网卡资源的本地切换。

假如这些方法都不能成功启动该应用服务,本地节点的集群服务就会宣布应用程序故障,优先级权限最高的备援系统在收到这个信息后,开始准备应用服务接管工作。

一旦活动节点Agent程序监控到应用程序故障,它首先会按照预先设定好的配置,譬如重连或重启相关资源,对应用程序采取相应的资源恢复处理,倘若经过努力,终究无法成功启动,Agent程序就会向集群服务报告该应用程序故障。

3.2切换技术

切换技术是RoseHA(Multi-node)保障业务连续运营的核心技术,是集群服务收到Agent程序的故障通知后,对故障应用服务所采取的一种业务系统故障转移机制。

当Agent程序向集群服务报告应用程序故障后,本地集群服务就会向整个集群宣布某应用程序故障,于是应用服务切换(应用服务接管)工作就开始了。下面以MSSQL数据库为例展示RoseHA(Multi-node)应用服务整个切换流程:第一步:故障节点带出MSSQL数据库资源组

当集群服务向集群其他节点宣布MSSQL数据库失败后RoseHA(Multi-nod e)会立即将MSSQL数据库相关资源依次带出,保证故障资源彻底下线。

相关主题
文本预览
相关文档 最新文档