一种调度管理的方法和设备与流程

文档序号:18792082发布日期:2019-09-29 18:59阅读:168来源:国知局
一种调度管理的方法和设备与流程

本发明涉及无线通信技术领域,特别涉及一种调度管理的方法和设备。



背景技术:

弹性存储系统为用户提供自定义的共享文件存储服务,通过控制调度节点的调度算法决定由哪个共享驱动节点在其所管理的存储资源池中创建共享文件存储。

现有技术中弹性存储系统中有多个控制调度节点,如图1a所示,现有技术中弹性存储系统的管理面总体架构,可知每个控制调度节点管理所有的共享驱动节点,共享驱动节点管理有存储资源池,每个共享驱动节点管理有一个或多个存储资源池,每个存储资源池用来被创建和维护一个或多个用户自定义共享文件存储。当用户需要创建一个文件时,所有的控制调度节点都会接收到用户创建文件的请求,并通过调度算法进行文件的创建,并由共享驱动节点管理创建好的文件。

在现有技术中,管理面中的每个控制调度节点都可监控所有的共享驱动节点的状态,当有共享驱动节点故障时,所有的控制调度节点都可检测到,为了保证故障的共享驱动节点所管理的共享文件存储管理面高可用,每个控制调度节点都会执行将故障的共享驱动节点所管理的共享文件存储控制权转移给其他的状态正常的共享驱动节点,因此在进行文件的转移时,由于多个控制调度节点都进行工作,因此在进行调度时会引起脑裂问题,同时会产生调度转移结果会不一致。

综上,现有技术中在进行调度管理的过程中存在多个控制调度节点共同管理的现象,导致在进行调度管理时会产生脑裂和调度结果不一致的问题。



技术实现要素:

本发明提供一种调度管理的方法和设备,用以解决现有技术中由于多个控制调度节点共同管理,导致在进行调度管理时产生脑裂和调度结果不一致的问题。

第一方面,本发明实施例提供一种调度管理的方法,该方法包括:

控制调度节点将自身的监测信息发送给其他控制调度节点,并接收其他控制调度节点发送的监测信息后,控制调度节点根据自身的监测信息和接收到的监测信息,判断自身是否为主控制调度节点;控制调度节点根据监测信息在确定自身为主控制调度节点后检测共享驱动节点;所述控制调度节点确定有所述共享驱动节点发生故障后,将故障的共享驱动节点所管理的共享文件存储控制权转移给其他的共享驱动节点。

上述方法,在调度管理的过程中,控制调度节点将自身的监测信息发送给调度管理系统中的其他控制调度节点,同时其他控制调度节点也会发送自身的监测信息,在控制调度节点接收到其他控制调度节点发送的监测信息后,会将自身的监测信息与接收到的监测信息进行比较,判断自身是否为主控制调度节点,在确定自身为主控制调度节点后,作为主控制调度节点的控制调度节点用于检测共享驱动节点是否发生故障,在确定有发生故障的共享驱动节点后,控制调度节点会触发故障的共享驱动节点所管理的共享文件存储控制权转移给其他正常状态的共享驱动节点;本发明实施例从多个控制调度节点中选取一个控制调度节点作为主控制调度节点,主控制调度节点来检测所有的共享驱动节点,当有共享驱动节点故障的时候,触发故障的共享驱动节点所管理的共享文件存储控制权转移给其他共享驱动节点,由于不在是多个控制调度节点共同管理共享驱动节点,因此不会发生脑裂和调度管理不一致的问题。

在一种可能的实现方式中,控制调度节点根据监测信息在确定自身为主控制调度节点后,检测共享驱动节点之前,控制调度节点向其他控制调度节点发送主控制调度节点的信息,并接收其他控制调度节点发送的主控制调度节点的信息;使控制调度节点在确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息一致后,检测共享驱动节点。

在一种可能的实施方式中,控制调度节点向其他控制调度节点发送主控制调度节点的信息,并接收其他控制调度节点发送的主控制调度节点的信息之后,控制调度节点在确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息不一致后,返回将自身的监测信息发送给其他控制调度节点的步骤。

上述方法,在调度管理的过程中,控制调度节点确定自身为主控制调度节点时发送的主控制调度节点的信息,同时接收其他控制调度管理发送的确定主节控制调度管理的信息,确定多个控制调度节点选取的主控制调度管理是否一致,若选取的主控制调度管理一致,则主控制调度节点检测共享驱动节点,否则控制调度节点继续发送自身的监测信息给其他控制调度节点,进而执行选取主控制调度节点,确定主控制调度节点是否一致的步骤,保证最终确定的主控制调度节点一致后,主控制调度节点才会检测共享驱动节点,本发明实施例中保证只有一个主控制调度节点,进而不会出现脑裂和调度结果不一致的问题。

