CN107623711A - 一种集群中主节点及从节点的分配方法及装置 - Google Patents

一种集群中主节点及从节点的分配方法及装置 Download PDF

Info

Publication number
CN107623711A
CN107623711A CN201610648202.6A CN201610648202A CN107623711A CN 107623711 A CN107623711 A CN 107623711A CN 201610648202 A CN201610648202 A CN 201610648202A CN 107623711 A CN107623711 A CN 107623711A
Authority
CN
China
Prior art keywords
physical machine
node
predetermined number
host node
distributed
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.)
Granted
Application number
CN201610648202.6A
Other languages
English (en)
Other versions
CN107623711B (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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud 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 Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Publication of CN107623711A publication Critical patent/CN107623711A/zh
Application granted granted Critical
Publication of CN107623711B publication Critical patent/CN107623711B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施方式提供一种集群中主节点的分配方法及装置,其中,所述方法包括:预先确定分配主节点的参考数量;在预设数量的物理机上分配所述参考数量的主节点;确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;在所述预设数量的物理机上分配所述分支数量的主节点;循环分配主节点,直至分配完所述总数量的主节点为止。本发明提供的一种集群中主节点的分配方法及装置,能够提高集群工作的稳定性。

Description

一种集群中主节点及从节点的分配方法及装置
技术领域
本发明实施方式涉及互联网通信技术领域,尤其涉及一种集群中主节点及从节点的分配方法及装置。
背景技术
随着互联网通信技术的不断发展,网络中的数据量越来越大,因此目前需要能够完成大数据量存储的设备或者系统。在这种情况下,集群的概念应运而生。在一个集群中,可以具备多个物理机,而为了充分利用这些物理机的功能,可以在这些物理机上分布若干服务节点。
目前,为了保证集群的稳定性,在集群中引入了主从节点模式。也就是说,一个主节点可以对应一个或者多个从节点。主节点提供数据存取,从节点则是从主节点拉取数据备份,当某个主节点发生故障停止服务后,就会从这个主节点的从节点中选取一个从节点来充当主节点,从而保证集群能够稳定地提供服务。在从节点被选取出来充当主节点时,会向集群中的其它主节点发送授权请求,当集群中超过预设比例的主节点均通过该授权请求时,选取出来的从节点才可以正式成为主节点。
现有技术中,在物理机上分配主节点往往是随机分配的,这就导致在某个物理机上可能存在集群中的大部分主节点。当该物理机宕机后,则会导致其上的所有主节点均不可用,由于此时可用的主节点已经不多,则会导致选取出来的从节点无法从剩余的主节点处通过超过预设比例的授权请求,这样尽管从节点被选取出来,但无法正式成为主节点。这样,尽管设置了主从节点模块,还是不能够保证集群的稳定性。
现有技术中,在物理机上分配从节点往往是随机分配的,这就导致在某个物理机上可能存在集群中的大部分从节点。当需要对集群中的数据节点二进制执行文件升级时,会按一定的策略统一关停主节点进行二进制替换。这时从节点已经全部晋升为新的主节点。此时,当一台物理机上从节点数量超过一半时,在进行二进制升级时,该物理机上从节点全部升级为主节点。当该物理机因意外宕机后,则会导致其上的所有主节点均不可用,由于此时可用的主节点已经不多,则会导致选取出来的从节点无法从剩余的主节点处通过超过预设比例的授权请求,这样尽管从节点被选取出来,但无法正式成为主节点。这样,尽管设置了主从节点模块,还是不能够保证集群的稳定性。
发明内容
本发明实施方式的目的在于提供一种集群中主节点及从节点的分配方法及装置,能够提高集群工作的稳定性。
为实现上述目的,本发明实施方式提供一种集群中主节点的分配方法,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,所述方法包括:确定待分配主节点的数量;确定在所述预设数量的物理机上分配主节点的参考数量;在所述预设数量的物理机上分配所述参考数量的主节点;确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;在所述预设数量的物理机上分配所述分支数量的主节点。
为实现上述目的,本发明实施方式提供一种集群中主节点的分配装置,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,所述装置可以包括:数量确定单元,用于确定待分配主节点的数量;参考数量确定单元,用于确定在所述预设数量的物理机上分配主节点的参考数量;主节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的主节点;主节点数量统计单元,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;分支节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的主节点。
为实现上述目的,本发明实施方式提供一种集群中主节点的分配方法,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,所述方法包括:S1:预先获取所述集群对应的主节点授权通过比例;S2:确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量;S3:在所述预设数量的物理机上分配所述参考数量的主节点;S4:确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;S5:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;S6:在所述预设数量的物理机上分配所述分支数量的主节点;S7:重复执行S4至S6,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
为实现上述目的,本发明实施方式还提供一种集群中主节点的分配装置,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,所述装置包括:比例获取单元,用于预先获取所述集群对应的主节点授权通过比例;参考数量确定单元,用于确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量;参考数量主节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的主节点;目标数量记录单元,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;分支数量主节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的主节点;循环单元,用于重复所述目标数量记录单元至所述分支数量主节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
为实现上述目的,本发明实施方式提供一种集群中从节点的分配方法,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,所述方法包括:S101:预先获取所述集群对应的主节点授权通过比例;S102:确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量;S103:在所述预设数量的物理机上分配所述参考数量的从节点;S104:确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;S105:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;S106:在所述预设数量的物理机上分配所述分支数量的从节点;S107:重复执行S104至S106,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
为实现上述目的,本发明实施方式提供一种集群中从节点的分配装置,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,所述装置包括:
比例获取单元,用于预先获取所述集群对应的主节点授权通过比例;
参考数量确定单元,用于确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量;
参考数量从节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的从节点;
目标数量记录单元,用于确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
分支数量从节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的从节点;
循环单元,用于重复所述目标数量记录单元至所述分支数量从节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
由以上本发明实施方式可见,本发明实施例可以预先确定待分配的主节点的参考数量,并在每一次分配主从节点的过程中,保证不会在同一个物理机上分配所述参考数量以上的主节点。这样,就算分布主节点最多的物理机宕机,也能保证剩余物理机上分布的主节点能够超过授权请求通过的比例,使得后续选取出的从节点能够正式成为主节点,,待主节点确定后,如上分配从节点,保证集群能够稳定地提供服务。
附图说明
为了更清楚地说明本发明实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图逐一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施方式中主节点分配的方法示意图;
图2为本发明实施方式中主节点分配的装置功能模块图;
图3为本发明实施例一的集群中从节点分配的方法的流程图;
图4为本发明实施例二的集群中从节点分配的装置的示意图;
图5为本发明实施例三的集群中从节点分配的方法的流程图;
图6为本发明实施例四的集群中从节点分配的装置的示意图;
图7为本发明实施例五的集群中从节点分配的装置的示意图。
具体实施方式
为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
本申请实施方式提供一种集群中主节点的分配方法。在本实施方式中,所述集群中可以包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。所述方法可以包括:
步骤1:确定待分配主节点的数量;
步骤2:确定在所述预设数量的物理机上分配主节点的参考数量;
步骤3:在所述预设数量的物理机上分配所述参考数量的主节点;
步骤4:确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
步骤5:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
步骤6:在所述预设数量的物理机上分配所述分支数量的主节点。
在本实施方式中,可以预先获取所述集群对应的主节点授权通过比例,所述主节点授权通过比例可以是一个常数,例如50%。在获取了主节点授权通过比例之后,可以确定待分配主节点的总数量。那么,可以根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量。在本实施方式中,可以按照下述公式确定在所述预设数量的物理机上分配主节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
在本实施方式中,在确定了所述参考数量之后,便可以在所述预设数量的物理机上分配所述参考数量的主节点。在本实施方式中,分配所述参考数量的主节点可以采用随机分配的方式,也可以根据物理机的负载情况来进行分配。
在本实施方式中,在分配完所述参考数量的主节点之后,可以记录每个物理机上分配的主节点的数量,最极端的情况是这些参考数量的主节点均分配至同一个物理机上。因此,在本实施方式中,需要确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量。
在本实施方式中,当所述目标数量小于所述参考数量时,说明当前分配的主节点并没有同时分布至同一物理机上。因此还可以向所述预设数量的物理机中继续分配主节点。只不过继续分配的主节点的数量还需要进一步确定。在本实施方式中,当所述目标数量小于所述参考数量时,需要确定在所述预设数量的物理机上分配主节点的分支数量。所述分支数量可以按照下述公式确定:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。在确定出所述分支数量之后,便可以再次在所述预设数量的物理机上分配所述分支数量的主节点。
本申请还提供一种集群中主节点的分配装置,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,所述装置可以包括:
数量确定单元,用于确定待分配主节点的数量;
参考数量确定单元,用于确定在所述预设数量的物理机上分配主节点的参考数量;
主节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的主节点;
主节点数量统计单元,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
分支节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的主节点。
上述各个单元的具体实现方式与步骤1至步骤6中的描述一致,这里便不再赘述。
图1为本申请实施方式提供的一种集群中主节点的分配方法流程图。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。如图1所示,所述方法可以包括:
S1:预先获取所述集群对应的主节点授权通过比例。
在本实施方式中,可以预先获取所述集群对应的主节点授权通过比例。所述主节点授权通过比例可以按照下述规则确定:
假设集群中共分配了预设总数量的主节点,当其中一个主节点停止服务后,可以从该主节点的从节点中选取一个从节点。选取出的该从节点可以向剩余的主节点发送授权请求。当同意该授权请求的主节点的数量在所述预设总数量中所占的比例超过所述主节点授权通过比例时,选取出的该从节点便可以正式成为新的主节点。
例如,当前集群中共有10个主节点,这10个主节点可以分布于4台不同的物理机上。此时,分布了预设主节点的某个物理机发生故障宕机了,导致该预设主节点不可用。在这种情况下,该预设主节点的多个从节点中的一个从节点会被选取出来,选取的条件可以如下所述:
选取出的节点是停止工作的主节点的从节点并且停止工作的主节点负责处理的哈希槽的数量非空。此外,选取出的节点与停止工作的主节点之间的复制连接(replication link)的断线时长不能超过预设的时限。
在选取出从节点后,该从节点可以向剩余的其它主节点发起授权请求,以向剩余的其它主节点询问是否可以升级为新的主节点。
当剩余的其它主节点接收到从节点发来的授权请求时,判断发送该授权请求的从节点是否满足以下条件:
1)发送授权请求的是一个从节点,并且其所属的主节点处于停止服务状态;
2)在已停止服务状态的该主节点对应的所有从节点中,发送授权请求的从节点的ID是最小的;
3)发送授权请求的从节点处于正常的运行状态。
当发送授权请求的从节点同时满足上述三个条件时,接收到授权请求的主节点便可以同意该授权请求。
那么,当同意授权请求的主节点的数量在主节点总数量中的比例超过所述主节点授权通过比例时,发送授权请求的从节点便可以升级为新的主节点。
在本申请中,在获取了所述集群对应的主节点授权通过比例之后,当主节点不可用时,可以从该主节点的从节点中选取一个从节点。选取出的该从节点可以向剩余的主节点发送授权请求。当同意该授权请求的主节点的数量在所述预设总数量中所占的比例超过所述主节点授权通过比例时,选取出的该从节点便可以正式成为新的主节点,从而能够保证系统的正常运行。
S2:确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量。
在本实施方式中,在获取了主节点授权通过比例之后,可以确定待分配主节点的总数量。那么,可以根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量。
在本实施方式中,所述参考数量可以为在同一个物理机上分配主节点的最大数量。一旦超过所述参考数量,那么当分配主节点最多的物理机宕机时,则可能导致剩下的主节点的数量不足以使得选取的从节点能够升级成为主节点。因此,所述参考数量与所述总数量以及主节点授权通过比例具备对应关系。在本实施方式中,可以按照下述公式确定在所述预设数量的物理机上分配主节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
举例来说明,假设当前预计分配主节点的总数量为11个,而所述主节点授权通过比例为50%,那么根据上述公式可以得到总数量与主节点授权通过比例的乘积为5.5,通过向下取整运算后,便可以得到所述参考数量为5。如果预计分配主节点的总数量为10个,而所述主节点授权通过比例为50%,那么根据上述公式可以得到总数量与主节点授权通过比例的乘积为5,通过向下取整运算后,便可以得到所述参考数量同样为5。由此可见,分布在同一个物理机上的主节点的数量不能等于或者大于所述参考数量,否则当该物理机宕机时,剩余的主节点的数量在总数量中所占的比例便可能不会超过主节点授权通过比例,导致选取的从节点无法升级成为主节点,从而导致集群整体瘫痪。
S3:在所述预设数量的物理机上分配所述参考数量的主节点。
在本实施方式中,在确定了所述参考数量之后,便可以在所述预设数量的物理机上分配所述参考数量的主节点。在本实施方式中,分配所述参考数量的主节点可以采用随机分配的方式,也可以根据物理机的负载情况来进行分配。具体地,在本申请一优选实施方式中,为了保证物理机资源使用的最大化,可以获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组。所述负载参数例如可以为CPU使用率、内存使用率等可以表明物理机当前工作状态的参数。这样,根据所述负载参数,便可以从所述预设数量的物理机中筛选出负载较小的多个物理机,这些负载较小的物理机便可以构成待分配物理机组。这样,便可以将所述参考数量的主节点在所述待分配物理机组中进行分配。具体的分配方式例如可以是在所述待分配物理机组中随机分配。
S4:确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量。
在本实施方式中,在分配完所述参考数量的主节点之后,可以记录每个物理机上分配的主节点的数量,最极端的情况是这些参考数量的主节点均分配至同一个物理机上。因此,在本实施方式中,需要确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量。
在本实施方式中,在记录了所述目标数量之后,为了确保不会在同一个物理机上分布过多的主节点,可以将所述目标数量与所述参考数量进行对比,当所述目标数量等于所述参考数量时,表明当前所有的主节点均分配至了同一个物理机上。假设所述主节点授权通过比例为50%,如果后续再向该物理机分配任意一个主节点,那么在该物理机上分布的主节点的数量将会超过总数量的一半。因此,当所述目标数量等于所述参考数量时,则不再向所述目标物理机分配额外的主节点。也就是说,当所述目标数量等于所述参考数量时,将所述目标物理机从后续分配主节点的对象中移除,以避免在其上分配过多的主节点。
在将所述目标物理机从后续分配主节点的对象中移除后,便可以在除所述目标物理机之外的物理机中,重新确定分配的主节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的主节点的目标数量。
S5:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量。
在本实施方式中,当所述目标数量小于所述参考数量时,说明当前分配的主节点并没有同时分布至同一物理机上。因此还可以向所述预设数量的物理机中继续分配主节点。只不过继续分配的主节点的数量还需要进一步确定。原因在于,假设主节点的总数量为11,主节点授权通过比例为50%,那么参考数量为5,而经过第一次主节点分配之后,所述目标物理机上分布的主节点的目标数量可能并没有达到5,但该目标数量也可以很大,例如可以为4。由于分配主节点时往往采取随机分配的方式,因此,在后续分配主节点的过程中,只能再向所述预设数量的物理机中分配1个主节点。原因在于,如果分配超过1个主节点,例如一次性分配两个主节点,那么这两个主节点有可能均分配至所述目标物理机上,导致目标物理机上的主节点数量为6,这样剩下的主节点的数量便只有5,就算这5个主节点全通同意授权请求,也无法超过所述主节点授权通过比例。因此,在本实施方式中,当所述目标数量小于所述参考数量时,需要确定在所述预设数量的物理机上分配主节点的分支数量。所述分支数量可以按照下述公式确定:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
S6:在所述预设数量的物理机上分配所述分支数量的主节点。
在确定出所述分支数量之后,便可以再次在所述预设数量的物理机上分配所述分支数量的主节点。分配分支数量的主节点的方法与分配参考数量的主节点的方法一致,这里便不再赘述。
S7:重复执行S4至S6,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
在本实施方式中,在分配完分支数量的主节点之后,物理机上分布的主节点的数量将会再次改变。此时,为了保证不在同一个物理机上分配过多的主节点,则需要再次确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量。在确定了所述目标数量之后,需要再次将所述目标数量与参考数量进行对比,并根据对比结果进行相应处理。也就是说,在本实施方式中,每分配一次主节点,则需要重复执行一次步骤S4至S6,直至所有待分配的主节点均分配完为止。
由上可见,在本实施方式中,每在所述预设数量的物理机上分配一次主节点后,便可以将主节点的目标数量等于参考数量的物理机从后续分配主节点的流程中剔除,以保证不会在同一个物理机上分配过多的主节点,以保证整个集群能够稳定地将从节点升级为主节点,保证集群能够稳定地提供服务。
本申请还提供一种集群中主节点的分配装置。请参阅图2,所述装置可以包括:
比例获取单元100,用于预先获取所述集群对应的主节点授权通过比例;
参考数量确定单元200,用于确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量;
参考数量主节点分配单元300,用于在所述预设数量的物理机上分配所述参考数量的主节点;
目标数量记录单元400,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
分支数量确定单元500,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
分支数量主节点分配单元600,用于在所述预设数量的物理机上分配所述分支数量的主节点;
循环单元700,用于重复所述目标数量记录单元至所述分支数量主节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
在本申请一优选实施方式中,在所述目标数量记录单元400和所述分支数量主节点分配单元600之间,所述装置还包括:
物理机剔除单元510,用于当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的主节点;
参数重设单元520,用于在除所述目标物理机之外的物理机中,重新确定分配的主节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的主节点的目标数量。
在本申请一优选实施方式中,所述参考数量确定单元200可以按照下述公式确定在所述预设数量的物理机上分配主节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
在本申请一优选实施方式中,所述参考数量主节点分配单元300具体包括:
待分配物理机组筛选模块,用于获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
分配模块,用于将所述参考数量的主节点在所述待分配物理机组中进行分配。
在本申请一优选实施方式中,所述分支数量确定单元500可以按照下述公式确定在所述预设数量的物理机上分配主节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
需要说明的是,上述各个功能模块的具体实现方式均与步骤S1至S7中的描述一致,这里便不再赘述。
由以上本发明实施方式可见,本发明可以预先确定待分配的主节点的参考数量,并在每一次分配主节点的过程中,保证不会在同一个物理机上分配所述参考数量以上的主节点。这样,就算分布主节点最多的物理机宕机,也能保证剩余物理机上分布的主节点能够超过授权请求通过的比例,使得后续选取出的从节点能够正式成为主节点,保证集群能够稳定地提供服务。
本申请实施方式提供一种集群中从节点的分配方法,本实施方式在确定了主节点后,为所述主节点分配从节点。在本实施方式中,所述集群中可以包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
实施例一
如图3所示,本实施例的所述方法可以包括:
步骤S11:确定主节点待分配从节点的数量;
步骤S12:确定在所述预设数量的物理机上分配从节点的参考数量;
步骤S13:在所述预设数量的物理机上分配所述参考数量的从节点;
步骤S14:确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
步骤S15:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
步骤S16:在所述预设数量的物理机上分配所述分支数量的从节点。
在本实施方式中,可以预先获取所述集群对应的主节点授权通过比例,所述主节点授权通过比例可以是一个常数,例如50%。在获取了主节点授权通过比例之后,可以确定待分配主节点的总数量。那么,可以根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量。
同理,当主节点确定后,为主节点分配从节点,需考虑当对集群中的数据节点二进制执行文件升级时,按一定的策略统一关停主节点进行二进制替换。这时从节点已经全部晋升为新的主节点。此时,当一台物理机上从节点数量超过一半时,在进行二进制升级时,该物理机上从节点全部升级为主节点。当该物理机因意外宕机后,则会导致其上的所有新的主节点均不可用。本实施例的从节点分配的方法,可以使选取出来的从节点升级为主节点后,其从属的从节点可以从剩余的主节点处通过超过预设比例的授权请求,以正式成为主节点,能够保证集群的稳定性。
在本实施方式中,可以按照下述公式确定在所述预设数量的物理机上分配从节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
在本实施方式中,在确定了所述参考数量之后,便可以在所述预设数量的物理机上分配所述参考数量的从节点。在本实施方式中,分配所述参考数量的从节点可以采用随机分配的方式,也可以根据物理机的负载情况来进行分配。
在本实施方式中,在分配完所述参考数量的从节点之后,可以记录每个物理机上分配的从节点的数量,最极端的情况是这些参考数量的从节点均分配至同一个物理机上。因此,在本实施方式中,需要确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量。
在本实施方式中,当所述目标数量小于所述参考数量时,说明当前分配的从节点并没有同时分布至同一物理机上。因此还可以向所述预设数量的物理机中继续分配从节点。只不过继续分配的从节点的数量还需要进一步确定。在本实施方式中,当所述目标数量小于所述参考数量时,需要确定在所述预设数量的物理机上分配从节点的分支数量。所述分支数量可以按照下述公式确定:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。在确定出所述分支数量之后,便可以再次在所述预设数量的物理机上分配所述分支数量的从节点。
实施例二
本申请还提供一种集群中从节点的分配装置,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,如图4所示,所述装置可以包括:
数量确定单元10,用于确定主节点待分配从节点的数量;
参考数量确定单元20,用于确定在所述预设数量的物理机上分配从节点的参考数量;
从节点分配单元30,用于在所述预设数量的物理机上分配所述参考数量的从节点;
从节点数量统计单元40,用于确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
分支数量确定单元50,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
分支节点分配单元60,用于在所述预设数量的物理机上分配所述分支数量的从节点。
上述各个单元的具体实现方式与步骤S11至步骤S16中的描述一致,这里便不再赘述。
实施例三
图5为本申请实施方式提供的一种集群中从节点的分配方法流程图。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。如图5所示,所述方法可以包括:
S101:预先获取所述集群对应的主节点授权通过比例。
在本实施方式中,可以预先获取所述集群对应的主节点授权通过比例。所述主节点授权通过比例可以按照下述规则确定:
假设集群中共分配了预设总数量的主节点,当其中一个主节点停止服务后,可以从该主节点的从节点中选取一个从节点。选取出的该从节点可以向剩余的主节点发送授权请求。当同意该授权请求的主节点的数量在所述预设总数量中所占的比例超过所述主节点授权通过比例时,选取出的该从节点便可以正式成为新的主节点。
例如,当前集群中共有10个主节点,这10个主节点可以分布于4台不同的物理机上。此时,分布了预设主节点的某个物理机发生故障宕机了,导致该预设主节点不可用。在这种情况下,该预设主节点的多个从节点中的一个从节点会被选取出来,选取的条件可以如下所述:
选取出的节点是停止工作的主节点的从节点并且停止工作的主节点负责处理的哈希槽的数量非空。此外,选取出的节点与停止工作的主节点之间的复制连接(replication link)的断线时长不能超过预设的时限。
在选取出从节点后,该从节点可以向剩余的其它主节点发起授权请求,以向剩余的其它主节点询问是否可以升级为新的主节点。
当剩余的其它主节点接收到从节点发来的授权请求时,判断发送该授权请求的从节点是否满足以下条件:
1)发送授权请求的是一个从节点,并且其所属的主节点处于停止服务状态;
2)在已停止服务状态的该主节点对应的所有从节点中,发送授权请求的从节点的ID是最小的;
3)发送授权请求的从节点处于正常的运行状态。
当发送授权请求的从节点同时满足上述三个条件时,接收到授权请求的主节点便可以同意该授权请求。
那么,当同意授权请求的主节点的数量在主节点总数量中的比例超过所述主节点授权通过比例时,发送授权请求的从节点便可以升级为新的主节点。
在本申请中,在获取了所述集群对应的主节点授权通过比例之后,当主节点不可用时,可以从该主节点的从节点中选取一个从节点。选取出的该从节点可以向剩余的主节点发送授权请求。当同意该授权请求的主节点的数量在所述预设总数量中所占的比例超过所述主节点授权通过比例时,选取出的该从节点便可以正式成为新的主节点,从而能够保证系统的正常运行。
当进行主节点二进制文件升级,从节点升级为主节点时,为确保集群的稳定性也要求从节点按照上述规则进行分配。
S102:确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量。
在本实施方式中,在获取了主节点授权通过比例之后,可以确定主节点待分配的从节点的总数量。那么,可以根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量。
在本实施方式中,所述参考数量可以为在同一个物理机上分配从节点的最大数量。一旦超过所述参考数量,那么当进行主节点二进制文件升级,分配从节点最多的物理机宕机时,则可能导致剩下的升级的主节点的数量不足以使得选取的从节点能够升级成为主节点。因此,所述参考数量与所述总数量以及主节点授权通过比例具备对应关系。在本实施方式中,可以按照下述公式确定在所述预设数量的物理机上分配从节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
举例来说明,假设当前预计分配从节点的总数量为11个,而所述主节点授权通过比例为50%,那么根据上述公式可以得到总数量与主节点授权通过比例的乘积为5.5,通过向下取整运算后,便可以得到所述参考数量为5。如果预计分配从节点的总数量为10个,而所述主节点授权通过比例为50%,那么根据上述公式可以得到总数量与主节点授权通过比例的乘积为5,通过向下取整运算后,便可以得到所述参考数量同样为5。由此可见,分布在同一个物理机上的从节点的数量不能等于或者大于所述参考数量,否则当进行主节点二进制文件升级,该物理机宕机时,剩余的新升级为主节点的数量在总数量中所占的比例便可能不会超过主节点授权通过比例,导致选取的从节点无法升级成为主节点,从而导致集群整体瘫痪。
S103:在所述预设数量的物理机上分配所述参考数量的从节点。
在本实施方式中,在确定了所述参考数量之后,便可以在所述预设数量的物理机上分配所述参考数量的从节点。在本实施方式中,分配所述参考数量的从节点可以采用随机分配的方式,也可以根据物理机的负载情况来进行分配。可选地,在本申请一优选实施方式中,为了保证物理机资源使用的最大化,可以获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组。所述负载参数例如可以为CPU使用率、内存使用率等可以表明物理机当前工作状态的参数。这样,根据所述负载参数,便可以从所述预设数量的物理机中筛选出负载较小的多个物理机,这些负载较小的物理机便可以构成待分配物理机组。这样,便可以将所述参考数量的主节点在所述待分配物理机组中进行分配。具体的分配方式例如可以是在所述待分配物理机组中随机分配。
S104:确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量。
在本实施方式中,在分配完所述参考数量的从节点之后,可以记录每个物理机上分配的从节点的数量,最极端的情况是这些参考数量的从节点均分配至同一个物理机上。因此,在本实施方式中,需要确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量。
在本实施方式中,在记录了所述目标数量之后,为了确保不会在同一个物理机上分布过多的从节点,可以将所述目标数量与所述参考数量进行对比,当所述目标数量等于所述参考数量时,表明当前所有的从节点均分配至了同一个物理机上。假设所述主节点授权通过比例为50%,如果后续再向该物理机分配任意一个从节点,那么在该物理机上分布的从节点的数量将会超过总数量的一半。因此,当所述目标数量等于所述参考数量时,则不再向所述目标物理机分配额外的从节点。也就是说,当所述目标数量等于所述参考数量时,将所述目标物理机从后续分配从节点的对象中移除,以避免在其上分配过多的从节点。
在将所述目标物理机从后续分配从节点的对象中移除后,便可以在除所述目标物理机之外的物理机中,重新确定分配的从节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的从节点的目标数量。
S105:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量。
在本实施方式中,当所述目标数量小于所述参考数量时,说明当前分配的从节点并没有同时分布至同一物理机上。因此还可以向所述预设数量的物理机中继续分配从节点。只不过继续分配的从节点的数量还需要进一步确定。原因在于,假设从节点的总数量为11,主节点授权通过比例为50%,那么参考数量为5,而经过第一次从节点分配之后,所述目标物理机上分布的从节点的目标数量可能并没有达到5,但该目标数量也可以很大,例如可以为4。由于分配从节点时往往采取随机分配的方式,因此,在后续分配从节点的过程中,只能再向所述预设数量的物理机中分配1个从节点。原因在于,如果分配超过1个从节点,例如一次性分配两个从节点,那么这两个从节点有可能均分配至所述目标物理机上,导致目标物理机上的从节点数量为6,这样剩下的从节点的数量便只有5,就算这5个从节点全通过同意授权请求,也无法超过所述主节点授权通过比例。因此,在本实施方式中,当所述目标数量小于所述参考数量时,需要确定在所述预设数量的物理机上分配从节点的分支数量。所述分支数量可以按照下述公式确定:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
S106:在所述预设数量的物理机上分配所述分支数量的从节点。
在确定出所述分支数量之后,便可以再次在所述预设数量的物理机上分配所述分支数量的从节点。分配分支数量的从节点的方法与分配参考数量的从节点的方法一致,这里便不再赘述。
重复执行S104至S106,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
在本实施方式中,在分配完分支数量的从节点之后,物理机上分布的从节点的数量将会再次改变。此时,为了保证不在同一个物理机上分配过多的从节点,则需要再次确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机,并记录所述目标物理机上分配的从节点的目标数量。在确定了所述目标数量之后,需要再次将所述目标数量与参考数量进行对比,并根据对比结果进行相应处理。也就是说,在本实施方式中,每分配一次从节点,则需要重复执行一次步骤S4至S6,直至所有待分配的从节点均分配完为止。
由上可见,在本实施方式中,每在所述预设数量的物理机上分配一次从节点后,便可以将从节点的目标数量等于参考数量的物理机从后续分配从节点的流程中剔除,以保证不会在同一个物理机上分配过多的从节点,以保证进行主节点二进制文件升级,从节点升级为主节点时,整个集群能够稳定地将从节点升级为主节点,保证集群能够稳定地提供服务。
实施例四
本申请还提供一种集群中从节点的分配装置。请参阅图6,所述装置可以包括:
比例获取单元1100,用于预先获取所述集群对应的主节点授权通过比例;
参考数量确定单元1200,用于确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量;
参考数量从节点分配单元1300,用于在所述预设数量的物理机上分配所述参考数量的从节点;
目标数量记录单元1400,用于确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机,并记录所述目标物理机上分配的从节点的目标数量;
分支数量确定单元1500,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
分支数量从节点分配单元1600,用于在所述预设数量的物理机上分配所述分支数量的从节点;
循环单元1700,用于重复所述目标数量记录单元至所述分支数量从节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
实施例五
在本实施例中,在所述目标数量记录单元1400和所述分支数量主节点分配单元1600之间,如图7所示,所述装置还包括:
物理机剔除单元1510,用于当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的从节点;
参数重设单元1520,用于在除所述目标物理机之外的物理机中,重新确定分配的从节点的数量最多的目标物理机,并记录重新确定的目标物理机上分配的从节点的目标数量。
在本申请一可选实施方式中,所述参考数量确定单元1200可以按照下述公式确定在所述预设数量的物理机上分配从节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
在本申请一可选实施方式中,所述参考数量主节点分配单元300具体包括:
待分配物理机组筛选模块,用于获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
分配模块,用于将所述参考数量的从节点在所述待分配物理机组中进行分配。
在本申请一可选实施方式中,所述分支数量确定单元500可以按照下述公式确定在所述预设数量的物理机上分配从节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
需要说明的是,上述各个功能模块的具体实现方式均与步骤S1至S7中的描述一致,这里便不再赘述。
由以上本发明实施方式可见,本发明实施例可以预先确定主节点待分配的从节点的参考数量,并在每一次分配从节点的过程中,保证不会在同一个物理机上分配所述参考数量以上的从节点。这样,就算分布从节点最多的物理机宕机,也能保证剩余物理机上分布的从节点能够超过授权请求通过的比例,使得当进行主节点二进制文件升级,从节点升级为主节点时,后续选取出的从节点能够正式成为主节点,保证集群能够稳定地提供服务。
上面对本申请的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本申请的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本申请旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。

