CN106982259A - 服务器集群的故障解决方法 - Google Patents

服务器集群的故障解决方法 Download PDF

Info

Publication number
CN106982259A
CN106982259A CN201710257871.5A CN201710257871A CN106982259A CN 106982259 A CN106982259 A CN 106982259A CN 201710257871 A CN201710257871 A CN 201710257871A CN 106982259 A CN106982259 A CN 106982259A
Authority
CN
China
Prior art keywords
server
master
cluster
standby
master server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710257871.5A
Other languages
English (en)
Inventor
刘宝国
于芝涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Poly Polytron Technologies Inc
Juhaokan Technology Co Ltd
Original Assignee
Poly Polytron Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Poly Polytron Technologies Inc filed Critical Poly Polytron Technologies Inc
Priority to CN201710257871.5A priority Critical patent/CN106982259A/zh
Publication of CN106982259A publication Critical patent/CN106982259A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明揭示了一种服务器集群的故障解决方法,主服务器和备用服务器组合成服务器集群,服务器集群通过绑定的虚拟IP地址和外部网络通信。通过监听服务器集群中的主服务器,在主服务器处于故障状态时,启用服务器集群中的备用服务器,并重新确定服务器集群中的所有服务器的优先权等级。根据重新确定的优先权等级,更新虚拟IP地址和服务器集群中的服务器绑定,以使备用服务器代替主服务器。在主服务器故障时,外部网络对服务器集群的访问不会因此中断。

Description