在一种可能的实施方式中,控制调度节点根据自身的监测信息和接收到的监测信息,判断自身是否为主控制调度节点之后,若控制调度节点确定自身不是主控制调度节点,则将自身确定的主控制调度节点的信息发送给其他控制调度节点,并接收其他控制调度节点确定的主控制调度节点的信息;若控制调度节点接收到的主控制调度节点的信息与发送的主控制调度节点的信息不一致,则返回将自身的监测信息发送给其他控制调度节点的步骤。

上述方法,在调度管理的过程中,控制调度节点确定自身不是主控制调度节点后,将自身确定出的主控制调度节点的信息发送给其他控制调度节点,同时接收其他控制调度管理发送的确定主节控制调度管理的信息,判断自身确定的主控制调度节点与其他控制调度节点确定的主控制调度节点是否一致,若不一致,则控制调度节点继续发送自身的监测信息给其他控制调度节点,进而执行选取主控制调度节点,确定主控制调度节点是否一致的步骤,保证只有一个主控制调度节点,进而不会出现脑裂和调度结果不一致的问题。

在一种可能的实施方式中,控制调度节点将自身的监测信息发送给其他控制调度节点时,控制调度节点是周期性将自身的监测信息发送给其他控制调度节点。

上述方法,周期性的发送自身的监测信息,保证多个及控制调度节点不论在什么情况下都会存在一个主控制调度节点进行检测共享驱动节点,将故障的共享驱动节点的共享文件存储控制权转移给其他的共享驱动节点,不会出现没有控制调度节点对共享驱动节点进行检测管理的现象,保证调度管理系统可以正常工作。

在一种可能的实施方式中,控制调度节点将自身的监测信息发送给其他控制调度节点之前,控制调度节点接收到目标控制调度节点发送的监测信息,其中目标控制调度节点为发生故障并恢复,且发生故障之前是主控制调度节点的控制调度节点。

在一种可能的实施方式中,控制调度节点根据监测信息在确定自身为主控制调度节点后,若控制调度节点发生故障,则在恢复后返回将自身的监测信息发送给其他控制调度节点的步骤。

上述方法,在发生故障的主控制调度节点回恢复,会将自身的监测信息发送给其他控制调度点,其他控制调度节点在接收到发生故障且恢复的目标节点发送的监测信息后,调度管理系统中的每个控制调度节点都会将自身的监测信息进行发送,进而执行确定新的主控制调度节点的步骤。

在一种可能的实施方式中,控制调度节点根据自身的监测信息和接收到的监测信息,判断自身是否为主控制调度节点,控制调度节点判断自身的监测信息中的权重因子是否大于所有接收到的监测信息中的权重因子;如果是,则确定自身为主控制调度节点,否则,将接收到的监测信息中权重因子最大的控制调度节点作为主控制调度节点。

上述方法,根据监测信息中的权重因子进行主控制调度节点的确定,并确定权重因子最大的控制调度节点作为主控制调度节点。

第二方面,本发明实施例提供一种调度管理的设备,该设备包括:处理器以及收发机:

处理器用于将自身的监测信息发送给其他控制调度节点,以及接收所述其他控制调度节点发送的监测信息;根据自身的监测信息和接收到的监测信息,判断自身是否为主控制调度节点;根据所述监测信息在确定自身为主控制调度节点后检测共享驱动节点;确定有所述共享驱动节点发生故障后,将故障的共享驱动节点所管理的文件控制权转移给其他的共享驱动节点。

第三方面,本发明实施例提供另一种调度管理的设备,该设备包括:处理单元和存储单元;该存储单元用于存储计算机执行指令,当该设备运行时,该处理单元执行该存储单元存储的该计算机执行指令,以使该设备执行如上述方面中任一所述的调度管理的方案。

第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中包括程序代码,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

第五方面,本申请还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

第六方面,本申请还提供一种系统,该系统包括上述任一方法实施例或装置实施例中的控制调度节点。

另外,第二方面至第五方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。

本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1a为现有技术中弹性存储系统的管理面中包含有多个控制资源节点的总体架构的示意图;

图1b为现有技术中弹性存储系统的管理面中包含一个控制资源节点的总体架构的示意图;

图1c为现有技术中弹性存储系统中控制调度节点对于共享驱动节点的高可用功能的架构示意图;

图2为本发明实施例提供的一种调度管理过程中管理面的总体架构示意图;

图3a为本发明实施例提供的第一种确定主控制调度节点的结构示意图;

图3b为本发明实施例提供的第一种确定主控调度节点后发布选取结果的示意图;

图4为本发明实施例提供的第一种调度管理过程中主控制调度节点的生成方法流程示意图;

图5a为本发明实施例提供的第二种确定主控制调度节点的结构示意图;

图5b为本发明实施例提供的第一种确定主控调度节点后发布选取结果的示意图;

图6为本发明实施例提供的第二种调度管理过程中主控制调度节点的生成方法流程示意图;

图7为本发明实施例提供的为本申请提供的第三种确定的主控制调度节点并发布选取结果的结构示意图;