Claims (24)

1.一种集群中主节点的分配方法,所述集群中包括预设数量的物理机,
所述主节点分布于所述预设数量的物理机上,其特征在于,所述方法包括:
S1:预先获取所述集群对应的主节点授权通过比例;
S2:确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量;
S3:在所述预设数量的物理机上分配所述参考数量的主节点;
S4:确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
S5:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
S6:在所述预设数量的物理机上分配所述分支数量的主节点;
S7:重复执行S4至S6,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
2.根据权利要求1所述的方法,其特征在于,在步骤S4和步骤S6之间,所述方法还包括:
S50:当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的主节点;
S51:在除所述目标物理机之外的物理机中,重新确定分配的主节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的主节点的目标数量。
3.根据权利要求1所述的方法,其特征在于,按照下述公式确定在所述预设数量的物理机上分配主节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
4.根据权利要求1所述的方法,其特征在于,在所述预设数量的物理机上分配所述参考数量的主节点具体包括:
获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
将所述参考数量的主节点在所述待分配物理机组中进行分配。
5.根据权利要求1所述的方法,其特征在于,当所述目标数量小于所述参考数量时,按照下述公式确定在所述预设数量的物理机上分配主节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
6.一种集群中主节点的分配装置,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,其特征在于,所述装置包括:
比例获取单元,用于预先获取所述集群对应的主节点授权通过比例;
参考数量确定单元,用于确定待分配主节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配主节点的参考数量;
参考数量主节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的主节点;
目标数量记录单元,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
分支数量主节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的主节点;
循环单元,用于重复所述目标数量记录单元至所述分支数量主节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的主节点为止。
7.根据权利要求6所述的装置,其特征在于,在所述目标数量记录单元和所述分支数量主节点分配单元之间,所述装置还包括:
物理机剔除单元,用于当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的主节点;
参数重设单元,用于在除所述目标物理机之外的物理机中,重新确定分配的主节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的主节点的目标数量。
8.根据权利要求6所述的装置,其特征在于,所述参考数量确定单元按照下述公式确定在所述预设数量的物理机上分配主节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
9.根据权利要求6所述的装置,其特征在于,所述参考数量主节点分配单元具体包括:
待分配物理机组筛选模块,用于获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
分配模块,用于将所述参考数量的主节点在所述待分配物理机组中进行分配。
10.根据权利要求6所述的装置,其特征在于,所述分支数量确定单元按照下述公式确定在所述预设数量的物理机上分配主节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
11.一种集群中主节点的分配方法,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,其特征在于,所述方法包括:
确定待分配主节点的数量;
确定在所述预设数量的物理机上分配主节点的参考数量;
在所述预设数量的物理机上分配所述参考数量的主节点;
确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
在所述预设数量的物理机上分配所述分支数量的主节点。
12.一种集群中主节点的分配装置,所述集群中包括预设数量的物理机,所述主节点分布于所述预设数量的物理机上,其特征在于,所述装置包括:
数量确定单元,用于确定待分配主节点的数量;
参考数量确定单元,用于确定在所述预设数量的物理机上分配主节点的参考数量;
主节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的主节点;
主节点数量统计单元,用于确定所述预设数量的物理机中分配的主节点的数量最多的目标物理机并记录所述目标物理机上分配的主节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配主节点的分支数量;
分支节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的主节点。
13.一种集群中从节点的分配方法,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,其特征在于,所述方法包括:
S101:预先获取所述集群对应的主节点授权通过比例;
S102:确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量;
S103:在所述预设数量的物理机上分配所述参考数量的从节点;
S104:确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
S105:当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
S106:在所述预设数量的物理机上分配所述分支数量的从节点;
S107:重复执行S104至S106,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
14.根据权利要求13所述的方法,其特征在于,在步骤S104和步骤S106之间,所述方法还包括:
当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的从节点;
在除所述目标物理机之外的物理机中,重新确定分配的从节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的从节点的目标数量。
15.根据权利要求13所述的方法,其特征在于,按照下述公式确定在所述预设数量的物理机上分配从节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
16.根据权利要求13所述的方法,其特征在于,在所述预设数量的物理机上分配所述参考数量的从节点具体包括:
获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
将所述参考数量的从节点在所述待分配物理机组中进行分配。
17.根据权利要求13所述的方法,其特征在于,当所述目标数量小于所述参考数量时,按照下述公式确定在所述预设数量的物理机上分配从节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
18.一种集群中从节点的分配装置,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,其特征在于,所述装置包括:
比例获取单元,用于预先获取所述集群对应的主节点授权通过比例;
参考数量确定单元,用于确定主节点待分配的从节点的总数量,并根据所述总数量以及所述主节点授权通过比例,确定在所述预设数量的物理机上分配从节点的参考数量;
参考数量从节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的从节点;
目标数量记录单元,用于确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
分支数量从节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的从节点;
循环单元,用于重复所述目标数量记录单元至所述分支数量从节点分配单元的执行过程,直至在所述预设数量的物理机上分配完所述总数量的从节点为止。
19.根据权利要求18所述的装置,其特征在于,在所述目标数量记录单元和所述分支数量从节点分配单元之间,所述装置还包括:
物理机剔除单元,用于当所述目标数量等于所述参考数量时,不再向所述目标物理机分配额外的从节点;
参数重设单元,用于在除所述目标物理机之外的物理机中,重新确定分配的从节点的数量最多的目标物理机并记录重新确定的目标物理机上分配的从节点的目标数量。
20.根据权利要求18所述的装置,其特征在于,所述参考数量确定单元按照下述公式确定在所述预设数量的物理机上分配从节点的参考数量:
其中,M表示所述参考数量,T表示所述总数量,s表示所述主节点授权通过比例,表示向下取整运算。
21.根据权利要求18所述的装置,其特征在于,所述参考数量从节点分配单元具体包括:
待分配物理机组筛选模块,用于获取所述预设数量的物理机中各个物理机对应的负载参数,并根据获取的所述负载参数从所述预设数量的物理机中筛选出待分配物理机组;
分配模块,用于将所述参考数量的从节点在所述待分配物理机组中进行分配。
22.根据权利要求18所述的装置,其特征在于,所述分支数量确定单元按照下述公式确定在所述预设数量的物理机上分配从节点的分支数量:
F=M-L
其中,F表示所述分支数量,M表示所述参考数量,L表示所述目标数量。
23.一种集群中从节点的分配方法,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,其特征在于,所述方法包括:
确定主节点待分配的从节点的数量;
确定在所述预设数量的物理机上分配从节点的参考数量;
在所述预设数量的物理机上分配所述参考数量的从节点;
确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
在所述预设数量的物理机上分配所述分支数量的从节点。
24.一种集群中从节点的分配装置,所述集群中包括预设数量的物理机,所述从节点分布于所述预设数量的物理机上,其特征在于,所述装置包括:
数量确定单元,用于确定主节点待分配的从节点的数量;
参考数量确定单元,用于确定在所述预设数量的物理机上分配从节点的参考数量;
从节点分配单元,用于在所述预设数量的物理机上分配所述参考数量的从节点;
从节点数量统计单元,用于确定所述预设数量的物理机中分配的从节点的数量最多的目标物理机并记录所述目标物理机上分配的从节点的目标数量;
分支数量确定单元,用于当所述目标数量小于所述参考数量时,确定在所述预设数量的物理机上分配从节点的分支数量;
分支节点分配单元,用于在所述预设数量的物理机上分配所述分支数量的从节点。
CN201610648202.6A 2016-07-15 2016-08-09 一种集群中主节点及从节点的分配方法及装置 Active CN107623711B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610562606 2016-07-15
CN2016105626063 2016-07-15

