一种高可用集群计算机系统及其故障处理方法

文档序号:7710239阅读:259来源:国知局
专利名称:一种高可用集群计算机系统及其故障处理方法
技术领域
本发明涉及银行数据处理领域,尤其涉及一种高可用集群计算机系统及应用所述系统进行故障处理的方法。
背景技术
在全球经济和金融一体化进程中,面对国内外金融机构的挑战,商业银行正逐步向综合化、全能化的金融服务方向发展。银行业面临的最突出问题之一就是综合业务系统的统一,特别是综合前端系统平台的管理与维护。业界通常采用平均无故障时间(MTTF)和平均维修时间(MTTR)来评估上述综合前端系统可用性,具体为MTTF/ (MTTF+MTTR) *100%, 高可用性是银行服务追求的目标之一。高可用可采用主从工作方式、双机双工工作方式和集群工作方式来实现。目前计算机业界实现高可用集群的方法主要有资源共享模式、资源转移模式和资源非共享模式,但是仅资源转移模式和资源非共享模式的集群部署方案适合综合前端应用。由于资源转移集群部署方案中的节点冗余只能做到服务器一级,粒度太粗,而非共享集群部署方案虽然可以做到粒度较细,但是该方案对数据一致性要求较高,而数据一致性通常依赖共享数据库和共享存储实现,同时由于服务请求转发器与系统的耦合度非常高,一旦发生问题,就会影响业务的连续性,从而使得基于资源非共享模式的集群部署方案的冗余度取决于共享数据库、共享存储和服务请求转发器的冗余度。一般而言,这些节点基本采用双机冗余,如果要提高整体冗余度,就必须为共享数据库、共享存储和服务请求转发器分别设计集群方案,不但增加技术复杂度,而且明显影响应用系统的总体性能。

发明内容
本发明提供了一种高可用集群计算机系统以及应用所述集群计算机系统进行故障处理的方法,本发明的集群计算机系统的冗余程度取决于备机数量,而不是取决于数据库、共享设备以及转发服务器等节点的冗余度,而且该集群系统中故障监控及切换处理模块和应用系统为松耦合,因而无需考虑冗余度对性能的影响,部署方便,成本较低。根据本发明的第一方面,提供了一种高可用集群计算机系统,所述系统包括管理节点和服务节点,其中服务节点包括综合前端应用服务器,管理节点包括服务器端和代理端,其中,所述服务器端,用于根据安装在所述应用服务器的代理端收集的状态信息进行故障监控,并根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。根据本发明的第二方面,提供了一种应用所述高可用集群计算机系统进行故障处理的方法,所述方法包括以下步骤所述服务器根据安装在所述应用服务器的代理端收集的状态信息进行故障监控;
根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。本发明的高可用集群计算机系统以及应用所述高可用集群计算机系统进行故障处理的方法,通过管理节点的服务器端进行故障监控处理和控制主备服务节点的切换,利用安装于应用服务器的代理端采集服务节点的状态信息并执行所述服务器端发出的指令, 应用资源与数据资源独立部署在各服务节点,使得集群系统的冗余度取决于备机的数量, 而且故障监控及切换处理相关模块与应用系统松耦合,所述处理模块出现问题后也并不影响系统业务处理的性能。