图8为本发明实施例提供的第三种调度管理过程中主控制调度节点的生成方法流程示意图;

图9为本发明实施例提供的第四种确定的主控制调度节点并发布选取结果的结构示意图;

图10为本发明实施例提供的第四种调度管理过程中主控制调度节点的生成方法流程示意图;

图11为本发明实施例提供的一种主控制调度节点将故障的共享驱动节点管理的共享文件存储转移给其他共享驱动节点的结构示意图;

图12为本发明实施例提供的一种调度管理的整体方法流程图;

图13为本发明实施例提供的一种调度管理的设备结构示意图;

图14为本发明实施例提供的另一种调度管理的设备结构示意图。

具体实施方式

本申请实施例描述的架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

目前是社交时代和移动互联网时代,对现代的互联网具有较高的要求,随着出现了大量的读写请求、数据及用户;因此传统的关系型数据库存储方式已不在适用。弹性存储系统为用户提供自定义的共享文件存储服务,可通过调度算法确定将文件在哪个共享驱动节点所管理的存储资源池中创建共享文件的存储;同时共享驱动节点还可对共享文件存储在共享资源池中进行维护。

如图1a所示,为现有技术中弹性存储系统的管理面中包含有多个控制资源节点的总体架构的示意图。从图中可知多个控制调度节点中每一个控制调度节点都管理所有的共享驱动节点,共享驱节点管理共享资源池,所有的共享文件存储都通过共享驱动节点在存储资源池中被创建和维护,每个共享驱动节点管理一个和/或多个存储资源池,每个存储资源池用来被创建和维护一个或多个用户自定义共享文件存储。

如图1b所示,为现有技术中弹性存储系统的管理面中包含一个控制资源节点的总体架构的示意图。从图中可知控制调度节点管理所有的共享驱动节点。

如图1c所示,为现有技术中弹性存储系统中控制调度节点对于共享驱动节点的高可用功能的架构示意图。以架构中只包含有一个控制调度节点为例,控制调度节点管理监控所有的共享驱动节点的状态,当其中的某一共享驱动节点发生故障时,为了保证故障的共享驱动节点所管理的共享文件存储管理面高可用,控制调度节点会将上述共享文件存储的控制权转移到其他正常的共享驱动节点。

同理,在架构中包含有多个控制调度节点时,当某一个共享驱动节点故障后,所有的共享驱动节点都会对故障的共享驱动节点管理的共享文件进行转移,此时会出现各个控制调度节点发出的转移指令不一致的现象。

从上述内容可以看出,现有的弹性存储系统中包含有一个或多个控制资源调度节点,若存在一个控制资源调度节点时,当控制资源调度节点故障后,在用户发送创建文件的请求时则无法正常进行文件的创建,因此在弹性存储系统的管理面中设置多个控制资源节点,由于存在多个控制资源调度节点,所有的调度节点都可以对共享驱动节点进行管理,实现共享驱动节点的高可用性,形成多个控制调度节点进行控制调度,同时在故障的共享驱动节点进行共享文件存储的调度转移时,容易产生调度效果不一致。

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

如图2所示,为本申请的一种调度管理过程中管理面的总体架构示意图。从图中可知,本申请中的管理面中存有多个控制调度节点,且在多个控制调度节点中有一个为主控制调度节点,其他的非主控制调度节点可以将其命名为从控制调度节点。

在本发明实施例中,当设备开机进行工作时,所述调度管理系统中的多个控制调度节点开始选取一个控制调度节点作为主控制调度节点,并在工作的过程中由于多种原因会使最初选取的主控制调度节点发生变化,重新选取新的主控制调度节点,保证所述调度管理系统可以正常工作。

下面针对上述场景,对本申请的调度管理时进行选取主控制调度节点的方法分别进行解释说明。

场景一:开机正常工作时。

如图3a所示,为本申请提供的第一种确定主控制调度节点的结构示意图。从图中可知,控制调度节点将自身的监测信息发送给其他控制调度节点,以及接收所述其他控制调度节点发送的监测信息;

其中,所述监测信息中包括但不限于下列的部分或全部:

权重因子、心跳检测信息。

具体的,所述权重因子为选取主控制调度节点过程中必要的信息,且每个控制调度节点的权重因子都由所述控制调度节点的在线服务时长决定,且所述在线服务时长包括,所述控制调度节点从注册控制调度服务开始后所有工作状态正常的时长的总和;所述心跳检测信息用于各个控制调度节点间进行相互检测是否正常工作时所用的信息,可以用来触发所述控制调度节点进行新的选取主控制调度节点的过程。

在本发明实施例中,以调度管理系统中存在三个控制调度节点为例,假设上述三个控制调度节点正常工作,且控制调度节点a、控制调度节点b以及控制调度节点c之间相互发送自身的监测信息。

