CN109639640B - 消息发送方法和装置 - Google Patents

消息发送方法和装置 Download PDF

Info

Publication number
CN109639640B
CN109639640B CN201811331220.7A CN201811331220A CN109639640B CN 109639640 B CN109639640 B CN 109639640B CN 201811331220 A CN201811331220 A CN 201811331220A CN 109639640 B CN109639640 B CN 109639640B
Authority
CN
China
Prior art keywords
node
message
control
master
leaving
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.)
Active
Application number
CN201811331220.7A
Other languages
English (en)
Other versions
CN109639640A (zh
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.)
Hangzhou Dt Dream Technology Co Ltd
Original Assignee
Hangzhou Dt Dream Technology Co Ltd
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 Hangzhou Dt Dream Technology Co Ltd filed Critical Hangzhou Dt Dream Technology Co Ltd
Priority to CN201811331220.7A priority Critical patent/CN109639640B/zh
Publication of CN109639640A publication Critical patent/CN109639640A/zh
Application granted granted Critical
Publication of CN109639640B publication Critical patent/CN109639640B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1013Network architectures, gateways, control or user entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提出一种消息发送方法和装置,应用于部署集中管控模型的集群中,该消息发送方法包括:资源区中的主节点监测到有节点离开;如果主节点与控制节点之间的网络不可达,或者主节点未收到控制节点的确认消息,并且主节点向控制节点发送节点离开消息的次数达到预设阈值,则主节点向相邻非主节点发送节点离开消息,以使相邻非主节点在与控制节点之间的网络可达时,将节点离开消息发送给控制节点。本发明可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,从而控制节点可以通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。

Description

