消息发送方法和装置的制造方法_3

文档序号:9648994阅读:来源:国知局
点离开消息发送给上述控制节点。
[0041]图3为本发明消息发送方法再一个实施例的流程图,如图3所示,步骤201之后,还可以包括:
[0042]步骤301,如果上述主节点的相邻非主节点与控制节点之间的网络不可达,则上述主节点的相邻非主节点将上述节点离开消息发送给相邻的下一非主节点,以此类推,直至接收到上述节点离开消息的非主节点与上述控制节点之间的网络可达,则与上述控制节点之间的网络可达的非主节点将接收到的上述节点离开消息发送给上述控制节点。
[0043]具体地,主节点的相邻非主节点中的监测进程接收上述主节点的监测进程发送的节点离开消息之后,将节点离开消息发送给主节点的相邻非主节点中的资源管理进程,这时,由于上述主节点的相邻非主节点与控制节点之间的网络不可达,因此主节点的相邻非主节点中的资源管理进程无法将节点离开消息发送给控制节点,因此主节点的相邻非主节点中的资源管理进程将节点离开消息发送回主节点的相邻非主节点中的监测进程,由主节点的相邻非主节点中的监测进程将节点离开消息发送给相邻的下一非主节点的监测进程。
[0044]上述消息发送方法中,资源区中主节点的相邻非主节点接收主节点发送的节点离开消息之后,如果上述主节点的相邻非主节点与控制节点之间的网络可达,则主节点的相邻非主节点将上述节点离开消息发送给上述控制节点,从而可以在资源区中的主节点与控制节点之间的网络不可达时,最大可能地将节点离开消息发送到控制节点,以便控制节点通知其他有闲置资源的节点对离开节点上的资源进行故障恢复,进而可以提高集群的高可用性。
[0045]本发明图1?图3所示实施例提供的消息发送方法应用于部署集中管控模型的集群中,上述集群的架构图可以如图4所示,图4为本发明部署集中管控模型的集群一个实施例的架构图,参见图4,图4所示的集群包括资源区和控制节点,上述资源区中包括N个节点,N彡2,图4中的host^ host #卩为资源区中的N个节点,host:?host N与上述控制节点通过网络连接。资源区中的host1、host N均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点),这里假设hostjt为资源区的master节点,并假设host1、host ι:与控制节点之间的网络不可达,host工?host N与控制节点之间的网络可达,1105^是有闲置资源的主机。如果master节点监测到资源区中某一节点离开,且master节点与控制节点之间的网络不可达,则hostif点向host 2节点发送节点离开消息。host2节点收到节点离开消息后,host 2节点与控制节点之间的网络也不可达,则host2节点继续将节点离开消息发送给host 3节点;参见图4中的虚线①,节点离开消息的发送过程为-hostif点的资源管理进程将节点离开消息发送给host:节点的监测进程,host:节点的监测进程将节点离开消息发送给host 2节点的监测进程,host 2节点的监测进程将节点离开消息发送给ho s t2节点的资源管理进程,由于ho s 12节点与控制节点之间的网络也不可达,于是host2f点的资源管理进程将节点离开消息返回给host2节点的监测进程,由host#点的监测进程继续将节点离开消息发送给host 3节点的监测进程。
[0046]以此类推,当hosi^节点收到节点离开消息,由于host工节点与控制节点之间的网络是可达的,于是hosi^f点的资源管理进程向controller节点发送节点离开的消息,消息的发送过程如图4中虚线①所示。控制节点接收到节点离开消息之后,找到有闲置资源和网络可达的节点,将节点离开消息传送给11081^节点,如图4中实线②所示。11081^节点接收到节点离开消息后,对离开节点上的资源进行故障恢复。图4中,节点离开消息的传送顺序为 -hostfShost;;-〉...host〗-〉控制节点 _>hostN。
[0047]在网络最坏的情况,资源区内所有节点与控制节点之间的网络均不可达,则主节点(host》发出的节点离开消息在被发送了一圈之后又被传回给主节点。此时主节点可以设置一个定时器,在定时器到时之后,主节点重新发送节点离开消息,确保在资源区中有节点与控制节点之间的网络可达时,可以及时将节点离开消息发送给控制节点。其中,上述定时器的定时时长的长短可以在具体实现时自行设定,本实施例对此不作限定,举例来说,上述定时器的定时时长可以为10秒。
[0048]本发明图1?图3所示实施例提供的消息发送方法按照令牌环的方式依次传递节点离开消息,在没有增加网络的负载的情况下,可以最大可能地将节点离开消息发送给控制节点,确保离开节点上的资源得以进行故障恢复,进而可以提高集群的高可用性。
[0049]图5为本发明消息发送装置一个实施例的结构示意图,上述消息发送装置应用于部署集中管控模型的集群中,上述集群包括资源区和控制节点,上述资源区中包括至少两个节点,上述至少两个节点与上述控制节点通过网络连接。资源区中的每一个节点均需要部署监测和资源管理软件,资源区内的资源管理软件选择一个节点作为资源区的主节点(master节点)。本实施例中,上述消息发送装置设置于上述至少两个节点的主节点中。
[0050]如图5所示,上述消息发送装置可以包括:监测模块51和发送模块52 ;
[0051]监测模块51,用于监测上述资源区中是否有节点离开;
[0052]发送模块52,用于当监测模块51监测到上述资源区中有节点离开时,如果主节点与控制节点之间的网络不可达,或者上述主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,则向上述主节点的相邻非主节点发送节点离开消息,上述节点离开消息包括离开节点的基本信息和上述离开节点上的资源,以使上述主节点的相邻非主节点在与上述控制节点之间的网络可达时,将上述节点离开消息发送给上述控制节点。
[0053]也就是说,当监测模块51监测到上述资源区中有节点离开时,如果主节点与上述控制节点之间的网络不可达,则发送模块52无法向控制节点发送节点离开消息;或者主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息,并且上述主节点向上述控制节点发送上述节点离开消息的次数达到预设阈值,这两种情形下,发送模块52可以将节点离开消息发送给主节点的相邻非主节点,如果主节点的相邻非主节点与上述控制节点之间的网络可达,则主节点的相邻非主节点可以将上述节点离开消息发送给控制节点,而如果主节点的相邻非主节点与上述控制节点之间的网络也不可达,则主节点的相邻非主节点可以将上述节点离开消息继续发送给相邻的下一非主节点,以此类推,直到接收到节点离开消息的非主节点与控制节点之间的网络可达,则与控制节点之间的网络可达的非主节点就可以将接收到的节点离开消息发送给控制节点。
[0054]其中,当主节点向上述控制节点发送节点离开消息后未收到上述控制节点针对上述节点离开消息的确认消息时,说明上述节点离开消息发送失败。此时主节点需要重新向控制节点发送节点离开消息,这时,如果主节点向控制节点发送节点离开消息的次数达到预设阈值,主节点可以将上述节点离开消息发送给主节点的相邻非主节点。
[0055]上述预设阈值可以在具体实现时,根据实现需求和/或系统性能等自行设定,本实施例对上述预设阈值的大小不作限定,举例来说,上述预设阈值可以为5。
[0056]进一步地,发送模块52还用于当上述资源区中所有节点与
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1