进一步的,所述控制调度节点根据自身的监测信息和接收到的监测信息,判断自身的监测信息中的权重因子是否大于所有接收到的监测信息中的权重因子,并在确定自身的监测信息中的权重因子大于所有接收到的监测信息中的权重因子后,确定自身作为主控制调度节点;

具体的,当控制调度节点a接收到控制调度节点b和控制调度节点c的监测信息后,根据接收到的监测信息确定控制调度节点b和控制调度节点c的权重因子,并确定自身的监测信息中的权重因子,假设自身的权重因子为10,接收到的控制调度节点b的权重因子为8,控制调度节点c的权重因子为5,此时确定出自身的权重因子大于接收到的控制调度节点b和控制调度节点c的权重因子,因此控制调度节点a确定自身为主控制调度节点。

与此同时,控制调度节点b接收到控制调度节点a和控制调度节点c的监测信息,并确定控制调度节点a的权重因子为10,控制调度节点c的权重因子为5,进而将自身的权重因子与控制调度节点a的权重因子及控制调度节点c的权重因子进行比较,确定自身的权重因子小于控制调度节点a的权重因子,此时确定自身不作为主控制调度节点,即控制调度节点b为从控制调度节点,并确定出控制调度节点a作为主控制调度节点。

同理,控制调度节点c根据权重因子确定自身为从控制调度节点,且主控制调度节点为控制调度节点a。

在实施中,根据权重因子可以更加准确的确定出主控制调度节点,进而在调度管理过程中,不再是多个控制调度管理共同进行管理,而是由主控制调度节点进行管理,不会出现多头控制而产生的脑裂和调度管理不一致等问题。

进一步的,所述控制调度节点根据所述监测信息确定自身为主控制调度节点后,所述控制调度节点向其他控制调度节点发送主控制调度节点的信息,并接收所述其他控制调度节点发送的主控制调度节点的信息,确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息是否一致;若不一致,返回将自身的监测信息发送给所述其他控制调度节点的步骤。

具体的,在上述内容中确定主控制调度节点为控制调度节点a,主控制调度节点a向控制调度节点b及控制调度节点c发送确定控制调度节点a为主控制调度节点的信息,同时控制调度节点a接收控制调度节点b发送的确定控制调度节点a为主控制调度节点的信息和控制调度节点c发送的确定控制调度节点a为主控制调度节点的信息后,根据每个控制调度节点的权重因子及每个控制调度节点确定的主控制调度节点,确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息一致后,选取控制调度节点a作为主控制调度节点并发布选取结果,如图3b所示。

在根据调度节点的权重因子及每个控制调度节点确定的主控制调度节点,确定主控制调度节点,确定接收到的主控制调度节点的信息与发布的主控制调度节点的信息不一致,则重新发送自身的监测信息继续执行选取主控制调度节点的步骤,在主控制调度节点达成一致后,确定主控制调度节点,并将确定的主控制调度节点的信息发布。

比如,控制调度节点a发送自身为主控制调度节点给其他控制调度节点,控制调度节点b接收到控制调度节点a为主控制调度节点,但是此时控制调度节点b的权重因子发生了变化,控制调度节点b的新的权重因子为12,此时控制调度节点b发送主控制调度节点为控制调度节点b给其他控制调度节点,由于控制调度节点b接收到的主控制调度节点为控制调度节点a和发送的主控制调度节点为控制调度节点b的信息不一致,因此要从新进行主控制调度节点的选取。

同理,所述控制调度节点在确定自身不是主控制调度节点后,将自身确定的主控制调度节点的信息发送给其他控制调度节点,并接收其他控制调度节点确定的主控制调度节点的信息,并确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息是否一致;若不一致,返回将自身的监测信息发送给所述其他控制调度节点的步骤。

具体的,在上述内容中确定主控制调度节点为控制调度节点a,控制调度控制调度节点b不是主控制调度节点,控制调度节点b将自身确定的主控制调度节点为控制调度节点a的信息发送给其他控制调度节点,同时接收控制调度节点c发送确定控制调度节点a为主控制调度节点的信息和控制调度节点a发送的确定自身为主控制调度节点的信息,根据每个控制调度节点的权重因子及每个控制调度节点确定的主控制调度节点,确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息一致后,选取控制调度节点a作为主控制调度节点并发布选取结果,若不一致,则重新发送自身的监测信息继续执行选取主控制调度节点的步骤,在主控制调度节点达成一致后,确定主控制调度节点,并将确定的主控制调度节点的信息发布。

在实施中,控制调度节点之间相互发送确定的主控制调度节点的信息,在确定自身发送的主控制调度节点的信息与接收到的主控制调度节点的信息一致后,确定主控制调度节点;若选取结果不一致,则重新进行选取,并重新发布选取结果,最终使所有的控制调度节点都能达成一致的结果,严格保证了主控制调度节点的唯一性。

如图4所示,为本申请提供的第一种调度管理过程中主控制调度节点的生成方法流程示意图,具体包括如下步骤:

