An embodiment of the invention discloses a method and device for the expansion of the cluster. Among them, the method includes: the number of main target nodes obtained after expansion; according to the number of targets and a preset proportion, determine the maximum number of the same physical expansion machine comprises a main node; determining the current number of physical machines including the main node is less than the maximum number for the target machine; the first number of the first physical machine based on the master node with the maximum number, determine the number of nodes in the current distribution of the second main needs; the second number of master node distribution in the physical machine; judging whether the cluster expansion; if not, return the implementation steps to determine the number of physical machines currently includes a master node is less than the maximum number of physical machine. The application of the embodiment of the invention provides the guarantee scheme, cluster horizontal expansion, all the main node down any physical machine in the cluster failure so that the physical machine contains, the entire cluster can still work.
【技术实现步骤摘要】
一种集群扩容方法及装置
本专利技术涉及计算机
,特别涉及一种集群扩容方法及装置。
技术介绍
集群的扩容方式,包括纵向扩容和横向扩容,纵向扩容指增加集群中已经存在的某些主节点的容量,横向扩容指增加新的主节点来增加整个集群的容量。现有技术中,基于openstack(一种开源的云计算管理平台项目)管理平台等云计算管理平台对集群进行横向扩容时,会根据各个物理机上的存储负载来确定新的主节点分配到哪台物理机上。对于无中心节点的集群,例如redis(一种开源的Key-Value数据库)集群,此类集群为了保证数据的高可用性,设置了主从模式,即:一个主节点对应一个或多个从节点,主节点提供数据存取,从节点则是从主节点拉取数据备份,当这个主节点宕机后,就会从该主节点对应的从节点中选举一个从节点来充当主节点,保证整个集群仍然可以正常工作。现有技术中,上述从节点想要升级成为主节点,必须要求该从节点得到当前集群中超过预设比例的主节点的授权,例如,从节点要获得当前集群中超过半数的主节点的授权,才可以升级为主节点。但是,当集群横向扩容后,某一物理机中包含的主节点的数目过多,以致集群中除该物 ...
【技术保护点】
一种集群扩容方法,其特征在于,所述方法包括:获得扩容后主节点的目标数目;根据所述目标数目和预设比例,确定扩容后同一物理机所包含主节点的最大数目,其中,所述预设比例为:所述集群中从节点升级为主节点时,向从节点授权的主节点数目占主节点总数目的最小比例;确定当前包含主节点的数目小于所述最大数目的物理机为目标物理机;基于第一物理机所包含主节点的第一数目与所述最大数目,确定当前需要分配的主节点的第二数目,其中,所述第一物理机为:所述目标物理机中包含主节点数目最多的物理机;将所述第二数目个主节点在所述目标物理机中分配;判断是否完成集群扩容;如果否,返回执行所述确定当前包含主节点的数目小 ...
【技术特征摘要】
1.一种集群扩容方法,其特征在于,所述方法包括:获得扩容后主节点的目标数目;根据所述目标数目和预设比例,确定扩容后同一物理机所包含主节点的最大数目,其中,所述预设比例为:所述集群中从节点升级为主节点时,向从节点授权的主节点数目占主节点总数目的最小比例;确定当前包含主节点的数目小于所述最大数目的物理机为目标物理机;基于第一物理机所包含主节点的第一数目与所述最大数目,确定当前需要分配的主节点的第二数目,其中,所述第一物理机为:所述目标物理机中包含主节点数目最多的物理机;将所述第二数目个主节点在所述目标物理机中分配;判断是否完成集群扩容;如果否,返回执行所述确定当前包含主节点的数目小于所述最大数目的物理机为目标物理机。2.根据权利要求1所述的方法,其特征在于,所述获得扩容后主节点的目标数目,包括:确定扩容前所述集群中包含主节点数目最多的物理机所包含主节点的第三数目;基于所述第三数目以及所述预设比例,获得扩容后主节点的目标数目。3.根据权利要求2所述的方法,其特征在于,所述基于所述第三数目以及所述预设比例,获得扩容后主节点的目标数目,包括:将满足以下表达式的任一整数A确定为扩容后主节点的目标数目:其中,N1表示所述第三数目,Th表示所述预设比例,Ceiling()表示向上取整函数。4.根据权利要求1所述的方法,其特征在于,所述根据所述目标数目和预设比例,确定扩容后同一物理机所包含主节点的最大数目,包括:基于以下表达式确定目标取值:式中,B表示所述目标取值,N2表示所述目标数目,Th表示所述预设比例,Floor()表示向下取整函数;将不大于所述目标取值的整数确定为扩容后同一物理机所包含主节点的最大数目。5.根据权利要求1所述的方法,其特征在于,所述基于第一物理机所包含主节点的第一数目与所述最大数目,确定当前需要分配的主节点的第二数目,包括:将满足以下表达式的任一整数X确定为当前需要分配的主节点的第二数目:X≤min{N4-N3,N5-N6};其中,N3表示第一物理机所包含主节点的第一数目,N4表示所述最大数目,N5表示所述目标数...
【专利技术属性】
技术研发人员:申航,
申请(专利权)人:北京金山云网络技术有限公司,北京金山云科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。