CN115454962A - 集群平滑迁移方法及装置 - Google Patents
集群平滑迁移方法及装置 Download PDFInfo
- Publication number
- CN115454962A CN115454962A CN202211077866.3A CN202211077866A CN115454962A CN 115454962 A CN115454962 A CN 115454962A CN 202211077866 A CN202211077866 A CN 202211077866A CN 115454962 A CN115454962 A CN 115454962A
- Authority
- CN
- China
- Prior art keywords
- cluster
- information
- theme
- migration
- scale
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种集群平滑迁移方法及装置,涉及分布式领域,方法包括:根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作;本申请能够有效提高集群迁移时的可靠性和准确性。
Description
技术领域
本申请涉及分布式领域,具体涉及一种集群平滑迁移方法及装置。
背景技术
Kafka作为一个高吞吐的分布式消息系统,已经被应用在很多大型公司的实际业务中。有时候因为基础设施改造等原因,Kafka集群需要迁移到新的设备上运行。目前的迁移技术一般是预先在新设备上搭建和旧集群完全一致的Kafka新集群,然后旧集群上游停止发送数据,接着旧集群下游将存量数据消费完,下游确认消费完后切换到新集群上消费数据,最后上游切换到新集群发送数据。
现有迁移技术的操作比较复杂,因为大部分集群都是包含多个上游和下游的,要全部上下游一起协商好迁移的时间和顺序是很困难的,而且上下游都需要停机进行迁移,对于一些不能停机或者停机影响较大的业务来说是不可行的。另外,这种迁移技术没有把存量的数据迁移到新集群上,如果某些下游需要回溯到之前的数据重新消费,现有迁移技术也是不支持的。
发明内容
针对现有技术中的问题,本申请提供一种集群平滑迁移方法及装置,能够有效提高集群迁移时的可靠性和准确性。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
第一方面,本申请提供一种集群平滑迁移方法,包括:
根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;
根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;
根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
进一步地,在所述根据所述主题重分布信息进行主题迁移之后,包括:
验证所述主题迁移是否执行成功;
若成功,则启动旧节点缩容操作,否则执行任务回退操作。
进一步地,所述根据所述集群基本信息和集群主题信息确定需扩容规模,包括:
根据集群内主题近一周事务处理量、消息体平均大小以及消息保留周期信息计算所有主题的最大带宽以及所需存储;
根据单节点所能支撑带宽以及存储计算集群规模;
根据所述最大带宽、所述所需存储以及所述集群规模确定需扩容规模。
进一步地,所述根据所述需扩容规模进行横向扩容,包括:
将与消息中间件版本对应的介质信息下发至新节点,并在所述新节点上安装启动所述消息中间件;
将所述新节点加入待迁移集群。
进一步地,所述根据所述主题重分布信息进行主题迁移,包括:
将所述主题重分布信息转换未JSON文件并下发至集群内任意节点上;
根据所述JSON文件执行主题副本迁移操作。
进一步地,所述在所述主题迁移完成后对相应的旧节点进行缩容操作,包括:
校验旧节点上是否存在未迁移主题;
若是,则登录所述旧节点并执行消息中间件卸载操作。
第二方面,本申请提供一种集群平滑迁移装置,包括:
扩容规模确定模块,用于根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;
重分布信息确定模块,用于根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;
主题迁移模块,用于根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的集群平滑迁移方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的集群平滑迁移方法的步骤。
第五方面,本申请提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的集群平滑迁移方法的步骤。
由上述技术方案可知,本申请提供一种集群平滑迁移方法及装置,通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的集群平滑迁移方法的流程示意图之一;
图2为本申请实施例中的集群平滑迁移方法的流程示意图之二;
图3为本申请实施例中的集群平滑迁移方法的流程示意图之三;
图4为本申请实施例中的集群平滑迁移方法的流程示意图之四;
图5为本申请实施例中的集群平滑迁移方法的流程示意图之五;
图6为本申请实施例中的集群平滑迁移方法的流程示意图之六;
图7为本申请实施例中的集群平滑迁移装置的结构图;
图8为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
考虑到现有技术中存在的问题,本申请提供一种集群平滑迁移方法及装置,通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
为了能够有效提高集群迁移时的可靠性和准确性,本申请提供一种集群平滑迁移方法的实施例,参见图1,所述集群平滑迁移方法具体包含有如下内容:
步骤S101:根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模。
可选的,本申请可以选择待迁移集群,确定需要迁移的集群,将对应的集群标识输入到评估规模模块,然后,计算迁移节点规模,评估规模模块根据输入的集群标识查找对应的集群和主题信息,计算迁移节点所需的节点数以及其配置,输出需扩容规模信息。
步骤S102:根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息。
可选的,本申请可以将需扩容规模信息输入到集群扩容模块,集群扩容模块根据输入信息对集群进行横向扩容。
步骤S103:根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
可选的,本申请可以在扩容成功后根据新节点信息以及主题副本分布信息计算迁移后主题副本分布信息,输出为主题重分布信息,将主题重分布信息输入到主题迁移模块,主题迁移模块根据输入信息对主题进行迁移,迁移后会验证是否成功,如果成功则通知集群缩容模块,否则回退。接收到主题迁移成功的信息后,对旧节点进行缩容操作,缩容成功后输出集群迁移成功信息。
从上述描述可知,本申请实施例提供的集群平滑迁移方法,能够通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
在本申请的集群平滑迁移方法的一实施例中,参见图2,还可以具体包含如下内容:
步骤S201:验证所述主题迁移是否执行成功。
步骤S202:若成功,则启动旧节点缩容操作,否则执行任务回退操作。
可选的,本申请可以根据输入信息对主题进行迁移,迁移后会验证是否成功,如果成功则通知集群缩容模块,否则回退
在本申请的集群平滑迁移方法的一实施例中,参见图3,还可以具体包含如下内容:
步骤S301:根据集群内主题近一周事务处理量、消息体平均大小以及消息保留周期信息计算所有主题的最大带宽以及所需存储。
步骤S302:根据单节点所能支撑带宽以及存储计算集群规模。
步骤S303:根据所述最大带宽、所述所需存储以及所述集群规模确定需扩容规模。
可选的,本申请可以根据集群内主题近一周tps、消息体平均大小、消息保留周期等信息计算所有主题的最大带宽以及所需存储(计算公式:主题最大带宽=主题近一周tps峰值×消息体平均大小;主题所需存储=主题近一周tps均值×消息体平均大小×消息保留周期),接着根据单节点所能支撑带宽以及存储计算集群的规模(计算公式:集群规模=MAX(Σ主题最大带宽÷单节点所能支撑带宽,Σ主题所需存储÷单节点所能支撑存储)),最后会生成需扩容规模信息。需扩容规模信息每行记录代表一个节点信息,包含节点ip、Kafka版本、节点部署区域、登录用户名和登录密码等信息。
在本申请的集群平滑迁移方法的一实施例中,参见图4,还可以具体包含如下内容:
步骤S401:将与消息中间件版本对应的介质信息下发至新节点,并在所述新节点上安装启动所述消息中间件。
步骤S402:将所述新节点加入待迁移集群。
可选的,本申请可以将扩容规模信息导入到集群扩容模块后,首先会通过输入的用户名和密码验证节点是否能连接成功,验证通过后根据输入的Kafka版本将对应的介质从平滑迁移装置下发到每个新节点上,所有节点都下发成功后执行安装Kafka命令,Kafka安装成功后启动Kafka进程,将新节点加入到待迁移集群内。成功扩容后会根据当前的主题分布信息计算迁移后副本分布信息(计算策略是原封不动地进行迁移,例如主题1分布在1,2旧节点上,主题2分布在1,3旧节点上,迁移后主题1分布在1`,2`新节点上,主题2分布在1`,3`新节点上),然后生成主题重分布信息,主题重分布信息每行记录代表一个主题信息,包含主题的名称、分区数、副本数、消息保留周期、迁移前副本分布,迁移后副本分布等信息。
在本申请的集群平滑迁移方法的一实施例中,参见图5,还可以具体包含如下内容:
步骤S501:将所述主题重分布信息转换未JSON文件并下发至集群内任意节点上。
步骤S502:根据所述JSON文件执行主题副本迁移操作。
可选的,本申请可以将主题重分布信息导入到主题迁移模块后,首先会根据输入的迁移后副本分布信息校验输入节点是否在集群内,校验通过后将迁移后副本信息转化为JSON文件,然后下发到集群内随机一个正常节点上,下发成功后根据JSON文件执行副本迁移命令。具体迁移步骤:首先在新节点上创建主题的新副本,新副本会不断地从主副本同步消息,当新副本都同步到最新消息时,旧节点上的主副本就会切换到新副本上,切换成功后旧节点上的副本就会被删除。通过该方式主题内的消息能够完整地迁移到新节点上,使得主题消息不丢失、不重复,而且下游应用能回溯消费。虽然主副本切换期间主题会有一小段时间不可用,但是上下游客户端会自动进行重试,所以还是对客户端无影响的。如果迁移失败,会根据迁移前副本分布信息将主题回退为原来的分布状态;如果迁移成功则会通知集群缩容模块继续进行下一步操作。
在本申请的集群平滑迁移方法的一实施例中,参见图6,还可以具体包含如下内容:
步骤S601:校验旧节点上是否存在未迁移主题。
步骤S602:若是,则登录所述旧节点并执行消息中间件卸载操作。
可选的,本申请可以从集群缩容模块接收到迁移成功的信息后,集群缩容模块会校验旧节点上是否还有主题没有迁移,校验通过后登录所有旧节点执行卸载Kafka命令,全部卸载成功后返回集群迁移成功的提示给前端。
为了能够有效提高集群迁移时的可靠性和准确性,本申请提供一种用于实现所述集群平滑迁移方法的全部或部分内容的集群平滑迁移装置的实施例,参见图7,所述集群平滑迁移装置具体包含有如下内容:
扩容规模确定模块10,用于根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模。
重分布信息确定模块20,用于根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息。
主题迁移模块30,用于根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
从上述描述可知,本申请实施例提供的集群平滑迁移装置,能够通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
从硬件层面来说,为了能够有效提高集群迁移时的可靠性和准确性,本申请提供一种用于实现所述集群平滑迁移方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现集群平滑迁移装置与核心业务系统、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的集群平滑迁移方法的实施例,以及集群平滑迁移装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,集群平滑迁移方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
图8为本申请实施例的电子设备9600的系统构成的示意框图。如图8所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图8是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,集群平滑迁移方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
步骤S101:根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模。
步骤S102:根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息。
步骤S103:根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
从上述描述可知,本申请实施例提供的电子设备,通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
在另一个实施方式中,集群平滑迁移装置可以与中央处理器9100分开配置,例如可以将集群平滑迁移装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现集群平滑迁移方法功能。
如图8所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图8中所示的所有部件;此外,电子设备9600还可以包括图8中没有示出的部件,可以参考现有技术。
如图8所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的集群平滑迁移方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的集群平滑迁移方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤S101:根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模。
步骤S102:根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息。
步骤S103:根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
从上述描述可知,本申请实施例提供的计算机可读存储介质,通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的集群平滑迁移方法中全部步骤的一种计算机程序产品,该计算机程序/指令被处理器执行时实现所述的集群平滑迁移方法的步骤,例如,所述计算机程序/指令实现下述步骤:
步骤S101:根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模。
步骤S102:根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息。
步骤S103:根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
从上述描述可知,本申请实施例提供的计算机程序产品,通过根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作,由此能够有效提高集群迁移时的可靠性和准确性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种集群平滑迁移方法,其特征在于,所述方法包括:
根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;
根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;
根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
2.根据权利要求1所述的集群平滑迁移方法,其特征在于,在所述根据所述主题重分布信息进行主题迁移之后,包括:
验证所述主题迁移是否执行成功;
若成功,则启动旧节点缩容操作,否则执行任务回退操作。
3.根据权利要求1所述的集群平滑迁移方法,其特征在于,所述根据所述集群基本信息和集群主题信息确定需扩容规模,包括:
根据集群内主题近一周事务处理量、消息体平均大小以及消息保留周期信息计算所有主题的最大带宽以及所需存储;
根据单节点所能支撑带宽以及存储计算集群规模;
根据所述最大带宽、所述所需存储以及所述集群规模确定需扩容规模。
4.根据权利要求1所述的集群平滑迁移方法,其特征在于,所述根据所述需扩容规模进行横向扩容,包括:
将与消息中间件版本对应的介质信息下发至新节点,并在所述新节点上安装启动所述消息中间件;
将所述新节点加入待迁移集群。
5.根据权利要求1所述的集群平滑迁移方法,其特征在于,所述根据所述主题重分布信息进行主题迁移,包括:
将所述主题重分布信息转换未JSON文件并下发至集群内任意节点上;
根据所述JSON文件执行主题副本迁移操作。
6.根据权利要求1所述的集群平滑迁移方法,其特征在于,所述在所述主题迁移完成后对相应的旧节点进行缩容操作,包括:
校验旧节点上是否存在未迁移主题;
若是,则登录所述旧节点并执行消息中间件卸载操作。
7.一种集群平滑迁移装置,其特征在于,包括:
扩容规模确定模块,用于根据待迁移集群的集群标识确定对应的集群基本信息和集群主题信息,并根据所述集群基本信息和集群主题信息确定需扩容规模;
重分布信息确定模块,用于根据所述需扩容规模进行横向扩容,并在所述横向扩容完成后根据新节点信息和主题副本分布信息确定迁移后的主题重分布信息;
主题迁移模块,用于根据所述主题重分布信息进行主题迁移,并在所述主题迁移完成后对相应的旧节点进行缩容操作。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述的集群平滑迁移方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一项所述的集群平滑迁移方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至6任一项所述的集群平滑迁移方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211077866.3A CN115454962A (zh) | 2022-09-05 | 2022-09-05 | 集群平滑迁移方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211077866.3A CN115454962A (zh) | 2022-09-05 | 2022-09-05 | 集群平滑迁移方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115454962A true CN115454962A (zh) | 2022-12-09 |
Family
ID=84303218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211077866.3A Pending CN115454962A (zh) | 2022-09-05 | 2022-09-05 | 集群平滑迁移方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115454962A (zh) |
-
2022
- 2022-09-05 CN CN202211077866.3A patent/CN115454962A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111786885B (zh) | 分布式全链路灰度路由方法及装置 | |
CN111031058A (zh) | 基于WebSocket的分布式服务器集群交互方法及装置 | |
CN112463535B (zh) | 多集群异常处理方法及装置 | |
CN113051110A (zh) | 集群切换方法、装置及设备 | |
EP4213037A1 (en) | Data storage and reconciliation method and system | |
CN105224421A (zh) | 一种数据备份方法、装置及电子设备 | |
CN105808374A (zh) | 一种快照处理方法及相关设备 | |
CN111464352A (zh) | 调用链路数据处理方法及装置 | |
CN111510493A (zh) | 分布式数据传输方法及装置 | |
CN112612851B (zh) | 多中心数据同步方法及装置 | |
CN111930624B (zh) | 测试链路报文数据处理方法及装置 | |
CN111338905A (zh) | 应用节点数据处理方法及装置 | |
CN115454962A (zh) | 集群平滑迁移方法及装置 | |
CN114285657B (zh) | 防火墙安全策略变更验证方法及装置 | |
CN115914375A (zh) | 分布式消息平台容灾处理方法及装置 | |
CN113032021B (zh) | 系统切换及其数据处理方法、装置、设备及存储介质 | |
CN111698337B (zh) | 建立通信连接的方法、装置及设备 | |
CN115421976A (zh) | 异地备灾数据处理方法及装置 | |
CN113377385A (zh) | 客户端自动部署方法及装置 | |
CN112732660A (zh) | 干预式文件传输方法、装置及系统 | |
CN114416212A (zh) | 移动端应用程序数据资源处理方法及装置 | |
CN113158259A (zh) | 区块链完整性验证方法及装置 | |
CN112445574A (zh) | 应用容器多集群迁移方法及装置 | |
CN113050974B (zh) | 云计算基础设施在线升级方法及装置 | |
CN112910971B (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 |