步骤400,控制调度节点将自身的监测信息发送给其他控制调度节点,并接收所述其他控制调度节点发送的监测信息;

步骤401,控制调度节点根据自身的监测信息中的权重因子和接收到的监测信息中的权重因子,确定自身是否为主控制调度节点;

步骤402,发送确定的主控制调度节点的信息,同时接收其他控制调度节点确定的主控制调度节点的信息;

步骤403,判断接收到的确定的主控制调度节点的信息与自身确定的主控制调度节点的信息是否一致;若一致,则执行步骤404,否则返回步骤400;

步骤404,发布选取确定的主控制调度节点的结果。

场景二:工作过程中,检测到其他控制调度节点的监测信息中的权重因子大于当前主控制调度节点的监测信息中的权重因子。

如图5a所示,为本申请提供的第二种确定主控制调度节点的结构示意图。从图中可知,控制调度节点将自身的监测信息发送给其他控制调度节点,同时接受其他控制调度节点发送的监测信息。

可选的,所述控制调度节点周期将自身的监测信息发送给其他控制调度节点。

具体的,在调度管理系统正常工作过程中,在确定主控制调度节点后,系统中的控制调度节点还会周期性的发送监测信息,并接收其他控制调度节点发送的监测信息,进而根据监测信息进行检测,确定当前的主控制调度节点是否发生变化,若主控制调度节点发生变化,则进行从多个控制调度节点中选取主控制调度节点,判断主控制调度节点是否一致,在确定各个控制调度节点选取的主控制调度节点一致后,发布选取的主控制调度节点的结果,如图5b所示;若主控制调度节点没有发生变化,则当前的主控制调度节点继续当前的工作,且不用发布主控制调度节点的结果。

其中,所述确定当前的主控制调度节点是否发生变化主要是根据监测信息中的权重因子确定的,当确定在周期发送监测信息后,所述主控制调度节点确定接收到的任一其他控制调度节点的监测信息中的权重因子比自身的监测信息中的权重因子大,或任一其他控制调度节点确定自身的监测信息比接收到的主控制调度节点的监测信息中的权重因子大,则进行重新选取主控制调度节点。

比如,上一周期确定控制调度节点a的权重因子为10、控制调度节点b的权重因子为8、控制调度节点c的权重因子为5,确定出控制调度节点a为主控制调度节点;在本周期发送监测信息后,假设控制调度节点a根据接收到的控制调度节点b的监测信息确定控制调度节点b的权重因子为12,确定自身的权重因子为10,控制调度节点b的权重因子大于自身权重因子,则触发重新选举主控制调度节点的步骤;

同理,控制调度节点b根据自身的监测信息确定自身的权重因子为12,根据接收到的控制调度节点a及控制调度节点c的监测信息确定控制调度节点a的权重因子为10、控制调度节点c的权重因子为5,此时控制调度节点b触发重新选举主控制调度节点的步骤;

同理,控制调度节点c,根据接收到的监测信息确定的权重因子与自身的权重因子进行比较,并根据三者的权重因子确定当前的主控制调度节点为控制调度节点b,与上一周期的主控制调度节点不一致,则出发重新选举主控制调度节点的步骤,最终确定当前的主控制调度节点为控制调度节点b.

需要说明的是,所述监测信息中可以只包含有权重因子,或包含有权重因子和心跳检测信息,且心跳检测信息显示各个控制调度节点状态正常。

在实施中,周期性的根据权重因子选取主控制调度节点,保证主控制调度节点具有最大的权重因子,保证主控制调度节点的工作效率。

如图6所示,为本申请提供的第二种调度管理过程中主控制调度节点的生成方法流程示意图,具体包括如下步骤:

步骤600,正常工作过程中,在确定主控制调度节点后,各个控制调度节点间周期性发送自身的监测信息;

步骤601,控制调度节点在接收到其他控制调度节点的监测信息后,监测自身的权重因子与接收到的监测信息中的权重因子,判断是否有权重因子大于当权主控制调度节点的权重因子,若有,则执行步骤602,否则执行步骤607;

步骤602,控制调度节点发送自身的监测信息,同时接收其他控制调度节点发送的监测信息;

步骤603,控制调度节点根据接收到的其他控制调度节点发送的监测信息重新确定主控制调度节点;

步骤604,发送确定的主控制调度节点的信息,同时接收其他控制调度节点确定的主控制调度节点的信息;

步骤605,判断接收到的确定的主控制调度节点的信息与自身确定的主控制调度节点的信息是否一致;若一致,则执行步骤606,否则返回步骤602;

步骤606,发布选取确定的主控制调度节点的结果;

步骤607,继续工作。

场景三:工作过程中,检测到当前的主控制调度节点故障。

如图7所示,为本申请提供的第三种确定的主控制调度节点并发布选取结果的结构示意图。从图中可知,控制调度节点将自身的监测信息发送给其他控制调度节点,同时接收其他控制调度节点发送的监测信息。