服务器集群的故障解决方法
技术领域
本公开涉及互联网应用技术领域,特别涉及服务器集群的故障解决方法和装置。
背景技术
随着互联网应用技术的发展,服务器集群的高可用性越来越重要。将主服务器和备用服务器组成一个服务器集群,该服务器集群通过唯一的虚拟IP地址和外部网络通信。
现有技术中,当服务器集群中的主服务器出现故障时,启用服务器集群中的备用服务器以代替主数据库服务器,并将虚拟IP地址设置在新的主服务器上。但是,当原来发生故障的主服务器重新恢复后,服务器集群中存在两个主服务器与虚拟IP地址绑定。即服务器集群中同时出现两个拥有虚拟IP地址的主服务器,服务器集群中原本处于服务器同步状态的主服务器和备用服务器,分裂为两个独立的主服务器。这两个独立的主服务器将导致服务器集群无法有效地与外部网络通信。
发明内容
为了解决相关技术中存在的服务器集群在故障解决后无法有效与外部网络通信的技术问题,本公开提供了一种服务器集群的故障解决方法及装置。
一种服务器集群的故障解决方法,所述服务器集群包括主服务器和备用服务器,所述服务器集群通过绑定的虚拟IP地址和外部网络通信,所述方法包括:
监听所述服务器集群中的主服务器;
在所述主服务器处于故障状态时,启用所述服务器集群中的备用服务器,并重新确定所述服务器集群中的所有服务器的优先权等级;
根据重新确定的所述优先权等级,更新所述虚拟IP地址和所述服务器集群中的服务器绑定,以使所述备用服务器代替所述主服务器。
一种服务器集群的故障解决装置,所述装置包括:
监听装置,用于监听所述服务器集群中的主服务器;
切换装置,用于在所述主服务器处于故障状态时,启用所述服务器集群中的备用服务器,并重新确定所述服务器集群中的所有服务器的优先权等;
IP地址更新装置,用于根据重新确定的所述优先权等级,更新所述虚拟IP地址和所述服务器集群中的服务器绑定,以使所述备用服务器代替所述主服务器。
本公开的实施例提供的技术方案可以包括以下有益效果:通过主服务器和备用服务器组合成服务器集群,服务器集群通过唯一的虚拟IP地址和外部网络通信。监听服务器集群中的主服务器,当主服务器处于故障状态时,启用服务器集群中的备用服务器以代替主服务器。更新虚拟IP地址和服务器集群中的服务器绑定,及时解除原来的主服务器的虚拟IP地址绑定,且在替代主服务器的备用服务器上绑定虚拟IP地址。避免了服务器集群中同时出现两个绑定虚拟IP地址的主服务器,确保外部网络访问服务器集群的请求可以达到该服务器集群。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是一示例性实施例示出的服务器集群的故障解决方法的流程图。
图2是图1对应实施例示出的方法中步骤110的一种具体实现流程图。
图3是图1对应实施例示出的方法中步骤130的一种具体实现流程图。
图4是图3对应实施例示出的方法中步骤131的一种具体实现流程图。
图5是另一示例性实施例示出的服务器集群的故障解决方法的示意图。
图6是一示例性实施例示出的服务器集群的故障解决装置的框图。
图7是根据图6对应实施例的装置中的监听装置在一个实施例的框图。
图8是根据图6对应实施例的装置中的切换装置在一个实施例的框图。
图9是根据图8对应实施例的装置中的优先权值获取单元在一个实施例的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的服务器集群的故障解决方法的流程图。如图1所示,该方法包括以下步骤:
在步骤110中,监听服务器集群中的主服务器。
主服务器,是指服务器集群中为外部网络提供数据服务的服务器。服务器集群中包括多个服务器,但只有主服务器为外部网络提供数据服务,其它的备用服务器作为该主服务器的备用服务器,只有当主服务器发生故障才会被启动以代替主服务器器。为保证主服务器发生故障时,能立即启动备用服务器以代替主服务器器,需要对处于工作状态的主服务器进行监听。
虚拟IP地址,是指在通过协议软件实现服务器集群的路由功能时,由具有虚拟路由冗余功能的协议软件将一个IP地址动态分配给服务器集群中的服务器,该IP地址不需要和物理网关相关联,但能实现服务器集群的路由功能。
不管该服务器集群由多少台的服务器组成,都只有一台主服务器通过绑定唯一的虚拟IP地址,负责服务器集群的路由工作。外部网络通过该唯一的虚拟IP地址访问服务器集群。
通过将主服务器和备用服务器组合成服务器集群,该服务器集群通过唯一的虚拟IP地址和外部网络通信。该虚拟IP地址和服务器集群中的主服务器绑定,外部网络通过向该虚拟IP地址发送访问请求以获取服务器集群提供的数据服务。
在一个具体的实施例中,通过向服务器集群中的主服务器持续的发送ICMP(Internet Control Message Protocol,网络控制消息协议)数据包,如果主服务器能够响应该数据包并返回有效的IP地址,则主服务器处于工作正常状态。如果主服务器不能返回有效的IP地址,即可判定主服务器处于故障状态。
ICMP是TCP/IP协议族的子协议,用于在主机和路由器之间传递控制消息。ICMP数据包在Linux系统和Windows系统中可以通过Ping程序实现。
在另一个具体的实施例中,通过监听主服务器的TCP端口状态来判断该主服务器是否处于故障状态。例如,如果监听到主服务器浏览网页服务默认的80端口没有启动,即可判断主服务器处于故障状态。
通过对主服务器进行持续的监听,一旦发现主服务器处于故障状态,即可在非常短的时间内启动服务器集群中的备用服务器以替代该主服务器,使得外部网络与服务器集群之间的通信不会因主服务器出现故障而中断。
在步骤130中,在主服务器处于故障状态时,启用服务器集群中的备用服务器,并重新确定服务器集群中的所有服务器的优先权等级。
在服务器集群正常工作状态下,服务器集群中的主服务器和备用服务器处于服务器同步状态。当监听到主服务器故障,立即启动服务器集群中主服务器和备用服务器进行切换,以备用服务代替原来的主服务器工作。同时,重新确定服务器集群中的所有服务器的优先权等级,以按照新确定的优先权等级,更新虚拟IP地址和服务器集群中的服务器绑定,以使备用服务器代替主服务器。
优先权等级,是指在配置了虚拟路由冗余协议的服务器集群中有多台服务器,但是这些服务器并不能同时工作,而是由一台主服务器同虚拟IP地址绑定而负责路由工作。服务器集群就通过这个虚拟IP地址来与其它网络进行通信。服务器集群中的多台服务器通过比较各自的优先权等级,优先权等级最高的数据库服务器成为主服务器并和虚拟IP地址进行绑定。虚拟冗余协议中优先权等级范围是0至255,优先权等级0只有当虚拟IP地址的所有者主动放弃主控者角色时才使用。因此,虚拟冗余协议中可配置的优先级范围为1至254。优先权等级的配置原则可以依据链路的速度和成本、路由器性能和可靠性以及其它管理策略设定。
在一个具体的实施例中,通过将数据库高可用组件中的节点组件分别安装于服务器集群中的主服务器和备用服务器。数据库高可用组件中的管理员组件单独部署在一台独立的服务器上。管理员组件通过ping程序定时探测服务器集群中的主服务器,当主服务器出现故障时,它可以自动将已经复制了最新数据的备用服务器提升为新的主服务器,然后将其它的备用数据库服务器重新连接到新的主服务器,重新将服务器集群设置为服务器同步状态。
高可用组件,是指用于提高服务器集群可用性的一套软件系统,高可用组件包括管理员组件和节点组件,管理员组件用于服务器的故障探测和切换,节点组件主要实现服务器上的二进制归档日志保存功能,并通过管理员组件来触发节点组件执行对二进制归档日志的保存。
二进制归档日志,是记录主服务器上的数据更新的日志,当主服务器发生故障时,节点组件通过将主服务器二进制归档日志复制到备用服务器,保证备用服务器和主服务器的存储数据保持一致。
如果主服务器发生故障时,备用服务器未能获取到最新的该主服务器二进制归档日志,导致备用服务器和主服务器的存储数据不一致。通过高可用组件对服务器集群中的服务器进行故障切换过程中,高可用组件通过读取发生故障的主服务器的上二进制归档日志,并将主服务器二进制归档日志复制到备用数据库服务器,最大程度的保证主服务器上的数据不丢失。
在监听得到主服务器处于故障状态时,启用服务器集群中的备用服务器。同时,重新确定服务器集群中的所有服务器的优先权等级,服务器集群中的多台服务器通过比较各自的优先权等级,使得优先权等级最高的服务器成为主服务器,并能和服务器集群的虚拟IP地址进行绑定。
在步骤150中,根据重新确定的优先权等级,更新虚拟IP地址和服务器集群中的服务器绑定,以使备用服务器代替主服务器。
根据重新确定的优先权等级,更新虚拟IP地址和所述服务器集群中的服务器绑定,以使备用服务器代替主服务器。更新虚拟IP地址和服务器集群中的服务器绑定,需要在代替主服务器的备份服务器上设置虚拟IP地址的同时,将该虚拟IP地址和原来的主服务器绑定解除。
在一个具体的实施例中,通过分别在主服务器和备用服务器上安装Keepalived软件为服务器集配置群虚拟冗余协议。主服务器和备用服务器之间通过基于虚拟路由冗余协议的Keepalived软件进行通信。
通过Keepalived软件为服务器集配置群虚拟冗余协议,当备用服务器的优先权等级高于主服务器,该备用服务器便会剥夺当前低优先权等级的主服务器而成为新的主服务器。通过获取进行虚拟路由冗余协议配置后的服务器集群中的全部服务器的优先权等级,保证优先权等级最高的服务器可以获得服务器集群的唯一的虚拟IP地址。
为避免服务器集群中同时出现两个绑定虚拟IP地址的主数据库服务器,通过虚拟路由冗余协议配置服务器集群,获取主服务器和备用服务器各自在服务器集群中的优先权等级。通过虚拟路由冗余协议自动将优先权等级最高的数据库服务器配置为主服务器,并更新虚拟IP地址和新的主服务器进行绑定。避免了服务器集群中同时出现两个绑定虚拟IP地址的主服务器,确保外部网络访问服务器集群的请求可以达到服务器集群。
在另一个示例性实施例中,在步骤110之前还包括步骤101。
在步骤101中,通过向服务器集群发送服务器同步状态指令,将主服务器存储的内容复制到备用服务器。
服务器同步状态,是指服务器集群中的备用服务器中全部指向并连接到主服务器,并对主服务器中存储的内容根据预先设定的时间间隔不断的复制,使得备用服务器存储的内容和主服务器存储的内容保存一致的状态。通过向服务器集群发送服务器同步状态指令,设置服务器集群处于服务器同步状态,将主服务器存储的内容复制到备用服务器。
在一个具体的实施例中,高可用组件中的管理员组件通过向分别安装于主服务器和备用服务器的节点组件发送同步状态指令,备用服务通过和主服务器建立连接并将主服务器存储的内容复制到备用服务器。
通过向服务器集群发送同步状态指令,设置服务器集群处于服务器同步状态,保证当主服务器发生故障而启动备用服务器代替主服务器,备用服务器中存储的内容和主服务器中存储的内容一致。
图2是图1对应实施例示出的方法中步骤110的一种具体实现流程图。图2所示,该步骤110还包括以下步骤:
在步骤111中,向服务器集群中的主服务器发送询问指令。
通过备用服务器或者独立于服务器集群的外部服务器不间断的发送询问指令给主服务器,当备用服务器或者独立于服务器集群的外部服务器在设定的时间间隔内没有收到该询问指令的应答指令,即可判定主服务器处于故障状态。
询问指令,是指备用服务器或者独立于服务器集群的其它服务器为了探测主服务器是否处于正常工作状态而向主服务器发送的探测指令。
在一个具体的实施例中,询问指令可以通过安装于备用服务器之上的Keepalived软件发送的报文来实现。其中,Keepalived软件是一个基于虚拟路由冗余协议而实现收发虚拟路由冗余报文的软件。通过分别在主服务器和备用服务器上安装基于虚拟路由冗余协议的Keepalived软件。通过虚拟路由冗余协议配置服务器集群。主服务器和备用服务器之间利用Keepalived软件发送虚拟路由冗余协议报文进行通信,通过Keepalived软件提供的检测函数监听服务器集群中的主服务器的运行状态是否正常。
具体的,通过安装于备用服务器上Keepalived软件或者安装在独立于服务器集群的外部服务器的Keepalived软件,不间断的发送询问指令给安装于主数据库服务器的Keepalived软件。当安装于备用服务器上Keepalived软件或者安装在独立于服务器集群的外部服务器的Keepalived软件在设定的时间间隔内没有收到该询问指令的应答指令,即可判定主服务器处于故障状态。
在步骤113中,通过在预先设定的切换时间内未能接收主服务器发出的应答指令,判定主服务器处于故障状态。
当主服务器处于故障状态,可能造成外部网络的访问请求不可以达到服务器集群。通过监听服务器集群中的主服务器,通过在预先设定的切换时间内未能获得主服务器发出的应答指令,判定主服务器处于故障状态。
可见,由于服务器集群能够及时启动服务器集群中的备用服务器以代替主服务器,使得外部网络访问请求能够及时达到服务器集群而不会中断服务器集群提供的数据服务,提高了服务器集群的可用性。
图3是图1对应实施例示出的方法中步骤130的一种具体实现流程图。如图3示,步骤130还包括以下步骤:
在步骤131中,获取由虚拟路由冗余协议配置后的所述服务器集群中的全部服务器各自的优先权值。
虚拟路由冗余协议,是指一种选择协议,它可以把一个虚拟IP地址动态分配给服务器集群中的一台服务器。绑定虚拟IP地址的服务器称为主服务器。主服务器通过虚拟路由冗余报文将服务器集群中服务器的优先权等级和工作状态通告给所有的其它服务器。
优先权值,是指由虚拟路由冗余协议配置后的服务器集群中的全部服务器后,用于计算服务器集群中的全部服务器的优先权等级的数值。
通过获取由虚拟路由冗余协议配置后的服务器集群中的全部服务器各自的优先权值,即可确定服务器集群中的每个服务器的优选权等级。
在步骤133中,根据优先权值,重新确定主服务器、备用服务器的优先权等级。
服务器集群配置虚拟路由冗余协议功能后,服务器集群中的服务器会根据优先级确定自己在服务器集群中的角色。优先权等级高的服务器成为主数据库服务器,优先权等级低的成为备份服务器。
主服务器定期发送虚拟路由冗余协议报文,通知服务器集群内的其他备份服务器自己工作正常。当服务器集群里有多台备份服务器时,短时间内可能产生多个主服务器,此时,备份服务器将会将收到的虚拟路由协议报文中的优先权等级与自身的优先权等级做比较。从而选取优先权等级最高的服务器和虚拟IP地址进行绑定。
如果主服务器坏掉,服务器集群将会通过优先权等级选举策略选出一个新的主服务器,继续向外部网络提供数据服务。从而实现服务器集群不间断地与外部网络进行通信。服务器集群中的主服务器的改变,不影响外部网络对服务器集群的访问。
在一个具体的实施例中,通过配置虚拟路由冗余协议的服务器集群支持的优先权等级的范围是0至255。当主服务器的优先权等级为100,如果服务器集群中的一个备份服务器的优先权等级为120。由于备份数据库服务器的优先权等级120大于主服务器的优先权等级100,服务器集群将虚拟IP地址和优先权等级为120的备份服务器进行绑定,并将原来的主服务器和虚拟IP地址解除绑定。
如果服务器集群中的主服务器坏掉,备用服务器将会通过基于虚拟路由冗余协议的选举策略选出一个新的主服务器,从而实现服务器集群不间断地与外部网络进行通信。确保任何时候,外部网络访问服务器集群的请求都可以达到该服务器集群。
图4是图3对应实施例示出的方法中步骤131的一种具体实现流程图。图4示,步骤131还包括以下步骤:
在步骤171中,获取主服务器、备用服务器和服务器同步状态各自的优先权初始值。
优先权初始值,是指虚拟路由冗余协议赋予主服务器、备用服务器和服务器同步状态的用于计算优先权等级的初始值。
主服务器和备用服务器各自的优先权初始值存储于服务器自身的优先权值表中。通过读取主服务器、备用服务器各自优先权值表中的优先权初始值,得到主服务器的优先权初始值和备份服务器的优先权初始值。而服务器同步状态的优先权初始值默认为0。
在步骤173中,对主服务器、备用服务器和服务器同步状态进行检测识别,获取由检测识别成功而返回的识别值。
主服务器和备用服务器在工作中处于不同的读写状态。当服务器集群处于工作状态,主服务器处于可读写状态,备用服务器处于只读状态。通过读取主服务器中的读写标志位,并根据该读写标志位判断该服务器为主服务器。
通过在备用服务器中设置一个备份标志位,通过读取备用数据库服务器中的该备份标志位,判断该服务器为备用服务器。
如果备用服务器代替原来的主服务器且和虚拟IP地址绑定。服务器集群中的其它服务器全部连接该备用服务器,即服务器集群重新处于服务器同步状态,已经切换为主服务器的该备用数据库服务器中的备用标志位将被清除。
在一个具体的实施例中,通过Keepalived软件提供的识别函数读取主服务器中的读写标志位,并返回对应主服务器的识别值。通过识别函数读取备用服务器中的备份标志位,并返回对应备用服务器的识别值。通过识别函数读取服务器同步状态对应的同步进程,根据该同步进程判断服务器同步状态建立,并返回对应服务器同步状态的识别值。
在一个具体的实施例中,识别函数识别主服务器中的读写标志位成功,并返回的识别值为50。识别函数识别备用服务器中的备用标志位成功,并返回的识别值为40。识别函数识别服务器同步状态成功而返回的识别值为20。
在步骤175中,根据识别返回值和优先权初始值,得到主服务器、备用服务器各自的优先权值。
根据主服务器、备用服务器各自的优先权初始值,以及通过对主服务器、备用服务器和服务器同步状态进行检测识别而返回的识别值,得到主服务器、备用服务器各自的优先权值。通过主服务器、备用服务器各自的优先权值,确定主服务器、备用服务器在服务器集群中的优先权等级。
在一个具体的实施例中,当服务器集群处于正常工作状态下,主服务器优先权初始值为100,通过识别函数识别该主服务器和服务器同步状态成功,分别返回的识别值为50和20。将主服务器的优先权初始值、对应主服务器、服务器同步状态的识别值三者相加,得到该主服务器的优先权值为170。
备份服务器的优先权初始值90,通过识别函数识别备份服务器成功而返回的识别值40,通过备份服务器的优先权初始值、识别值二者相加,得到备份服务器的优先权值为130。
通过比较主服务器的优先权值170和备份服务器的优先权值130,得到主服务器的优先权等级大于备份服务器的优先权等级。即当服务器集群处于正常工作状态下,服务器虚拟IP地址绑定不会发生更新。
在一个具体的实施例中,当主服务器故障,服务器集群启动备用服务器以代替主服务器,并将备用服务器设置为读写状态。此时,由于备用服务器的备用标志位没有被清除,通过识别函数识别备用服务器成功而返回的识别值等于读写标志位50和备用标志位40二者之和90。通过备用服务器的优先权初始值、对应备用服务器识别值二者相加,得到该备用服务器的优先权值为180。
由于服务器集群的服务器同步状态还没有建立,原来的主服务器仍然为读写状态,通过识别函数识别原来的主服务器成功而返回的识别值为50。通过将主服务器的优先权初始值100和对应主服务器返回值50二者相加,得到主服务器的优先权值为150。
在另一个具体的实施例中,根据备份服务器的优先权值180大于主服务器的优先权值150,得到备份服务器的优先权等级大于主服务器的优先权等级。启动更新服务器集群中虚拟IP地址的服务器绑定,即解除主服务器的虚拟IP地址绑定,并将该虚拟IP地址和对应该优先权值为150的备份服务器进行绑定,备份服务器成为新的主服务器。
在另一个具体的实施例中,当主服务器故障,服务器集群启动备用服务器以代替主服务器。通过将备用服务器设置为读写状态,服务器集群中的其它服务器全部指向该备份服务器,并和该备份数据库服务器建立连接,即服务器集群重新建立的服务器同步状态。
此时,新的备用服务器代替原来的主服务器并绑定虚拟IP地址,备用服务器中的备用标志位被清除。备用服务器设置为读写状态,识别函数识别备用服务器中的读写标志位成功而返回的识别值为50。原来的主服务器被设置为只读状态,识别函数识别该原主服务器中的备用标志位成功而返回的识别值为40。
通过将备用服务器的优先权初始值90、对应备用服务器识别值50和同步状态识别值20二者相加,得到备用服务器的优先权值为160。通过原来的主服务器的优先权初始值100、对应原来的主服务器识别值40二者相加,得到原主库服务器的优先权值为140。根据备份服务器的优先权值大于原来的主服务器的优先权值,得到备份服务器的优先权等级大于备份服务器的优先权等级。此时,备份数据库服务器已经完成虚拟IP地址绑定,服务器集群中的服务器虚拟IP地址绑定不发生更新。
通过对服务器集群配置虚拟路由冗余协议,在启用服务器集群中的备用服务器以代替主服务器的过程中,根据优先权等级更新虚拟IP地址和服务器集群中的服务器绑定。避免了服务器集群中同时出现两个绑定虚拟IP地址的主服务器,确保外部网络访问服务器集群的请求可以达到服务器集群。
图5是另一示例性实施例示出的服务器集群的故障解决方法的示意图。
通过将高可用组件中的节点组件分别安装于服务器集群中的主服务器和备用服务器。数据库高可用组件中的管理员组件单独部署在一台独立的服务器上。通过分别在主服务器和备用服务器上安装Keepalived软件为服务器集配置群虚拟冗余协议。主服务器和备用服务器之间通过基于虚拟路由冗余协议的Keepalived软件进行通信。
当主服务器故障,通过数据库高可用组件启动数据库服务器切换,备用服务器代替原来的主服务器。通过Keepalived软件赋予备用服务器高于原来主服务器的优先权等级,该备用服务器便会剥夺当前低优先权等级的主服务器而成为新的主服务器并和服务器集群的虚拟IP地址进行绑定。
图6是一示例性实施例示出的服务器集群的故障解决装置的框图。如图6所示,该装置包括但不限于:监听装置610,切换装置630,IP地址更新装置650。
监听装置610,用于监听服务器集群中的主服务器;
切换装置630,用于在主服务器处于故障状态时,启用服务器集群中的备用服务器,并重新确定服务器集群中的所有服务器的优先权等级;
IP地址更新装置650,用于根据重新确定的优先权等级,更新虚拟IP地址和所述服务器集群中的服务器绑定,以使备用服务器代替所述主服务器。
一种根据权利要求6所述的装置,还包括同步装置。
同步装置,用于通过向服务器集群发送服务器同步状态指令,将主服务器存储的内容复制到所述备用服务器。
图7是根据图6对应实施例的装置中的监听装置在一个实施例的框图。如图7所示,该装置还包括:包括但不限于:询问单元611,故障获取单元613。
询问单元611,用于向主服务器发送询问指令;
故障获取单元613,用于通过在预先设定的切换时间内未能接收主服务器发出的应答指令,判定主服务器处于故障状。
图8是根据图6对应实施例的装置中的切换装置在一个实施例的框图。如图8所示,该切换装置包括但不限于:优先权值获取单元631,优先权权等级确定单元633。
优先权值获取单元631,用于获取由虚拟路由冗余协议配置后的所述服务器集群中的全部服务器各自的优先权值;
优先权等级确定单元633,用于根据优先权值,重新确定所述主服务器、备用服务器的优先权等级。
图9是根据图8对应实施例的装置中的优先权值获取单元631在一个实施例的框图。如图9所示,该优先权值获取单元631包括但不限于:优先权初始值获取子单元711,识别值获取子单元713,优先权值获取子单元715。
优先权初始值获取子单元711,用于获取主服务器、备用服务器和服务器同步状态各自的优先权初始值;
识别值获取子单元713,用于对主服务器、备用服务器和服务器同步状态进行检测识别,获取检测识别成功而返回的识别值;
优先权值获取子单元715,用于根据识别值和优先权初始值,得到主服务器、备用服务器各自的优先权值;
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (10)