Publications (2)

Publication Number Publication Date
CN107623711A true CN107623711A (zh) 2018-01-23
CN107623711B CN107623711B (zh) 2020-07-28

Family

ID=61086920

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610648202.6A Active CN107623711B (zh) 2016-07-15 2016-08-09 一种集群中主节点及从节点的分配方法及装置

Country Status (1)

Country Link
CN (1) CN107623711B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107786365A (zh) * 2016-08-31 2018-03-09 北京金山云网络技术有限公司 一种集群扩容方法及装置
CN110968762A (zh) * 2019-12-05 2020-04-07 北京天融信网络安全技术有限公司 一种用于检索的调整方法及装置
CN114189495A (zh) * 2021-12-16 2022-03-15 平安壹账通云科技(深圳)有限公司 基于域名的节点调度方法、系统、终端和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902379A (zh) * 2012-12-25 2014-07-02 中国移动通信集团公司 一种任务调度方法、装置及服务器集群
CN104601364A (zh) * 2014-12-03 2015-05-06 华为技术有限公司 一种管理集群中成员管理方法及装置
CN105335219A (zh) * 2014-07-08 2016-02-17 阿里巴巴集团控股有限公司 一种基于分布式的任务调度方法及系统
CN105337765A (zh) * 2015-10-10 2016-02-17 上海新炬网络信息技术有限公司 一种分布式hadoop集群故障自动诊断修复系统
WO2016037262A8 (en) * 2014-09-09 2016-04-21 Viscore Technologies Inc. Low latency optically distributed dynamic optical interconnection networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902379A (zh) * 2012-12-25 2014-07-02 中国移动通信集团公司 一种任务调度方法、装置及服务器集群
CN105335219A (zh) * 2014-07-08 2016-02-17 阿里巴巴集团控股有限公司 一种基于分布式的任务调度方法及系统
WO2016037262A8 (en) * 2014-09-09 2016-04-21 Viscore Technologies Inc. Low latency optically distributed dynamic optical interconnection networks
CN104601364A (zh) * 2014-12-03 2015-05-06 华为技术有限公司 一种管理集群中成员管理方法及装置
CN105337765A (zh) * 2015-10-10 2016-02-17 上海新炬网络信息技术有限公司 一种分布式hadoop集群故障自动诊断修复系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107786365A (zh) * 2016-08-31 2018-03-09 北京金山云网络技术有限公司 一种集群扩容方法及装置
CN110968762A (zh) * 2019-12-05 2020-04-07 北京天融信网络安全技术有限公司 一种用于检索的调整方法及装置
CN110968762B (zh) * 2019-12-05 2023-07-18 北京天融信网络安全技术有限公司 一种用于检索的调整方法及装置
CN114189495A (zh) * 2021-12-16 2022-03-15 平安壹账通云科技(深圳)有限公司 基于域名的节点调度方法、系统、终端和存储介质