可选的,各个控制调度节点周期将自身的监测信息发送给其他控制调度节点。

具体的,在调度管理系统正常工作过程中,在确定主控制调度节点后,系统中的控制调度节点还会周期性的发送监测信息,并接收其他控制调度节点发送的监测信息,进而根据监测信息进行检测,确定当前的主控制调度节点是否正常工作;若主控制调度节点工作异常,表示当前的主控制调度节点发生故障,则进行从剩余的多个控制调度节点中选取一个控制调度节点作为主控制调度节点,并判断选取的主控制调度节点是否一致,在确定各个控制调度节点选取的主控制调度节点一致后,发布选取的主控制调度节点的结果的步骤。

其中,所述确定当前的主控制调度节点是否正常工作主要是根据监测信息中的心跳检测信息确定的,在周期发送监测信息后,所述其他控制调度节点接收到主控制调度节点心跳检测异常的信息,则确定当前的主控制调度节点故障,在确定当前的主控制调度节点故障后,在剩余的多个控制调度节点中选取主控制调度节点。

在本发明实施例中,所述确定当前的主控制调度节点是否正常工作时,还可以根据监测信息中的权重因子进行确定。在周期发送监测信息后,所述其他控制调度节点接收到的当前主控制调度节点发送的监测信息中没有权重因子,则所述其他控制调度节点向当前主控制调度节点发送查询工作状态是否正常的信息,根据主控制调度节点针对查询结果返回的信息确定,若当前的主控制调度节点返回工作异常的信息,则其他控制调度节点在接收到主控制调度节点返回的工作异常的信息后,在剩余的多个控制调度节点中选取主控制调度节点。

需要说明的是,在发送监测信息时,信息中可以只包含有权重因子;或只包含有心跳检测信息,但是在根据心跳检测信息确定当前的主控制调度节点工作异常后,剩余的各个控制调度节点之间后需要进行权重因子的发送;或所述信息中包含有权重因子和心跳检测信息。

在实施中,根据周期发送的监测信息确定当前的主控制调度节点是否正常工作,在发生工作异常后,在剩余的多个控制调度节点中选取一个主控制调度节点,保证调度管理系统可以正常工作。

如图8所示,为本申请提供的第三种调度管理过程中主控制调度节点的生成方法流程示意图,具体包括如下步骤:

步骤800,在工作过程中,确定主控制调度节点后,各个控制调度节点间周期性发送自身的监测信息;

步骤801,控制调度节点根据接收到的监测信息中的心跳检测信息和/或权重因子检测到当前的主控制调度节点故障后,发送自身的监测信息给其他的控制调度节点,同时接收其他控制调度节点发送的监测信息;

步骤802,控制调度节点接收到其他控制调度节点的监测信息后,根据接收到的监测信息中的权重因子及自身的监测信息中的权重因子从正常工作控制调度节点中选取主控制调度节点;

步骤803,控制调度节点发送自身确定的主控制调度节点的信息,同时接收其他控制调度节点发送的确定的主控制调度节点的信息;

步骤804,控制调度节点根据接收到的其他控制调度节点发送的确定主控制调度节点的信息及自身确定的主控制调度节点的信息,判断确定的主控制调度节点的是否一致;若一致,则执行步骤805,否则执行步骤801;

步骤805,发布选取确定的主控制调度节点的结果。

场景四:工作过程中,发生故障的主控制调度节点恢复。

如图9所示,为本申请提供的第四种确定的主控制调度节点并发布选取结果的结构示意图。从图中可知,各个控制调度节点之间可以相互发送自身的监测信息,且所述控制调度节点同时接收其他控制调度节点发送的监测信息。

可选的,所述控制调度节点接收到目标控制调度节点发送的监测信息后,所述控制调度节点将自身的监测信息发送给所述其他控制调度节点,进而从多个控制调度节点中选取一个作为主控制调度节点。

其中,所述目标控制调度节点为发生故障并恢复,且发生故障之前是主控制调度节点的控制调度节点。

基于上述内容,发生故障的控制调度节点在恢复后将自身的监测信息发送给其他控制调度节点。

具体的,如图9所示,控制调度节点a为故障后恢复的控制调度节点,控制调度节点a在确定自身恢复正常工作后,监测自身的权重因子,并将监测到的权重因子加入到监测信息中,进而将监测信息发送给调度管理系统中其他的控制调度节点(控制调度节点b和控制调度节点c)。其他的控制调度节点在接收到控制调度节点a发送的监测信息后,确定接收到的监测信息中的权重因子,确定控制调度节点a的权重因子最大,则发送自身的监测信息给其他的控制调度节点,进而选取主控制调度节点,并确定选取的主控制调度节点一致后,发布选取结果确定主控制调度节点。