图1为根据本发明实施例的高可用集群计算机系统的结构框架。图2为根据本发明实施例的高可用集群计算机系统的服务器端的第一结构。图3为根据本发明实施例的高可用集群计算机系统的服务器端的第二结构。图4为根据本发明实施例的应用高可用计算机系统进行故障处理的方法流程示意图。
具体实施例方式为使本发明的实施例的目的、技术方案和优点更加清楚,下面进一步结合附图对本发明进行详细描述。参见图1,图示了根据本发明实施例的高可用集群计算机系统的结构框架,所述高可用集群计算机系统包括管理节点和服务节点,其中服务节点包括综合前端应用服务器, 管理节点包括服务器端和代理端,其中,所述服务器端,用于根据安装在所述应用服务器的代理端收集的状态信息进行故障监控,并根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。本发明的实施例中,服务节点具体可分为主服务节点和备用服务节点,即主服务器和备用服务器,简称主机和备机。在此需要说明的是,在本发明的说明书中主服务节点、 主服务器及主机表示同一事物,可交互使用,同样适用于备用服务节点、备用服务器和备机。服务节点可包括综合前端应用服务器硬件及软件,包含综合前端软件应用和数据。本发明高可用集群计算机系统部署中应用资源和数据资源均不共享,具体地,即数据与应用均独立地部署在各服务器上。各个服务节点均可承担一部分业务,并且备用服务节点中的每个节点都可以备份全部业务,系统的冗余度完全取决于备机数量,即有几个备机节点,就有几套系统冗余。参见图2,图示了根据本发明实施例的高可用集群计算机系统的服务器端的第一结构,所述管理节点的服务器端1包括故障监控模块10,用于根据所述代理端上进行的心跳检测和健康检查采集的状态信息进行故障监控,其中心跳检测用于检查所述应用服务器的基础环境是否处于正常状态,健康检查用于检查所述应用服务器应用是否处于正常状态。在本发明的实施例中,管理节点的服务器端1根据安装在各个服务节点的代理端采集的服务节点的状态信息进行故障监控,故障监控的依据为代理端上进行的心跳检测和健康检查所采集的服务节点的状态信息,即服务节点是否处于正常工作的状态。心跳检测用于检查应用服务器的基础环境是否处于正常状态,其中应用服务器的基础环境包括服务器的硬件和操作系统。具体地,故障监控模10块包括检测线程创建单元101,用于创建心跳检测线程,并为所述代理端分配心跳检测线程;检测线程处理单元102,用于利用所述心跳检测线程定时检测所述应用服务器的基础环境的状态。本发明的实施例中,心跳检测具体的检测流程如下通过检测线程创建单元101 创建心跳检测线程,并为每个代理端分配一个心跳检测线程进行心跳检测;通过检测线程处理单元102进行如下控制操作控制线程每间隔一定时间使用snmpset命令检测代理端的snmp服务和端口 161,例如每间隔5秒钟使用snmpset命令检测代理端的snmp服务和端口,当命令返回true时,表示心跳检测正常,当命令返回false时,再使用“ping”命令对代理端网络进行一次检查,如果ping正常,则表示snmp代理服务异常,且连续出现异常的次数大于预先设定的心跳检测阈值,则表示心跳检测线程异常,需要检测心跳检测线程是否正常执行;如果Ping异常,则判定应用服务器异常,且连续出现异常的次数大于预先设定的阈值,则确定心跳检测异常,表明服务节点的状态信息为应用服务器异常,显示报警信息 “心跳检测异常,请切换”提示管理节点控制主服务节点和备用服务节点进行切换。上述预先设定的心跳检测阈值可以为3次,如果连续出现3次异常,则判定心跳检测线程异常。在此需要说明的是,本领域技术人员可根据具体的应用条件预先设定心跳检测阈值。进一步地,根据本发明实施例的故障监控模块10包括请求发起单元103,用于在所述应用服务器上发起模拟HTTP请求的线程;请求处理单元104,用于利用所述模拟HTTP请求的线程定时检测所述应用服务器应用的状态。在本发明的实施例中,故障监控模块10采用健康检查来检查综合前端应用是否正常,具体的过程为通过请求发起单元103每间隔一定时间在应用服务器上发起一个模拟超文本传输协议(Hyper Text Transport Protocol,HTTP)请求的线程,例如可以每间隔 40秒;请求处理单元104进行如下控制操作根据能否返回预期结果来检测综合前端应用是否正常,如果返回0K,则表示综合前端应用正常,如果返回除OK之外的其他值连续出现的次数超出预定的阈值或者回应的时间超出预定的期限,则判定健康检查异常,表示服务节点的状态信息为综合前端应用异常,显示报警信息“健康检查异常,请切换”提示管理节点控制主服务节点和备用服务节点进行切换。值得指出的是,本领域的技术人员可根据具体的应用条件确定返回其他值判断为异常的连续出现次数的阈值。根据本发明实施例的故障监控主要采用心跳检测和健康检查获取的服务节点的状态信息来确定是否进行主服务节点和备用服务节点的切换。根据本发明实施例的主服务节点需要配置3个IP地址,分别为固定IP (boot IP)地址、浮动IP (service IP)地址和底层控制台IP (ilo IP)地址,备用服务节点需要配置2个IP地址,分别为固定IP和底层控制台IP。采用此种IP配置进行漂浮IP地址的主备切换模式有利于提高主备切换的可靠性, 这是由于为解决服务器发生故障而有可能导致操作系统挂起无法执行命令的问题,需要调用服务器远程管理控制的底层控制台,即综合前端使用的HP服务器的ilo管理命令来确保关闭服务器的可靠性。参见图3,图示了根据本发明实施例的高可用集群计算机系统的服务器端的第二结构,所述管理节点的服务器端除了包含图2所示的功能模块之外,还包括控制主服务节点和备用服务节点进行切换的主备切换模块20和回切模块30,具体地,主备切换模块20,当所述主服务节点故障时,用于实现如下功能通过底层控制台IP关闭所述故障服务节点,通过备用服务节点的固定IP登录到备用服务节点,启动所述故障服务节点的浮动IP完成主备切换,并记录该备用服务节点所接管的故障服务节点的固定IP ;回切模块30,当所述故障服务节点恢复时,用于实现如下功能根据所述故障服务节点的固定IP查找所述主备切换对应的备用服务节点,在所述备用服务节点上关闭所述浮动IP,并在恢复的所述故障服务节点重启所述浮动IP以重新开始运作。在本发明的实施例中,当所述服务节点故障,即心跳检测或健康检查异常时,管理节点根据监控得到的报警信息控制主服务节点和备用服务节点的切换。切换除了可以采用上述的主备切换模块和回切模块进行自动处理之外,还可以在心跳检测异常或健康检查异常报警信息显示之后,采用人工干预的方式进行切换处理。根据本发明实施例的管理节点还可以包括客户端,该客户端可安装在个人电脑 (personal computer, PC)机器上,用于显示所述服务器端和代理端的处理结果,并提供管理人员进行操作的操作界面。例如,在心跳检测进行的过程中,可通过管理节点的客户端显示心跳检测中服务节点的状态信息是处于正常状态还是处于故障/异常状态;在主备切换的过程中,客户端可通过显示报警信息提示管理人员进行相应的人工切换操作。以上结合具体实施例阐述了根据本发明的高可用集群计算机系统的结构,下面将结合具体实施例描述应用具有上述功能模块的高可用集群计算机系统进行故障处理的方法。参见图4,图示了根据本发明实施例的应用高可用计算机系统进行故障处理的方法流程示意图,所述方法包括S101,所述服务器端根据安装在所述应用服务器的代理端收集的状态信息进行故障监控;S102,根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。在本发明的实施例中,步骤SlOl中管理节点的服务器端根据安装在综合前端应用服务器的代理端收集的状态信息进行故障监控,故障监控的方法包括根据所述代理端上进行的心跳检测和健康检查采集的状态信息进行故障监控,其中心跳检测用于检查应用服务器的基础环境是否处于正常状态,健康检查用于检查应用服务器的应用是否处于正常状态。在本发明的实施例中,管理节点的服务器端根据部署在应用服务器上的代理端所进行的心跳检测和健康检查来监控服务节点的状态信息,其中心跳检测用于检查应用服务器的基础环境是否正常,其中应用服务器的基础环境具体包括应用服务器的硬件和操作系统,而健康检查用于检查应用服务器应用是否正常。心跳检测具体的检测流程如下创建心跳检测线程,并为每个代理端分配一个心跳检测线程进行心跳检测;心跳检测线程间隔一定时间(例如5秒钟)使用snmpset命令检测代理端的snmp服务和端口 161,当命令返回 true时,表示心跳检测正常,当命令返回false时,再使用“ping”命令对代理端网络进行一次检查,如果Ping正常,则表示snmp代理服务异常,且连续3次出现异常,则表示心跳检测线程异常,需要检测心跳检测线程是否正常执行;如果Ping异常,则判定应用服务器异常,且连续出现异常次数大于预先设定的阈值,则确定心跳检测异常,表明服务节点的状态信息为应用服务器异常,显示报警信息“心跳检测异常,请切换”提示管理节点控制主服务节点和备用服务节点进行切换。健康检查的具体流程为每间隔一定时间(例如40秒) 在应用服务器上发起一个模拟HTTP请求的线程,根据能否返回预期结果来检测综合前端应用是否正常,如果返回0K,则表示综合前端应用正常,如果连续返回除OK之外的其他值的次数大于预先设定的阈值或者回应的时间超出预定的期限,则判定健康检查异常,表示服务节点的状态信息为综合前端应用异常,显示报警信息“健康检查异常,请切换”提示管理节点控制主服务节点和备用服务节点进行切换。需要说明的是,本领域的技术人员可根据应用需要设定连续返回其他值的次数判定为异常的阈值以及回应的预定的期限。根据本发明实施例的主服务节点配置有3个IP地址,分别为固定IP地址、浮动 IP地址和底层控制台IP地址,备用服务节点配置有2个IP地址,分别为固定IP和底层控制台IP。采用此种IP配置进行漂浮IP地址的主备切换模式提高了主备服务节点切换的可靠性,这是因为为了解决服务器发生故障而有可能导致操作系统挂起无法执行命令的问题,需要调用服务器远程管理控制的底层控制台,即综合前端使用的HP服务器的ilo管理命令来确保关闭服务器的可靠性。在本发明的实施例中,当心跳检测或健康检查异常报警时,管理节点将控制主服务节点和备用服务节点进行主备切换,其中主服务节点(即故障服务节点)到备用服务节点切换的具体步骤包括通过底层控制台IP关闭所述故障服务节点,通过备用服务节点的固定IP登录到备用服务节点,启动所述故障服务节点的浮动IP完成主备切换,并记录该备用服务节点所接管的故障服务节点的固定IP。本发明的实施过程中,当主服务节点心跳检测或健康检查异常时,管理节点的服务器端控制备用服务节点接管故障的主服务节点以使本发明的集群计算机系统能够为客户提供连续的服务。当所述故障服务节点恢复时,管理节点的服务器端将控制备用服务节点到恢复的主服务节点的切换的具体处理流程如下根据所述故障服务节点的固定IP查找进行主备切换对应的备用服务节点,在所述备用服务节点上关闭所述浮动IP,并在恢复的所述故障服务节点重启所述浮动IP以重新开始运作。本发明的实施过程中,当故障服务节点恢复时,管理节点服务器端根据所述故障服务节点的固定IP地址查找其对应的浮动IP地址,然后进一步根据查找到的浮动IP地址查找在主服务节点切换到备用服务节点过程中接管的备用服务节点,然后在所述备用服务节点上关闭所述浮动IP,并在恢复的故障服务节点上重启所述浮动IP以重新开始运作。进一步地,根据本发明实施例的应用高可用集群计算机系统进行故障处理的方法还包括通过所述管理节点的客户端将所述服务器端和代理端的处理结果显示给管理人员,并为管理人员提供进行操作的操作界面。在此需要说明的是,所述管理节点还包括安装于PC机的客户端,该客户端可显示服务器端和代理端监控和检测的处理结果,并为管理人员提供进行操作的操作界面,以满足管理人员对监控维护处理操作适当进行人工处理的需要。综上所述,本发明提供的高可用集群计算机系统和应用所述高可用集群计算机系统进行故障处理的方法,本发明的高可用集群计算机系统的冗余程度取决于备机数量,而且应用系统与故障监控模块及切换处理相关模块为松耦合,因而无需考虑冗余度对系统性能的影响,而且部署中仅需配置服务节点的IP地址即可,部署方便,成本较低。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。以上所公开的仅为本发明的一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
权利要求
1.一种高可用集群计算机系统,其特征在于,所述系统包括管理节点和服务节点,其中服务节点包括综合前端应用服务器,管理节点包括服务器端和代理端,其中,所述服务器端,用于根据安装在所述应用服务器的代理端收集的状态信息进行故障监控,并根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。
2.如权利要求1所述的系统,其特征在于,所述服务器端包括故障监控模块,用于根据所述代理端上进行的心跳检测和健康检查采集的状态信息进行故障监控,其中心跳检测用于检查所述应用服务器的基础环境是否处于正常状态,健康检查用于检查所述应用服务器应用是否处于正常状态。
3.如权利要求2所述的系统,其特征在于,所述故障监控模块包括检测线程创建单元,用于创建心跳检测线程,并为所述代理端分配心跳检测线程;检测线程处理单元,用于利用所述心跳检测线程定时检测所述应用服务器的基础环境的状态。
4.如权利要求2所述的系统,其特征在于,所述故障监控模块包括请求发起单元,用于在所述应用服务器上发起模拟HTTP请求的线程;请求处理单元,用于利用所述模拟HTTP请求的线程定时检测所述应用服务器应用的状态。
5.如权利要求2至4任意一项所述的系统,其特征在于,所述服务节点的状态信息包括心跳检测异常和健康检查异常。
6.如权利要求1所述的系统,其特征在于,所述主服务节点配置有固定IP、浮动IP和底层控制台IP,所述备用服务节点配置有固定IP和底层控制台IP。
7.如权利要求6所述的系统,其特征在于,所述服务器端包括主备切换模块,当所述主服务节点故障时,用于实现如下功能通过底层控制台IP关闭所述故障服务节点,通过备用服务节点的固定IP登录到备用服务节点,启动所述故障服务节点的浮动IP完成主备切换,并记录该备用服务节点所接管的故障服务节点的固定IP;回切模块,当所述故障服务节点恢复时,用于实现如下功能根据所述故障服务节点的固定IP查找所述主备切换对应的备用服务节点,在所述备用服务节点上关闭所述浮动IP,并在恢复的所述故障服务节点重启所述浮动IP以重新开始运作。
8.如权利要求7所述的系统,其特征在于,所述管理节点还包括客户端,用于显示所述服务器端和代理端的处理结果,并提供管理人员进行操作的操作界面。
9.一种应用高可用集群计算机系统进行故障处理的方法,其特征在于,所述高可用集群计算机系统包括管理节点和服务节点,其中服务节点包括综合前端应用服务器,管理节点包括服务器端和代理端,所述方法包括以下步骤所述服务器端根据安装在所述应用服务器的代理端收集的状态信息进行故障监控;根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。
10.如权利要求9所述的方法,其特征在于,所述故障监控包括根据所述代理端上进行的心跳检测和健康检查采集的状态信息进行故障监控,其中心跳检测用于检查所述应用服务器的基础环境是否处于正常状态,健康检查用于检查所述应用服务器的应用是否处于正常状态。
11.如权利要求10所述的方法,其特征在于,所述心跳检测的步骤包括创建心跳检测线程,并为所述代理端分配心跳检测线程;利用所述心跳检测线程定时检测所述应用服务器的基础环境的状态。
12.如权利要求10所述的方法,其特征在于,所述健康检查的步骤包括在所述应用服务器上发起模拟HTTP请求的线程;利用所述模拟HTTP请求的线程定时检测所述应用服务器应用的状态。
13.如权利要求10至12任意一项所述的方法,其特征在于,所述服务节点的状态信息包括心跳检测异常和健康检查异常。
14.如权利要求13所述的方法,其特征在于,所述主服务节点配置有固定IP、浮动IP 和底层控制台IP,所述备用服务节点配置有固定IP和底层控制台IP。
15.如权利要求14所述的方法,其特征在于,所述主服务节点和备用服务节点进行切换的步骤包括通过底层控制台IP关闭所述故障服务节点,通过备用服务节点的固定IP登录到备用服务节点,启动所述故障服务节点的浮动IP完成主备切换,并记录该备用服务节点所接管的故障服务节点的固定IP。
16.如权利要求15所述的方法,其特征在于,所述主服务节点和备用服务节点进行切换的步骤还包括根据所述故障服务节点的固定IP查找进行主备切换对应的备用服务节点,在所述备用服务节点上关闭所述浮动IP,并在恢复的所述故障服务节点重启所述浮动IP以重新开始运作。
17.如权利要求16所述的方法,其特征在于,所述方法还包括通过所述管理节点的客户端将所述服务器端和代理端的处理结果显示给管理人员,并为管理人员提供进行操作的操作界面。
全文摘要
本发明公开了一种高可用集群计算机系统,所述系统包括管理节点和服务节点,其中管理节点包括服务器端和代理端,服务节点包括综合前端应用服务器,所述服务器端根据安装在所述应用服务器的代理端收集的状态信息进行故障监控,并根据监控得到的服务节点的状态信息控制主服务节点和备用服务节点进行切换。相应地,本发明还提供了应用所述高可用集群计算机系统进行故障处理的方法。本发明的集群系统的冗余度仅取决于备用服务节点的数目,而且应用系统与故障监控及切换处理相关模块为松耦合,对系统的性能影响较小,并且系统部署方便,成本较低。
文档编号H04L29/08GK102231681SQ201110180749
公开日2011年11月2日 申请日期2011年6月27日 优先权日2011年6月27日
发明者卜天奇, 周子坚, 杜永健, 杨志勇, 胡宏 申请人:中国建设银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1