Also Published As

Publication number Publication date
CN107623711B (zh) 2020-07-28

Similar Documents

Publication Publication Date Title
CN101150440B (zh) 管理许可证的方法和装置
CN108268317B (zh) 一种资源分配方法及装置
US8392928B1 (en) Automated workload placement recommendations for a data center
CN102053859B (zh) 批量数据处理的方法与装置
CN106406983A (zh) 一种集群中的任务调度方法及装置
CN110333937A (zh) 任务分发方法、装置、计算机设备和存储介质
CN105045871B (zh) 数据聚合查询方法及装置
CN107623711A (zh) 一种集群中主节点及从节点的分配方法及装置
CN104317650A (zh) 一种面向Map/Reduce型海量数据处理平台的作业调度方法
US8984521B2 (en) Computer system performance by applying rate limits to control block tenancy
WO2009024921A2 (en) System and method for managing license capacity in a telecommunication network
CN106406987A (zh) 一种集群中的任务执行方法及装置
CN109582447A (zh) 计算资源分配方法、任务处理方法及装置
CN105912403A (zh) Docker容器的资源管理方法及装置
CN106101017B (zh) 一种线路流量控制方法及装置
CN106708608A (zh) 一种分布式锁服务方法、获取方法及相应装置
CN113608878A (zh) 一种基于资源权重计算的任务分布式调度方法与系统
CN106648900A (zh) 基于智能电视的超算方法及系统
CN108664321A (zh) 系统资源分配调整方法及装置
CN107291720A (zh) 一种实现批量数据处理的方法、系统和计算机集群
CN103440113B (zh) 一种磁盘io资源分配方法和装置
CN107172193A (zh) 一种基于集群的负载均衡方法及其装置
CN106126339B (zh) 资源调整方法和装置
CN107168800A (zh) 一种内存分配方法及装置
CN106775925A (zh) 一种虚拟机cpu的限额处理方法和装置

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