在实施中,若之前发生故障的主控制调度节点恢复后,则会监测自身的权重因子,并将自身的权重因子发送给其他控制调度节点,在其他的控制调度节点确定所述发生故障并恢复的主控制调度节点的权重因子仍是当前最高的,则重新进行主控制调度节点的选取,保证主控制调度节点在当前所有处于正常工作状态的控制调度节点中权重因子是最高的,保证调度管理系统工作的高效性。

如图10所示,为本申请提供的第四种调度管理过程中主控制调度节点的生成方法流程示意图,具体包括如下步骤:

步骤1000,在工作过程中,发生故障的主控制调度节点恢复正常的工作状态后,监测自身的权重因子,并向其他的控制调度节点发送自身的监测信息;

步骤1001,其他控制调度节点在接收到发生故障并恢复的主控制调度节点发送的监测信息后,发送自身的监测信息给其他的控制调度节点;

步骤1002,控制调度节点根据自身监测信息中的权重因子,及接收到的监测信息中的权重因子确定主控制调度节点;

步骤1003,控制调度节点将自身确定的主控制调度节点的信息发送给其他的控制调度节点,并接收其他的控制调度节点发送的主控制调度节点的信息;

步骤1004,控制调度节点根据自身确定的主控制调度节点的信息与接收到的主控制调度节点的信息所确定的主控制调度节点是否一致,若一致则执行步骤1005,否则执行步骤1001;

步骤1005,发布选取确定的主控制调度节点的结果。

在本发明实施例中,若所述调度管理系统中只存在一个控制调度节点,则将所述控制调度节点确定为主控制调度节点。

基于上述场景,所述控制调度节点在根据监测信息确定自身为主控制调度节点后检测共享驱动节点,并确定检测的共享驱动节点是否发生故障,若控制调度节点在确定有所述共享驱动节点发生故障后,则所述控制调度节点将故障的共享驱动节点所管理的共享文件存储控制权转移给其他的共享驱动节点。

如图2所示,为本申请的一种调度管理过程中管理面的总体架构示意图,从图中可知,控制调度节点检测共享驱动节点,同时确定的主控制调度节点可以检测所有的共享驱动节点的工作状态是否正常,在确定所有的共享驱动节点中有发生故障的共享驱动节点后,所述共享驱动节点将所述故障的共享驱动节点所管理的共享文件存储转移给其他正常的兄弟共享驱动节点,如图11所示,为本申请提供的一种主控制调度节点将故障的共享驱动节点管理的共享文件存储转移给其他共享驱动节点的结构示意图。

具体的,所述主控制调度节点在检测所管理的共享驱动节点是否发生故障时可以进行主动的查询,还可以根据共享驱动节点上报的状态进行确定,下面分别介绍。

情况一:主控制调度节点周期性的对所管理的共享驱动节点进行检测,确定所检测的共享驱动节点是否发生故障,若检测到有共享驱动节点发生故障,则将故障的共享驱动节点所管理的共享文件存储的控制权转移给其他兄弟共享驱动节点。

情况二:所述共享驱动节点周期性的向主控制调度节点上报自身的状态信息,主控制调度节点接收到所管理的共享驱动节点上报的状态信息后,根据接收到的状态信息进行检测,若发现有状态信息异常的,则针对异常的状态信息所对应的共享驱动节点进行查询,确定是否发生故障;或若主控制调度节点没有接收到所述共享驱动节点的状态信息,则对没有发送状态信息的共享驱动节点进行查询,确定是否发生故障,若发生故障,则主控制调度节点将其所管理的共享文件存储的控制权转移给其他兄弟共享驱动节点。

其中,所述兄弟共享驱动节点为管理同一个存储资源池中的共享文件存储的共享驱动节点,其中,所述同一个存储资源池中的共享文件存储不是由同一个共享驱动节点所管理。

比如,存在三个共享驱动节点a、共享驱动节点b、共享驱动节点c,共享驱动节点a管理有共享文件存储a1、a2、a3、b3;共享驱动节点b管理有共享文件存储b1、b2、c3;共享驱动节点c管理有共享文件存储c1、c2;其中,所述共享文件存储a1、a2、a3属于存储资源池a,所述共享文件存储b1、b2、b3属于存储资源池b,所述共享文件存储c1、c2、c3属于存储资源池c,此时共享驱动节点a与共享驱动节点b为兄弟共享驱动节点,共享驱动节点b与共享驱动节点c为兄弟共享驱动节点。

具体的,所述主控制调度节点在对所述故障的共享驱动节点所管理的共享文件存储的控制权进行转移时,还会根据其兄弟共享驱动节点所管理的共享文件存储的资源进行合理的分配。

在实施中,主控制调度节点在确定共享驱动节点故障后,将其所管理的共享文件存储的控制权进行转移,由于只有主控制调度节点可以对故障的共享驱动节点管理的共享文件存储的控制权转移给其他共享驱动节点,不会出现多个控制调度节点对所述共享文件存储的控制权进行转移,保证了调度管理系统可以正常工作的同时,又不会出现因为多头管理而产生的脑裂问题和调度结果不一致的问题。