1.一种服务器集群的故障解决方法,所述服务器集群包括主服务器和备用服务器,所述服务器集群通过绑定的虚拟IP地址和外部网络通信,其特征在于,所述方法包括:
监听所述服务器集群中的主服务器;
在所述主服务器处于故障状态时,启用所述服务器集群中的备用服务器,并重新确定所述服务器集群中的所有服务器的优先权等级;
根据重新确定的所述优先权等级,更新所述虚拟IP地址和所述服务器集群中的服务器绑定,以使所述备用服务器代替所述主服务器。
2.根据权利要求1所述的方法,其特征在于,所述监听所述服务器集群中的主服务器之前,包括:
通过向所述服务器集群发送服务器同步状态指令,将所述主服务器存储的内容复制到所述备用服务器。
3.根据权利要求1所述的方法,其特征在于,所述监听所述服务器集群中的主服务器,包括:
向所述主服务器发送询问指令;
通过在预先设定的切换时间内未能接收所述主服务器发出的应答指令,判定所述主服务器处于故障状态。
4.根据权利要求1所述的方法,其特征在于,所述重新确定所述服务器集群中的所有服务器的优先权等级,还包括:
获取由虚拟路由冗余协议配置后的所述服务器集群中的全部服务器各自的优先权值;
根据所述优先权值,重新确定所述主服务器、备用服务器的优先权等级。
5.根据权利要求4所述的方法,其特征在于,所述获取由虚拟路由冗余协议配置后的所述服务器集群中的全部服务器各自的优先权值,包括:
获取所述主服务器、备用服务器和服务器同步状态各自的优先权初始值;
分别对所述主服务器、备用服务器和服务器同步状态进行检测识别,获取由检测识别成功而返回的识别值;
根据所述识别值和所述优先权初始值,得到所述主服务器、备用服务器各自的优先权值。
6.一种服务器集群的故障解决装置,其特征在于,所述装置包括:
监听装置,用于监听所述服务器集群中的主服务器;
切换装置,用于在所述主服务器处于故障状态时,启用所述服务器集群中的备用服务器,并重新确定所述服务器集群中的所有服务器的优先权等级;
IP地址更新装置,用于根据重新确定的所述优先权等级,更新所述虚拟IP地址和所述服务器集群中的服务器绑定,以使所述备用服务器代替所述主服务器。
7.根据权利要求6所述的故障解决装置,其特征在于,所述装置还包括:
同步装置,用于通过向所述服务器集群发送服务器同步状态指令,将所述主服务器存储的内容复制到所述备用服务器。
8.根据权利要求6所述的监听装置,其特征在于,所述监听装置,包括:
询问单元,用于向所述主服务器发送询问指令;
故障判定单元,用于通过在预先设定的切换时间内未能接收所述主服务器发出的应答指令,判定所述主服务器处于故障状态。
9.根据权利要求6所述的装置,其特征在于,所述切换装置还包括:
优先权值获取单元,用于获取由虚拟路由冗余协议配置后的所述服务器集群中的全部服务器各自的优先权值;
优先权等级确定单元,用于根据所述优先权值,重新确定所述主服务器、备用服务器的优先权等级。
10.根据权利要求9所述的装置,其特征在于,所述优先权值获取单元还包括:
优先权初始值获取子单元,用于获取所述主服务器、备用服务器和服务器同步状态各自的优先权初始值;
识别值获取子单元,用于对所述主服务器、备用服务器和服务器同步状态进行检测识别,获取由检测识别成功而返回的识别值;
优先权值获取子单元,用于根据所述识别值和所述优先权初始值,得到所述主服务器、备用服务器各自的优先权值。
CN201710257871.5A 2017-04-19 2017-04-19 服务器集群的故障解决方法 Pending CN106982259A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710257871.5A CN106982259A (zh) 2017-04-19 2017-04-19 服务器集群的故障解决方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710257871.5A CN106982259A (zh) 2017-04-19 2017-04-19 服务器集群的故障解决方法