消息发送方法和装置
技术领域
本发明涉及通信技术领域,尤其涉及一种消息发送方法和装置。
背景技术
集群高可用性(High Availability;以下简称:HA)是指通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。
目前主流的集群HA软件使用监测(corosync)软件和资源管理(pacemaker)软件的组合。监测软件实现节点关系管理和通信服务的功能,资源管理软件实现资源管理的功能。部署集中管控模型的集群,可以划分为资源区、网络以及控制(controller)节点三个部分,在资源区,每一个主机(host)均需要部署监测和资源管理软件。资源区内的资源管理选择一个节点作为资源区的主节点(master节点)。如果master节点在资源区内监测到某一节点离开,则由master节点负责向controller节点发送节点离开消息。controller节点收到节点离开消息后,查找到其他有闲置资源的主机之后,将上述节点离开消息发送到有闲置资源的主机进行故障恢复。
但是,当资源区的主节点监测到某一个节点离开,且主节点与controller节点之间的网络不可达,而资源区内又存在有闲置资源的主机时,离开节点上的资源无法进行故障恢复。
发明内容
本发明的目的旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的第一个目的在于提出一种消息发送方法。该方法可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,从而控制节点可以通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
本发明的第二个目的在于提出一种消息发送装置。
为了实现上述目的,本发明第一方面实施例的消息发送方法,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述方法包括:所述资源区中的主节点监测到所述资源区中有节点离开;如果所述主节点与所述控制节点之间的网络不可达,或者所述主节点向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且所述主节点向所述控制节点发送所述节点离开消息的次数达到预设阈值,则所述主节点向所述主节点的相邻非主节点发送节点离开消息,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,以使所述主节点的相邻非主节点在与所述控制节点之间的网络可达时,将所述节点离开消息发送给所述控制节点。
本发明实施例的消息发送方法中,资源区中的主节点监测到上述资源区中有节点离开之后,如果主节点与控制节点之间的网络不可达,或者主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且主节点向控制节点发送节点离开消息的次数达到预设阈值,则主节点向上述主节点的相邻非主节点发送节点离开消息,以使上述主节点的相邻非主节点在与控制节点之间的网络可达时,将节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
为了实现上述目的,本发明第二方面实施例的消息发送方法,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述方法包括:所述资源区中主节点的相邻非主节点接收所述主节点发送的节点离开消息,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,所述节点离开消息是所述主节点监测到所述资源区中有节点离开,所述主节点与所述控制节点之间的网络不可达,或者所述主节点向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且所述主节点向所述控制节点发送所述节点离开消息的次数达到预设阈值之后发送的;如果所述主节点的相邻非主节点与所述控制节点之间的网络可达,则所述主节点的相邻非主节点将所述节点离开消息发送给所述控制节点。
本发明实施例的消息发送方法中,资源区中主节点的相邻非主节点接收主节点发送的节点离开消息之后,如果上述主节点的相邻非主节点与控制节点之间的网络可达,则主节点的相邻非主节点将上述节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
为了实现上述目的,本发明第三方面实施例的消息发送装置,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述消息发送装置设置于所述至少两个节点的主节点中,所述消息发送装置包括:监测模块,用于监测所述资源区中是否有节点离开;发送模块,用于当所述监测模块监测到所述资源区中有节点离开时,如果所述主节点与所述控制节点之间的网络不可达,或者所述主节点向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且所述主节点向所述控制节点发送所述节点离开消息的次数达到预设阈值,则向所述主节点的相邻非主节点发送节点离开消息,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,以使所述主节点的相邻非主节点在与所述控制节点之间的网络可达时,将所述节点离开消息发送给所述控制节点。
上述消息发送装置中,监测模块监测到上述资源区中有节点离开之后,如果主节点与控制节点之间的网络不可达,或者主节点向控制节点发送节点离开消息后未收到控制节点针对上述节点离开消息的确认消息,并且主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,则发送模块向上述主节点的相邻非主节点发送节点离开消息,以使上述主节点的相邻非主节点在与控制节点之间的网络可达时,将节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
为了实现上述目的,本发明第四方面实施例的消息发送装置,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述消息发送装置设置于所述至少两个节点中与主节点相邻的非主节点中,所述消息发送装置包括:接收模块,用于接收所述主节点发送的节点离开消息,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,所述节点离开消息是所述主节点监测到所述资源区中有节点离开,所述主节点与所述控制节点之间的网络不可达,或者所述主节点向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且所述主节点向所述控制节点发送所述节点离开消息的次数达到预设阈值之后发送的;发送模块,用于当所述主节点的相邻非主节点与所述控制节点之间的网络可达时,将所述节点离开消息发送给所述控制节点。
上述消息发送装置中,接收模块接收主节点发送的节点离开消息之后,如果上述主节点的相邻非主节点与控制节点之间的网络可达,则发送模块将上述节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明消息发送方法一个实施例的流程图;
图2为本发明消息发送方法另一个实施例的流程图;
图3为本发明消息发送方法再一个实施例的流程图;
图4为本发明部署集中管控模型的集群一个实施例的架构图;
图5为本发明消息发送装置一个实施例的结构示意图;
图6为本发明消息发送装置另一个实施例的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1为本发明消息发送方法一个实施例的流程图,上述消息发送方法应用于部署集中管控模型的集群中,上述集群包括资源区和控制节点,上述资源区中包括至少两个节点,上述至少两个节点与上述控制节点通过网络连接。资源区中的每一个节点均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点)。
如图1所示,该消息发送方法可以包括:
步骤101,资源区中的主节点监测到上述资源区中有节点离开。
步骤102,如果上述主节点与上述控制节点之间的网络不可达,或者上述主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,则主节点向上述主节点的相邻非主节点发送节点离开消息,上述节点离开消息包括离开节点的基本信息和上述离开节点上的资源,以使主节点的相邻非主节点在与上述控制节点之间的网络可达时,将上述节点离开消息发送给控制节点。
也就是说,当资源区中的主节点监测到上述资源区中有节点离开时,如果上述主节点与上述控制节点之间的网络不可达,这时主节点无法向控制节点发送节点离开消息;或者主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,这两种情形下,主节点可以将节点离开消息发送给主节点的相邻非主节点,如果主节点的相邻非主节点与上述控制节点之间的网络可达,则主节点的相邻非主节点可以将上述节点离开消息发送给控制节点,而如果主节点的相邻非主节点与上述控制节点之间的网络也不可达,则主节点的相邻非主节点可以将上述节点离开消息继续发送给相邻的下一非主节点,以此类推,直到接收到节点离开消息的非主节点与控制节点之间的网络可达,则与控制节点之间的网络可达的非主节点就可以将接收到的节点离开消息发送给控制节点。
其中,当主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息时,说明上述节点离开消息发送失败。此时主节点需要重新向控制节点发送节点离开消息,这时,如果主节点向控制节点发送节点离开消息的次数达到预设阈值,主节点可以将上述节点离开消息发送给主节点的相邻非主节点。
上述预设阈值可以在具体实现时,根据实现需求和/或系统性能等自行设定,本实施例对上述预设阈值的大小不作限定,举例来说,上述预设阈值可以为5。
在网络最坏的情况下,如果上述资源区中所有节点与控制节点之间的网络均不可达,上述主节点发出的上述节点离开消息最终被发送回主节点,也就是说,当上述资源区中所有节点与控制节点之间的网络均不可达时,主节点发出的节点离开消息在被发送了一圈之后又被传送回主节点。这时,在经过预定时长之后,主节点重新向上述主节点的相邻非主节点发送节点离开消息。具体地,主节点可以设置一个定时器,在定时器到时之后,主节点重新发送节点离开消息,确保在资源区中有节点与控制节点之间的网络可达时,可以及时将节点离开消息发送给控制节点。其中,上述预定时长的长短可以在具体实现时自行设定,本实施例对此不作限定,举例来说,上述预定时长可以为10秒。
由于资源区内监测进程支持可靠的通信服务,因此主节点向上述主节点的相邻非主节点发送节点离开消息可以为:主节点的资源管理进程将上述节点离开消息发送给上述主节点的监测进程,上述主节点的监测进程将上述节点离开消息发送给上述主节点的相邻非主节点的监测进程。
上述消息发送方法中,资源区中的主节点监测到上述资源区中有节点离开之后,如果主节点与控制节点之间的网络不可达,或者主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且主节点向上述控制节点发送所述节点离开消息的次数达到预设阈值,则主节点向上述主节点的相邻非主节点发送节点离开消息,以使上述主节点的相邻非主节点在与控制节点之间的网络可达时,将节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
图2为本发明消息发送方法另一个实施例的流程图,上述消息发送方法应用于部署集中管控模型的集群中,上述集群包括资源区和控制节点,上述资源区中包括至少两个节点,上述至少两个节点与上述控制节点通过网络连接。资源区中的每一个节点均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点)。
如图2所示,上述消息发送方法可以包括:
步骤201,上述资源区中主节点的相邻非主节点接收主节点发送的节点离开消息,上述节点离开消息包括离开节点的基本信息和上述离开节点上的资源,上述节点离开消息是主节点监测到上述资源区中有节点离开,上述主节点与控制节点之间的网络不可达,或者主节点向上述控制节点发送节点离开消息后未收到控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值之后发送的。
由于资源区内监测进程支持可靠的通信服务,因此步骤201可以为:主节点的相邻非主节点中的监测进程接收上述主节点的监测进程发送的节点离开消息。
步骤202,如果上述主节点的相邻非主节点与上述控制节点之间的网络可达,则上述主节点的相邻非主节点将上述节点离开消息发送给上述控制节点。
具体地,上述主节点的相邻非主节点将上述节点离开消息发送给上述控制节点可以为:上述主节点的相邻非主节点的监测进程将上述节点离开消息发送给上述主节点的相邻非主节点的资源管理进程,上述主节点的相邻非主节点的资源管理进程将上述节点离开消息发送给上述控制节点。
图3为本发明消息发送方法再一个实施例的流程图,如图3所示,步骤201之后,还可以包括:
步骤301,如果上述主节点的相邻非主节点与控制节点之间的网络不可达,则上述主节点的相邻非主节点将上述节点离开消息发送给相邻的下一非主节点,以此类推,直至接收到上述节点离开消息的非主节点与上述控制节点之间的网络可达,则与上述控制节点之间的网络可达的非主节点将接收到的上述节点离开消息发送给上述控制节点。
具体地,主节点的相邻非主节点中的监测进程接收上述主节点的监测进程发送的节点离开消息之后,将节点离开消息发送给主节点的相邻非主节点中的资源管理进程,这时,由于上述主节点的相邻非主节点与控制节点之间的网络不可达,因此主节点的相邻非主节点中的资源管理进程无法将节点离开消息发送给控制节点,因此主节点的相邻非主节点中的资源管理进程将节点离开消息发送回主节点的相邻非主节点中的监测进程,由主节点的相邻非主节点中的监测进程将节点离开消息发送给相邻的下一非主节点的监测进程。
上述消息发送方法中,资源区中主节点的相邻非主节点接收主节点发送的节点离开消息之后,如果上述主节点的相邻非主节点与控制节点之间的网络可达,则主节点的相邻非主节点将上述节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
本发明图1~图3所示实施例提供的消息发送方法应用于部署集中管控模型的集群中,上述集群的架构图可以如图4所示,图4为本发明部署集中管控模型的集群一个实施例的架构图,参见图4,图4所示的集群包括资源区和控制节点,上述资源区中包括N个节点,N≥2,图4中的host1~hostN即为资源区中的N个节点,host1~hostN与上述控制节点通过网络连接。资源区中的host1~hostN均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点),这里假设host1作为资源区的master节点,并假设host1~hostI-1与控制节点之间的网络不可达,hostI~hostN与控制节点之间的网络可达,hostN是有闲置资源的主机。如果master节点监测到资源区中某一节点离开,且master节点与控制节点之间的网络不可达,则host1节点向host2节点发送节点离开消息。host2节点收到节点离开消息后,host2节点与控制节点之间的网络也不可达,则host2节点继续将节点离开消息发送给host3节点;参见图4中的虚线①,节点离开消息的发送过程为:host1节点的资源管理进程将节点离开消息发送给host1节点的监测进程,host1节点的监测进程将节点离开消息发送给host2节点的监测进程,host2节点的监测进程将节点离开消息发送给host2节点的资源管理进程,由于host2节点与控制节点之间的网络也不可达,于是host2节点的资源管理进程将节点离开消息返回给host2节点的监测进程,由host2节点的监测进程继续将节点离开消息发送给host3节点的监测进程。
以此类推,当hostI节点收到节点离开消息,由于hostI节点与控制节点之间的网络是可达的,于是hostI节点的资源管理进程向controller节点发送节点离开的消息,消息的发送过程如图4中虚线①所示。控制节点接收到节点离开消息之后,找到有闲置资源和网络可达的节点,将节点离开消息传送给hostN节点,如图4中实线②所示。hostN节点接收到节点离开消息后,对离开节点上的资源进行故障恢复。图4中,节点离开消息的传送顺序为:host1->host2->...hostI->控制节点->hostN
在网络最坏的情况,资源区内所有节点与控制节点之间的网络均不可达,则主节点(host1)发出的节点离开消息在被发送了一圈之后又被传回给主节点。此时主节点可以设置一个定时器,在定时器到时之后,主节点重新发送节点离开消息,确保在资源区中有节点与控制节点之间的网络可达时,可以及时将节点离开消息发送给控制节点。其中,上述定时器的定时时长的长短可以在具体实现时自行设定,本实施例对此不作限定,举例来说,上述定时器的定时时长可以为10秒。
本发明图1~图3所示实施例提供的消息发送方法按照令牌环的方式依次传递节点离开消息,在没有增加网络的负载的情况下,可以最大可能地将节点离开消息发送给控制节点,确保离开节点上的资源得以进行故障恢复,进而可以提高集群的高可用性。
图5为本发明消息发送装置一个实施例的结构示意图,上述消息发送装置应用于部署集中管控模型的集群中,上述集群包括资源区和控制节点,上述资源区中包括至少两个节点,上述至少两个节点与上述控制节点通过网络连接。资源区中的每一个节点均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点)。本实施例中,上述消息发送装置设置于上述至少两个节点的主节点中。
如图5所示,上述消息发送装置可以包括:监测模块51和发送模块52;
监测模块51,用于监测上述资源区中是否有节点离开;
发送模块52,用于当监测模块51监测到上述资源区中有节点离开时,如果主节点与控制节点之间的网络不可达,或者上述主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,则向上述主节点的相邻非主节点发送节点离开消息,上述节点离开消息包括离开节点的基本信息和上述离开节点上的资源,以使上述主节点的相邻非主节点在与上述控制节点之间的网络可达时,将上述节点离开消息发送给上述控制节点。
也就是说,当监测模块51监测到上述资源区中有节点离开时,如果主节点与上述控制节点之间的网络不可达,则发送模块52无法向控制节点发送节点离开消息;或者主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,这两种情形下,发送模块52可以将节点离开消息发送给主节点的相邻非主节点,如果主节点的相邻非主节点与上述控制节点之间的网络可达,则主节点的相邻非主节点可以将上述节点离开消息发送给控制节点,而如果主节点的相邻非主节点与上述控制节点之间的网络也不可达,则主节点的相邻非主节点可以将上述节点离开消息继续发送给相邻的下一非主节点,以此类推,直到接收到节点离开消息的非主节点与控制节点之间的网络可达,则与控制节点之间的网络可达的非主节点就可以将接收到的节点离开消息发送给控制节点。
其中,当主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息时,说明上述节点离开消息发送失败。此时主节点需要重新向控制节点发送节点离开消息,这时,如果主节点向控制节点发送节点离开消息的次数达到预设阈值,主节点可以将上述节点离开消息发送给主节点的相邻非主节点。
上述预设阈值可以在具体实现时,根据实现需求和/或系统性能等自行设定,本实施例对上述预设阈值的大小不作限定,举例来说,上述预设阈值可以为5。
进一步地,发送模块52还用于当上述资源区中所有节点与控制节点之间的网络均不可达时,主节点发出的上述节点离开消息最终被发送回上述主节点,则在经过预定时长之后,重新向上述主节点的相邻非主节点发送节点离开消息。也就是说,在网络最坏的情况下,如果上述资源区中所有节点与控制节点之间的网络均不可达,则发送模块52发出的节点离开消息在被发送了一圈之后又被传送回主节点,这时,在经过预定时长之后,发送模块52可以重新向上述主节点的相邻非主节点发送节点离开消息。具体地,可以设置一个定时器,在定时器到时之后,发送模块52重新发送节点离开消息,确保在资源区中有节点与控制节点之间的网络可达时,可以及时将节点离开消息发送给控制节点。其中,上述预定时长的长短可以在具体实现时自行设定,本实施例对此不作限定,举例来说,上述预定时长可以为10秒。
本实施例中,由于资源区内监测支持可靠的通信服务,因此发送模块52,具体用于通过上述主节点的资源管理进程将上述节点离开消息发送给上述主节点的监测进程,再由上述主节点的监测进程将上述节点离开消息发送给上述主节点的相邻非主节点的监测进程。
上述消息发送装置中,监测模块51监测到上述资源区中有节点离开之后,如果主节点与控制节点之间的网络不可达,或者上述主节点向控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,则发送模块52向上述主节点的相邻非主节点发送节点离开消息,以使上述主节点的相邻非主节点在与控制节点之间的网络可达时,将节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
图6为本发明消息发送装置另一个实施例的结构示意图,应用于部署集中管控模型的集群中,上述集群包括资源区和控制节点,上述资源区中包括至少两个节点,上述至少两个节点与上述控制节点通过网络连接。资源区中的每一个节点均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点)。上述消息发送装置设置于上述至少两个节点中与主节点相邻的非主节点中。
如图6所示,上述消息发送装置可以包括:接收模块61和发送模块62;
其中,接收模块61,用于接收上述主节点发送的节点离开消息,上述节点离开消息包括离开节点的基本信息和上述离开节点上的资源,上述节点离开消息是主节点监测到上述资源区中有节点离开,上述主节点与上述控制节点之间的网络不可达,或者上述主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值之后发送的;由于资源区内监测进程支持可靠的通信服务,因此本实施例中,接收模块61,具体用于通过上述主节点的相邻非主节点中的监测进程接收上述主节点的监测进程发送的节点离开消息。
发送模块62,用于当上述主节点的相邻非主节点与上述控制节点之间的网络可达时,将上述节点离开消息发送给上述控制节点。本实施例中,发送模块62,具体用于通过上述主节点的相邻非主节点的监测进程将上述节点离开消息发送给上述主节点的相邻非主节点的资源管理进程,再由上述主节点的相邻非主节点的资源管理进程将上述节点离开消息发送给上述控制节点。
进一步地,发送模块62,还用于当上述主节点的相邻非主节点与上述控制节点之间的网络不可达时,将上述节点离开消息发送给相邻的下一非主节点,以此类推,直至接收到上述节点离开消息的非主节点与上述控制节点之间的网络可达,则与上述控制节点之间的网络可达的非主节点将接收到的节点离开消息发送给上述控制节点。
具体地,接收模块61通过主节点的相邻非主节点中的监测进程接收上述主节点的监测进程发送的节点离开消息之后,发送模块62通过监测进程将节点离开消息发送给主节点的相邻非主节点中的资源管理进程,这时,由于上述主节点的相邻非主节点与控制节点之间的网络不可达,因此发送模块62无法通过主节点的相邻非主节点中的资源管理进程将节点离开消息发送给控制节点,因此发送模块62通过主节点的相邻非主节点中的资源管理进程将节点离开消息发送回主节点的相邻非主节点中的监测进程,由主节点的相邻非主节点中的监测进程将节点离开消息发送给相邻的下一非主节点的监测进程。
上述消息发送装置中,接收模块61接收主节点发送的节点离开消息之后,如果上述主节点的相邻非主节点与控制节点之间的网络可达,则发送模块62将上述节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(Programmable Gate Array;以下简称:PGA),现场可编程门阵列(Field ProgrammableGate Array;以下简称:FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (8)

1.一种消息发送方法,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,其特征在于,所述方法包括:
所述资源区中的主节点监测到所述资源区中有节点离开;
如果所述主节点与所述控制节点之间的网络不可达,则所述主节点的资源管理进程将所述节点离开消息发送给所述主节点的监测进程;
所述主节点的监测进程将所述节点离开消息发送给所述主节点的相邻非主节点的监测进程,以使所述相邻非主节点的监测进程将所述节点离开消息发送给所述相邻非主节点的资源管理进程,其中,
如果所述主节点的相邻非主节点与所述控制节点之间的网络不可达,则所述主节点的相邻非主节点的资源管理进程将所述节点离开消息发送给所述主节点的相邻非主节点的监测进程,以使所述相邻非主节点的监测进程将所述节点离开消息发送给所述相邻的下一非主节点的监测进程,以此类推,直至接收到所述节点离开消息的非主节点与所述控制节点之间的网络可达,则与所述控制节点之间的网络可达的非主节点的资源管理进程将接收到的所述节点离开消息发送给所述控制节点,其中,
所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,以使网络可达的非主节点将所述节点离开消息发送给所述控制节点。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果所述资源区中所有节点与所述控制节点之间的网络均不可达,所述主节点发出的所述节点离开消息最终被发送回所述主节点,则在经过预定时长之后,所述主节点重新向所述主节点的相邻非主节点发送节点离开消息。
3.如权利要求1所述的方法,其特征在于,在所述主节点的资源管理进程将所述节点离开消息发送给所述主节点的监测进程之前,还包括:
所述主节点向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且所述主节点向所述控制节点发送所述节点离开消息的次数达到预设阈值。
4.一种消息发送方法,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,其特征在于,所述方法包括:
所述资源区中主节点的相邻非主节点通过对应的监测进程接收所述主节点的监测进程发送的节点离开消息,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,所述节点离开消息是所述主节点监测到所述资源区中有节点离开,所述主节点与所述控制节点之间的网络不可达之后发送的;
如果所述主节点的相邻非主节点与所述控制节点之间的网络不可达,则所述主节点的相邻非主节点的资源管理进程,将所述节点离开消息发送给所述主节点的相邻非主节点的监测进程,以便所述相邻的主节点的相邻非主节点的监测进程将所述节点离开消息发送给下一非主节点的监测进程,并由所述下一非主节点的监测进程将所述节点离开消息发送至所述下一非主节点的资源管理进程,以此类推,直至接收到所述节点离开消息的非主节点与所述控制节点之间的网络可达时,与所述控制节点之间的网络可达的非主节点的资源管理进程将接收到的所述节点离开消息发送给所述控制节点。
5.一种消息发送装置,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述消息发送装置设置于所述至少两个节点的主节点中,其特征在于,所述消息发送装置包括:
监测模块,用于监测所述资源区中是否有节点离开;
发送模块,用于当所述监测模块监测到所述资源区中有节点离开时,如果所述主节点与所述控制节点之间的网络不可达,则通过资源管理进程将所述节点离开消息发送给所述主节点的监测进程,所述主节点的监测进程将所述节点离开消息发送给所述主节点的相邻非主节点的监测进程,以使所述相邻非主节点的监测进程将所述节点离开消息发送给所述相邻非主节点的资源管理进程,其中,如果所述主节点的相邻非主节点与所述控制节点之间的网络不可达,则所述主节点的相邻非主节点的资源管理进程将所述节点离开消息发送给所述主节点的相邻非主节点的监测进程,以使所述相邻非主节点的监测进程将所述节点离开消息发送给所述相邻的下一非主节点的监测进程,以此类推,直至接收到所述节点离开消息的非主节点与所述控制节点之间的网络可达时,与所述控制节点之间的网络可达的非主节点的资源管理进程将接收到的所述节点离开消息发送给所述控制节点,其中,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,以使网络可达的非主节点将所述节点离开消息发送给所述控制节点。
6.根据权利要求5所述的装置,其特征在于,
所述发送模块,还用于当所述资源区中所有节点与所述控制节点之间的网络均不可达时,所述主节点发出的所述节点离开消息最终被发送回所述主节点,则在经过预定时长之后,重新向所述主节点的相邻非主节点发送节点离开消息。
7.根据权利要求5所述的装置,其特征在于,所述发送模块在资源管理进程将所述节点离开消息发送给所述主节点的监测进程之前,还用于确定向所述控制节点发送节点离开消息后未收到所述控制节点针对所述节点离开消息的确认消息,并且向所述控制节点发送所述节点离开消息的次数达到预设阈值。
8.一种消息发送装置,应用于部署集中管控模型的集群中,所述集群包括资源区和控制节点,所述资源区中包括至少两个节点,所述至少两个节点与所述控制节点通过网络连接,所述消息发送装置设置于所述至少两个节点中与主节点相邻的非主节点中,其特征在于,所述消息发送装置包括:
接收模块,用于通过对应的监测进程接收所述主节点的监测进程发送的节点离开消息,并将所述节点离开消息发送至资源管理进程,所述节点离开消息包括离开节点的基本信息和所述离开节点上的资源,所述节点离开消息是所述主节点监测到所述资源区中有节点离开,所述主节点与所述控制节点之间的网络不可达之后发送的;
发送模块,用于在所述主节点的相邻非主节点与所述控制节点之间的网络不可达时,通过资源管理进程将所述节点离开消息发送给下一非主节点的监测进程,以使所述下一非主节点的监测进程将所述节点离开消息发送给下一非主节点的资源管理进程,以此类推,直至接收到所述节点离开消息的非主节点与所述控制节点之间的网络可达,控制所述控制节点之间的网络可达的非主节点的资源管理进程将接收到的所述节点离开消息发送给所述控制节点。
CN201811331220.7A 2015-10-28 2015-10-28 消息发送方法和装置 Active CN109639640B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811331220.7A CN109639640B (zh) 2015-10-28 2015-10-28 消息发送方法和装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510714154.1A CN105407087B (zh) 2015-10-28 2015-10-28 消息发送方法和装置
CN201811331220.7A CN109639640B (zh) 2015-10-28 2015-10-28 消息发送方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201510714154.1A Division CN105407087B (zh) 2015-10-28 2015-10-28 消息发送方法和装置

Publications (2)

Publication Number Publication Date
CN109639640A CN109639640A (zh) 2019-04-16
CN109639640B true CN109639640B (zh) 2020-07-14

Family

ID=55472342

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201510714154.1A Active CN105407087B (zh) 2015-10-28 2015-10-28 消息发送方法和装置
CN201811331220.7A Active CN109639640B (zh) 2015-10-28 2015-10-28 消息发送方法和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201510714154.1A Active CN105407087B (zh) 2015-10-28 2015-10-28 消息发送方法和装置

Country Status (1)

Country Link
CN (2) CN105407087B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391236B (zh) * 2017-09-15 2020-03-06 郑州云海信息技术有限公司 一种集群块存储实现方法和装置
CN107656847A (zh) * 2017-09-19 2018-02-02 郑州云海信息技术有限公司 基于分布式集群的节点管理方法、系统、装置及存储介质
CN112954133B (zh) * 2021-01-20 2023-03-14 浙江大华技术股份有限公司 同步节点时间的方法、装置、电子装置和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476178A (zh) * 2003-07-08 2004-02-18 大唐移动通信设备有限公司 通信系统中实现高可用性(ha)的装置和方法
CN101859480A (zh) * 2010-04-29 2010-10-13 顾翠红 电器无线控制网络
WO2011020367A1 (zh) * 2009-08-20 2011-02-24 中兴通讯股份有限公司 基于cdn的节点主备用控制器切换方法及cdn网络
CN102769673A (zh) * 2012-07-25 2012-11-07 楚云汉智武汉网络存储系统有限公司 一种适应于大规模存储集群的失效检测方法
CN103118084A (zh) * 2013-01-21 2013-05-22 浪潮(北京)电子信息产业有限公司 一种主节点的选举方法及节点
CN104581954A (zh) * 2013-10-28 2015-04-29 株式会社理光 信道调度方法和无线通信设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101534205B (zh) * 2008-03-11 2011-12-07 中国网通集团宽带业务应用国家工程实验室有限公司 应用层组播网络维护方法、终端和系统
CN101291337B (zh) * 2008-05-30 2012-11-07 同济大学 一种网格资源管理系统及管理方法
CN101505272B (zh) * 2009-03-02 2011-04-20 浙江理工大学 一种基于p2p的查找有关节点子集合的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476178A (zh) * 2003-07-08 2004-02-18 大唐移动通信设备有限公司 通信系统中实现高可用性(ha)的装置和方法
WO2011020367A1 (zh) * 2009-08-20 2011-02-24 中兴通讯股份有限公司 基于cdn的节点主备用控制器切换方法及cdn网络
CN101859480A (zh) * 2010-04-29 2010-10-13 顾翠红 电器无线控制网络
CN102769673A (zh) * 2012-07-25 2012-11-07 楚云汉智武汉网络存储系统有限公司 一种适应于大规模存储集群的失效检测方法
CN103118084A (zh) * 2013-01-21 2013-05-22 浪潮(北京)电子信息产业有限公司 一种主节点的选举方法及节点
CN104581954A (zh) * 2013-10-28 2015-04-29 株式会社理光 信道调度方法和无线通信设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Pacemaker 的FreeSWITCH 高可用解决方案;曾晓娟;《电脑知识与技术》;20140831;全文 *

Also Published As

Publication number Publication date
CN109639640A (zh) 2019-04-16
CN105407087B (zh) 2019-01-01
CN105407087A (zh) 2016-03-16

Similar Documents

Publication Publication Date Title
CN110134518B (zh) 一种提高大数据集群多节点应用高可用性的方法及系统
CN110275680B (zh) 一种双控双活存储系统
CN102394914A (zh) 集群脑裂处理方法和装置
CN109639640B (zh) 消息发送方法和装置
US20120281525A1 (en) METHOD AND SYSTEM FOR PRIORITY BASED (1:1)n ETHERNET PROTECTION
CN103036719A (zh) 一种基于主备集群服务器的跨地区服务容灾方法及装置
US11540284B2 (en) Data transmission method and device
WO2019128670A1 (zh) 用于在分布式系统中使管理能力自恢复的方法和装置
KR102617119B1 (ko) 셀 핸드오버 처리 방법, 장치 및 기기
WO2016065552A1 (zh) 一种心跳周期的设置方法及终端
CN110943878A (zh) 心跳包传输方法、终端及具有存储功能的装置
CN101237314A (zh) 一种保障复制业务传输的方法及接入设备
JP2010251838A (ja) アクセスゲートウェイ装置及びアクセスゲートウェイ装置におけるセッション情報複製方法
US9843491B2 (en) Network element in network management system, network management system, and network management method
CN102231126B (zh) 一种实现多核处理器中核间备份的方法及系统
WO2021254466A1 (zh) 一种配置边缘侧设备的方法、装置及系统
KR101358995B1 (ko) 고가용성 관리 방법 및 시스템
CN102820992A (zh) 数据包的处理方法和装置
CN116055297A (zh) 分布式存储节点宕机后的软硬件结合的自愈方法及系统
EP2953299A1 (en) Protection switching method, system and node
US20130083669A1 (en) Fault management traffic reduction in heterogeneous networks
CN107888393B (zh) 一种非对称冗余通信链路中生成全连接集合的方法
CN110601972A (zh) 一种报文传输方法、装置及智能弹性架构系统
CN118450161B (zh) 一种直播视频数据存储服务的管理方法及系统
CN104796228B (zh) 一种信息传输的方法、装置及系统

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
GR01 Patent grant
GR01 Patent grant