需要说明的是,在本发明实施例中不论是主控制调度节点还是从控制调度节点都保留监控所有的共享驱动节点的功能,以保证所有的共享驱动节点任何时刻都能对所有的共享驱动节点获取相同的状态,此时在进行文件的创建时可以合理的进行分配,节省主控制调度节点的资源,同时在主控主调度节点故障时,从其他控制调度节点中选取的主控制调度节点可以确定所有的共享驱动节点的状态,不用进行查询。

如图12所示,为本申请的一种调度管理的整体方法流程示意图,具体包括如下步骤:

步骤1200,控制调度节点将自身的监测信息发送给其他控制调度节点,并接收所述其他控制调度节点发送的监测信息;

步骤1201,控制调度节点根据自身的监测信息中的权重因子和接收到的监测信息中的权重因子,确定自身是否为主控制调度节点;

步骤1202,发送确定的主控制调度节点的信息,同时接收其他控制调度节点确定的主控制调度节点的信息;

步骤1203,判断接收到的确定的主控制调度节点的信息与自身确定的主控制调度节点的信息是否一致;若一致,则执行步骤1204,否则返回步骤1200;

步骤1204,发布选取确定的主控制调度节点的结果;

步骤1205,确定的主控制调度节点检测共享驱动节点;

步骤1206,主控制调度节点在确定共享驱动节点发生故障后,将故障的共享驱动节点所管理的共享文件存储的控制权转移给其他共享驱动节点。

在一些可能的实施方式中,本发明实施例提供的调度管理的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序代码在计算机设备上运行时,程序代码用于使计算机设备执行本说明书中描述的根据本发明各种示例性实施方式的调度管理的方法中的步骤。

程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

根据本发明的实施方式的用于数据转发控制的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在服务器设备上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被信息传输、装置或者器件使用或者与其结合使用。

可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由周期网络动作系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算设备,或者,可以连接到外部计算设备。

本发明实施例针对调度管理的方法还提供一种计算设备可读存储介质,即断电后内容不丢失。该存储介质中存储软件程序,包括程序代码,当程序代码在计算设备上运行时,该软件程序在被一个或多个处理器读取并执行时可实现本发明实施例上面任何一种进行调度管理时的方案。

基于同一发明构思,本发明实施例中还提供了一种调度管理的设备,由于该设备对应的是本发明实施例调度管理的方法对应的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图13所示,本发明实施例一种调度管理的设备,包括:处理器1300以及收发机1301:所述处理器1300用于:将自身的监测信息发送给其他控制调度节点,以及接收所述其他控制调度节点发送的监测信息;根据自身的监测信息和接收到的监测信息,判断自身是否为主控制调度节点;根据所述监测信息在确定自身为主控制调度节点后检测共享驱动节点;确定有所述共享驱动节点发生故障后,将故障的共享驱动节点所管理的文件控制权转移给其他的共享驱动节点。

可选的,所述处理器1300还用于:

向所述其他控制调度节点发送主控制调度节点的信息,并接收所述其他控制调度节点发送的主控制调度节点的信息;

所述处理器1300具体用于:

在确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息一致后,检测共享驱动节点。

可选的,所述处理器1300还用于:

在确定接收到的主控制调度节点的信息与发送的主控制调度节点的信息不一致后,返回将自身的监测信息发送给所述其他控制调度节点的步骤。

可选的,所述处理器1300还用于:

若确定自身不是主控制调度节点,则将自身确定的主控制调度节点的信息发送给其他控制调度节点,并接收其他控制调度节点确定的主控制调度节点的信息;

若接收到的主控制调度节点的信息与发送的主控制调度节点的信息不一致后,则返回将自身的监测信息发送给所述其他控制调度节点的步骤。

可选的,所述处理单元具体用于:周期将自身的监测信息发送给所述其他控制调度节点。

可选的,所述处理器1300还用于:

接收到目标控制调度节点发送的监测信息,其中所述目标控制调度节点为发生故障并恢复,且发生故障之前是主控制调度节点的控制调度节点。

可选的,所述处理器1300还用于:若发生故障,则在恢复后返回将自身的监测信息发送给所述其他控制调度节点的步骤。

可选的,所述处理器1300具体用于:

判断自身的监测信息中的权重因子是否大于所有接收到的监测信息中的权重因子;

如果是,则确定自身为主控制调度节点,否则,确定自身不作为主控制调度节点。

如图14所示,本发明实施例另一种调度管理的设备,该设备包括:至少一个处理单元1400以及至少一个存储单元1401,其中,所述存储单元1401存储有程序代码,当所述程序代码被所述处理单元1400执行时,使得所述处理单元1400执行所述调度管理过程中的任一方法的步骤。

以上参照示出根据本申请实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。

相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1