Publications (1)

Publication Number Publication Date
CN106982259A true CN106982259A (zh) 2017-07-25

Family

ID=59345978

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710257871.5A Pending CN106982259A (zh) 2017-04-19 2017-04-19 服务器集群的故障解决方法

Country Status (1)

Country Link
CN (1) CN106982259A (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107465562A (zh) * 2017-09-25 2017-12-12 郑州云海信息技术有限公司 一种ctdb自定义分配虚拟ip的方法、装置、设备
CN108769199A (zh) * 2018-05-29 2018-11-06 郑州云海信息技术有限公司 一种分布式文件存储系统主节点管理方法及装置
CN108900647A (zh) * 2018-09-13 2018-11-27 新华三技术有限公司成都分公司 地址切换处理方法及装置
CN109067570A (zh) * 2018-07-24 2018-12-21 北京信安世纪科技股份有限公司 一种服务器信息展示方法、装置以及服务器
CN109525411A (zh) * 2017-09-19 2019-03-26 北京金山云网络技术有限公司 网络功能组件集群、构架、控制方法、设备及存储介质
CN109753387A (zh) * 2018-01-24 2019-05-14 比亚迪股份有限公司 轨道交通多媒体系统的双机热备方法和系统
CN110474797A (zh) * 2019-07-25 2019-11-19 北京旷视科技有限公司 Api业务系统、主备切换的方法及装置
CN110501979A (zh) * 2018-05-18 2019-11-26 深圳市优必选科技有限公司 一种集群控制方法、系统及终端设备
CN110955210A (zh) * 2019-11-29 2020-04-03 广东嘉腾机器人自动化有限公司 Agv调度方法、装置和系统
CN111124757A (zh) * 2019-12-16 2020-05-08 上海热璞网络科技有限公司 一种分布式事务数据库的数据节点心跳检测算法
CN111414247A (zh) * 2020-04-24 2020-07-14 北京金山云网络技术有限公司 一种服务器切换方法、装置、管理节点及存储介质
CN111641716A (zh) * 2020-06-01 2020-09-08 第四范式(北京)技术有限公司 参数服务器的自愈方法、参数服务器及参数服务系统
WO2020211362A1 (zh) * 2019-04-16 2020-10-22 平安科技(深圳)有限公司 提高集群系统可用性的方法、装置和计算机设备
WO2020233001A1 (zh) * 2019-05-20 2020-11-26 平安科技(深圳)有限公司 双控构架分布式存储系统、数据读取方法、装置和存储介质
US10887382B2 (en) 2018-12-18 2021-01-05 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10958720B2 (en) 2018-12-18 2021-03-23 Storage Engine, Inc. Methods, apparatuses and systems for cloud based disaster recovery
US10983886B2 (en) 2018-12-18 2021-04-20 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
CN112882771A (zh) * 2021-03-22 2021-06-01 建信融通有限责任公司 应用系统的服务器切换方法及装置、存储介质及电子设备
US11178221B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11176002B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
CN113783904A (zh) * 2020-06-09 2021-12-10 比亚迪股份有限公司 负载均衡方法、路由服务器及负载均衡系统
US11252019B2 (en) 2018-12-18 2022-02-15 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
CN114650213A (zh) * 2020-12-18 2022-06-21 航天信息股份有限公司 配置Jenkins服务器集群的方法、装置、存储介质
CN115102962A (zh) * 2022-06-22 2022-09-23 青岛中科曙光科技服务有限公司 集群管理方法、装置、计算机设备和存储介质
US11489730B2 (en) 2018-12-18 2022-11-01 Storage Engine, Inc. Methods, apparatuses and systems for configuring a network environment for a server
CN117395316A (zh) * 2023-12-11 2024-01-12 深圳万物安全科技有限公司 出口流量管理方法、设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252427A (zh) * 2008-02-29 2008-08-27 中兴通讯股份有限公司 与媒体网关的主备接口相连的主备路由器的切换方法
CN101309167A (zh) * 2008-06-27 2008-11-19 华中科技大学 基于集群备份的容灾系统及方法
CN101483673A (zh) * 2009-02-20 2009-07-15 杭州华三通信技术有限公司 异地热备实现方法及系统
CN101686261A (zh) * 2009-09-01 2010-03-31 卡斯柯信号有限公司 一种基于rac的冗余服务器系统
CN101815315A (zh) * 2010-03-12 2010-08-25 中兴通讯股份有限公司 一种冗余备份倒换方法、装置和系统
CN106559267A (zh) * 2016-11-25 2017-04-05 聚好看科技股份有限公司 Redis的主从切换方法、装置及redis系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252427A (zh) * 2008-02-29 2008-08-27 中兴通讯股份有限公司 与媒体网关的主备接口相连的主备路由器的切换方法
CN101309167A (zh) * 2008-06-27 2008-11-19 华中科技大学 基于集群备份的容灾系统及方法
CN101483673A (zh) * 2009-02-20 2009-07-15 杭州华三通信技术有限公司 异地热备实现方法及系统
CN101686261A (zh) * 2009-09-01 2010-03-31 卡斯柯信号有限公司 一种基于rac的冗余服务器系统
CN101815315A (zh) * 2010-03-12 2010-08-25 中兴通讯股份有限公司 一种冗余备份倒换方法、装置和系统
CN106559267A (zh) * 2016-11-25 2017-04-05 聚好看科技股份有限公司 Redis的主从切换方法、装置及redis系统

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109525411A (zh) * 2017-09-19 2019-03-26 北京金山云网络技术有限公司 网络功能组件集群、构架、控制方法、设备及存储介质
CN109525411B (zh) * 2017-09-19 2022-03-04 北京金山云网络技术有限公司 网络功能组件集群、系统、控制方法、设备及存储介质
CN107465562A (zh) * 2017-09-25 2017-12-12 郑州云海信息技术有限公司 一种ctdb自定义分配虚拟ip的方法、装置、设备
CN107465562B (zh) * 2017-09-25 2020-03-06 郑州云海信息技术有限公司 一种ctdb自定义分配虚拟ip的方法、装置、设备
CN109753387A (zh) * 2018-01-24 2019-05-14 比亚迪股份有限公司 轨道交通多媒体系统的双机热备方法和系统
CN110501979A (zh) * 2018-05-18 2019-11-26 深圳市优必选科技有限公司 一种集群控制方法、系统及终端设备
CN108769199A (zh) * 2018-05-29 2018-11-06 郑州云海信息技术有限公司 一种分布式文件存储系统主节点管理方法及装置
CN109067570A (zh) * 2018-07-24 2018-12-21 北京信安世纪科技股份有限公司 一种服务器信息展示方法、装置以及服务器
CN109067570B (zh) * 2018-07-24 2021-08-31 北京信安世纪科技股份有限公司 一种服务器信息展示方法、装置以及服务器
CN108900647A (zh) * 2018-09-13 2018-11-27 新华三技术有限公司成都分公司 地址切换处理方法及装置
CN108900647B (zh) * 2018-09-13 2021-07-06 新华三技术有限公司成都分公司 地址切换处理方法及装置
US10958720B2 (en) 2018-12-18 2021-03-23 Storage Engine, Inc. Methods, apparatuses and systems for cloud based disaster recovery
US11178221B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11489730B2 (en) 2018-12-18 2022-11-01 Storage Engine, Inc. Methods, apparatuses and systems for configuring a network environment for a server
US11252019B2 (en) 2018-12-18 2022-02-15 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10887382B2 (en) 2018-12-18 2021-01-05 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11176002B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10983886B2 (en) 2018-12-18 2021-04-20 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
WO2020211362A1 (zh) * 2019-04-16 2020-10-22 平安科技(深圳)有限公司 提高集群系统可用性的方法、装置和计算机设备
WO2020233001A1 (zh) * 2019-05-20 2020-11-26 平安科技(深圳)有限公司 双控构架分布式存储系统、数据读取方法、装置和存储介质
CN110474797A (zh) * 2019-07-25 2019-11-19 北京旷视科技有限公司 Api业务系统、主备切换的方法及装置
CN110955210A (zh) * 2019-11-29 2020-04-03 广东嘉腾机器人自动化有限公司 Agv调度方法、装置和系统
CN110955210B (zh) * 2019-11-29 2021-10-19 广东嘉腾机器人自动化有限公司 Agv调度方法、装置和系统
CN111124757A (zh) * 2019-12-16 2020-05-08 上海热璞网络科技有限公司 一种分布式事务数据库的数据节点心跳检测算法
CN111414247A (zh) * 2020-04-24 2020-07-14 北京金山云网络技术有限公司 一种服务器切换方法、装置、管理节点及存储介质
CN111641716A (zh) * 2020-06-01 2020-09-08 第四范式(北京)技术有限公司 参数服务器的自愈方法、参数服务器及参数服务系统
CN111641716B (zh) * 2020-06-01 2023-05-02 第四范式(北京)技术有限公司 参数服务器的自愈方法、参数服务器及参数服务系统
CN113783904A (zh) * 2020-06-09 2021-12-10 比亚迪股份有限公司 负载均衡方法、路由服务器及负载均衡系统
CN114650213A (zh) * 2020-12-18 2022-06-21 航天信息股份有限公司 配置Jenkins服务器集群的方法、装置、存储介质
CN112882771A (zh) * 2021-03-22 2021-06-01 建信融通有限责任公司 应用系统的服务器切换方法及装置、存储介质及电子设备
CN115102962A (zh) * 2022-06-22 2022-09-23 青岛中科曙光科技服务有限公司 集群管理方法、装置、计算机设备和存储介质
CN117395316A (zh) * 2023-12-11 2024-01-12 深圳万物安全科技有限公司 出口流量管理方法、设备及可读存储介质
CN117395316B (zh) * 2023-12-11 2024-03-22 深圳万物安全科技有限公司 出口流量管理方法、设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN106982259A (zh) 服务器集群的故障解决方法
CN110224871B (zh) 一种Redis集群的高可用方法及装置
CN108234191A (zh) 云计算平台的管理方法和装置
US7107481B2 (en) Server takeover system and method
JP4457184B2 (ja) ストレージシステムにおけるフェイルオーバー処理
US7100070B2 (en) Computer system capable of fast failover upon failure
CN110572275B (zh) 一种网卡切换方法、装置、服务器及计算机可读存储介质
US6760859B1 (en) Fault tolerant local area network connectivity
US7966514B2 (en) Scalable fault tolerant system
CN107623593B (zh) 基于cu分离的双机热备的方法及设备
CN104503965A (zh) PostgreSQL高弹性的高可用及负载均衡实现方法
US9898377B2 (en) Switch provided failover
JP2005535241A (ja) マルチコンピュータ・アーキテクチャにおけるアプリケーション・ソフトウェアの移動方法、前記移動方法を用いて作動の連続性を実現するマルチコンピュータ方法および装置
CN101390336A (zh) 灾难恢复体系结构
TW200805941A (en) High-availability network systems
WO2012145963A1 (zh) 数据管理系统及方法
CN109861867B (zh) 一种mec业务处理方法及装置
EP2866422A1 (en) Method of operating a server system with high availability
US20190123956A1 (en) Server network interface level failover
CN102187627B (zh) 负载分担的方法及装置、宽带接入服务器系统
JPH09259096A (ja) ネットワーク高信頼化方式及びシステム
EP3474501B1 (en) Network device stacking
CN104125079A (zh) 一种确定双机热备份配置信息的方法及装置
TW200836525A (en) Selective passive address resolution learning
JP3498666B2 (ja) データ転送装置、データ転送システム、データ転送方法及び記憶媒体

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170725