一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

集群的参数配置方法、装置、电子设备及可读存储介质与流程

2022-03-02 01:19:32 来源:中国专利 TAG:


1.本技术涉及集群管理技术领域,特别涉及集群的参数配置方法、装置、电子设备及可读存储介质。


背景技术:

2.传统的集群管理是在物理机或虚拟机上进行中间件节点的部署、变更、维护,需运维人员在对应的主机上进行手工操作,方式原始、运维复杂度高、出错风险大。同时传统的物理机中间件运维方式,对于中间件的容量变更(扩缩容)、数据维护等操作都需要资源准备、方案准备、执行变更等过程,自动化程度低。
3.相关技术中,借助容器化部署,能够享受容器化编排平台(如kubernetes),对容器动态管理、灵活扩缩容的便利,提升部署运维效率。同时借助容器化,对中间件容量标准化管理、运维操作能力标准化带来便利,是未来中间件运维部署的发展方向。


技术实现要素:

4.为了解决上述问题,本技术提供参数配置方法、装置、电子设备及可读存储介质,能够对单个实例进行变更,进而实现对集群中节点的单独配置,提高对节点配置的灵活性,且减少对其他节点的干扰。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种集群的参数配置方法,该方法包括:监测预先构建的集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
6.其中,根据集群参数集的变更情况,对集群的节点进行相应的配置,包括:根据集群参数集中目标实例的配置参数的变更情况,从预先构建的管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置。
7.其中,该方法还包括:根据目标节点的配置情况,对预先构建的状态管理集中对应的目标实例状态进行更新;其中,状态管理集用于表示集群的实例状态;根据目标实例状态的更新情况,对目标任务进行启停操作。
8.其中,监测预先构建的集群参数集,包括:利用服务接口监听集群参数集,以获取集群参数集中参数的变更情况;该方法还包括:利用服务接口监听管理任务集,以获取管理任务集中任务的执行情况。
9.其中,根据集群参数集的变更情况,对集群的节点进行相应的配置,包括:响应于集群参数集中目标实例的配置参数发生变更,对集群中与目标实例对应的目标节点进行重启;利用变更后的目标实例的配置参数对重启的目标节点进行配置。
10.其中,根据集群参数集的变更情况,对集群的节点进行相应的配置,包括:响应于集群参数集中新增目标实例的配置参数,在集群中创建与目标实例对应的目标节点;将目标节点的前一节点的数据部分迁移至目标节点。
11.其中,根据集群参数集的变更情况,对集群的节点进行相应的配置,包括:响应于集群参数集中删除目标实例的配置参数,删除集群中与目标实例对应的目标节点。
12.其中,该方法还包括:根据目标节点的配置情况,对目标实例的状态进行更新;响应于目标实例的状态为配置失败,则在下一次变更处理更迭中再次对目标节点进行配置。
13.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种集群的参数配置装置,该参数配置装置包括:集群参数模块,用于构建集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;监测模块,用于监测集群参数集;处理模块,用于根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
14.其中,该集群管理装置还包括:管理任务模块,用于构建管理任务集;处理模块用于根据集群参数集中目标实例的配置参数的变更情况,从管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置。
15.其中,该集群管理装置还包括:状态管理模块,用于构建状态管理集;其中,状态管理集用于表示集群的实例状态;处理模块还用于根据目标节点的配置情况,对状态管理集中对应的目标实例状态进行更新;以及根据目标实例状态的更新情况,对目标任务进行启停操作。
16.其中,监测模块为服务接口;服务接口用于监听集群参数集,以获取集群参数集中参数的变更情况;服务接口还用于监听管理任务集,以获取管理任务集中任务的执行情况。
17.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种电子设备,该电子设备包括处理器以及与处理器耦接的存储器,存储器中存储有计算机程序,处理器用于执行计算机程序以实现如上述的方法。
18.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序在被处理器执行时,实现如上述的方法。
19.本技术实施例的有益效果是:区别于现有技术,本技术提供的集群的参数配置方法,该方法包括:监测预先构建的集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。通过上述方式,利用自定义的集群参数集中的实例以及配置参数,能够对单个实例进行变更,进而实现对集群中节点的单独配置,提高对节点配置的灵活性,且减少对其他节点的干扰。
附图说明
20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
21.图1是本技术提供的集群的参数配置方法一实施例的流程示意图;
22.图2是本技术提供的步骤13一实施例的流程示意图;
23.图3是本技术提供的步骤13另一实施例的流程示意图;
24.图4是本技术提供的集群的参数配置方法另一实施例的流程示意图;
25.图5是本技术提供的集群的参数配置方法另一实施例的流程示意图;
26.图6是本技术提供的集群的参数配置方法另一实施例的流程示意图;
27.图7是本技术提供的集群的参数配置方法另一实施例的流程示意图;
28.图8是本技术提供的集群的参数配置装置一实施例的结构示意图;
29.图9是本技术提供的集群的参数配置装置另一实施例的结构示意图;
30.图10是本技术提供的电子设备一实施例的结构示意图;
31.图11是本技术提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
32.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
33.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
34.相关技术中集群管理有以下几种:
35.1.原生的kubernetes yaml描述文件方式部署。
36.kubernetes抽象了个各种资源描述对象,每种对象对应不同的kubernetes工作负载(如deployment,job,statefulset等kubernetes内置的工作负载)或者其他资源抽象(如configmap,secret),通过提交yaml描述文件的方式提交相关工作负载的部署及资源的创建,最终完成上层中间件的部署、更新。
37.2.基于helm面向kubernetes的打包部署方式。
38.原生的kubernetes yaml描述文件提交部署方式,需要部署者自己组装各种yaml资源描述,并提交kubernetes。helm部署方式提供了通过打包各种资源描述文件模板,形成一个部署模板集合(称为chart),并通过制定模板参数的方式,提交部署。每次部署只需指定chart和参数即可完成部署。
39.3.基于kubernetes operator的自定义工作负载方式支持特定中间件的部署。
40.kubernetes虽然内置了deployment、statefulset等工作负载,满足一般无状态应用和简单有状态应用的部署,但是中间件的容器化部署比一般应用有更复杂的状态管理需求,内置的statefulset很难满足中间件容器化部署的需求。kubernetes提供了operator方式,通过定义新的工作负载及资源类型(crd),来支持个性化的工作负载需求。
41.不足之处在于,中间件集群部署有以下特点:
42.1.有状态,中间件各个集群节点往往会有不同角色,例如elasticsearch的master节点、data节点等。其次,中间件集群节点都会保存对应节点数据,所以也是有状态的。
43.2.中间件集群变更,有更复杂的运维管理需求。
44.内置的有状态工作负载statefulset,虽然提供了各个节点单独存储支持,但节点级别单独变更支持较弱,不能单独某个实例执行配置变更并更新,且无法控制多个节点滚动发布中间暂停,而且限制了节点滚动顺序。对于节点变更的各个时机执行集群整体级别的操作也不支持。
45.基于此,本技术通过构建集群参数集来定义集群的至少一实例、以及每一实例对应的配置参数;然后根据集群参数集的变更情况,对集群的节点进行相应的配置的方案,来解决上述提及的至少一个问题。具体参阅下述任一实施例。
46.参阅图1,图1是本技术提供的集群的参数配置方法一实施例的流程示意图。该方法包括:
47.步骤11:监测预先构建的集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数。
48.集群可以是mysql集群、kafka集群以及服务器集群等。
49.在本实施例中,集群参数集中的每一实例可单独进行配置。如,在集群参数集中添加实例、在集群参数集中删除实例以及在集群参数集中修改实例。
50.如,在构建集群参数集后,集群参数集中包括实例a、实例b和实例c。用户可以对实例a、实例b和实例c中任一实例进行删除和修改。在一应用场景中,用户可以在集群参数集中增加实例d。
51.在本实施例中,可以利用服务接口来监测集群参数集中的实例的变更情况。
52.在其他实施例中,还可以在集群参数集中设置监测程序,在集群参数集发生变更时,主动产生变更状态信息,以便于基于变更信息进行后续的配置。在集群参数集未产生变更的情况下,监测程序可以按照时间间隔,产生相应的状态信息。
53.步骤12:根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
54.在本实施例中,集群参数集的变更可以是对集群参数集中的任一实例的删除、配置参数的修改,或者在集群参数集中增加实例。
55.在一些实施例中,参阅图2,步骤12可以是以下流程:
56.步骤21:响应于集群参数集中目标实例的配置参数发生变更,对集群中与目标实例对应的目标节点进行重启。
57.步骤22:利用变更后的目标实例的配置参数对重启的目标节点进行配置。
58.在一应用场景中,集群参数集中包括实例a、实例b和实例c。实例a对应节点1、实例b对应节点2和实例c对应节点3。在用户对集群参数集中的实例a的配置参数进行修改后,监测到实例a的配置参数发生变更,则对节点1进行重启,则利用变更后的配置参数对节点1进行配置。如,配置参数是对节点1的ip地址(internet protocol address,互联网协议地址)进行变更,则将节点1的ip地址修改为变更后的ip地址。又如,配置参数是对节点1的连接端口进行变更,则将节点1的连接端口修改为变更后的连接端口。
59.在一些实施例中,参阅图3,步骤12可以是以下流程:
60.步骤31:响应于集群参数集中新增目标实例的配置参数,在集群中创建与目标实例对应的目标节点。
61.步骤32:将目标节点的前一节点的数据部分迁移至目标节点。
62.在一应用场景中,集群参数集中包括实例a、实例b和实例c。实例a对应节点1、实例b对应节点2和实例c对应节点3。用户在集群参数集中增加实例d,以及对应实例d的配置参数。监测到集群参数集中增加实例d,则在集群中创建与实例d对应的节点4,并利用配置参数对节点4进行配置。并且,将节点3的数据部分迁移至节点4,使节点4参与集群中的工作任务,也即,节点3中迁移的数据是能够使得节点4参与集群中的工作任务的数据。
63.在一些实施例中,步骤31可以是响应于集群参数集中删除目标实例的配置参数,删除集群中与目标实例对应的目标节点。
64.在一应用场景中,集群参数集中包括实例a、实例b、实例c和实例d。实例a对应节点1、实例b对应节点2、实例c对应节点3以及实例d对应节点4。用户在集群参数集中删除实例d,以及对应实例d的配置参数。监测到集群参数集中删除实例d,则在集群中删除节点4。
65.在此过程中,若节点4中存在数据,则将节点4中的数据移至节点3。
66.在本实施例中,通过监测预先构建的集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例的方式,利用自定义的集群参数集中的实例以及配置参数,能够对单个实例进行变更,进而实现对集群中节点的单独配置,提高对节点配置的灵活性,且减少对其他节点的干扰。
67.通过上述方式,实现了任意节点单独变更、更新。集群的各个节点配置可单独进行配置,以及节点新增、减少涉及中间件数据迁移、数据重新分布。以及需要在停止节点前、后执行相关动作,做集群级别数据处理工作。
68.参阅图4,图4是本技术提供的集群的参数配置方法另一实施例的流程示意图。该方法包括:
69.步骤41:监测预先构建的集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数。
70.步骤42:根据集群参数集中目标实例的配置参数的变更情况,从预先构建的管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置。
71.其中,节点用于运行实例,管理任务集用于定义外部任务类型,跟踪外部任务执行状态。
72.在本实施例中,管理任务集中设置有相应任务的名称,以及该任务对应的url(uniform resource locator,统一资源定位系统)。
73.在一应用场景中,集群参数集中包括实例a、实例b和实例c。实例a对应节点1、实例b对应节点2和实例c对应节点3。用户在集群参数集中增加实例d,以及对应实例d的配置参数。监测到集群参数集中增加实例d,则在集群参数集中确定增加实例对应的扩容任务名称,然后在管理任务集根据该扩容任务名称确定对应的url,进而利用该url启动扩容任务,以增加实例d。
74.在一应用场景中,集群参数集中包括实例a、实例b、实例c和实例d。实例a对应节点1、实例b对应节点2、实例c对应节点3以及实例d对应节点4。用户在集群参数集中删除实例d,以及对应实例d的配置参数。监测到集群参数集中删除实例d,则在集群参数集中确定删除实例对应的缩容任务名称,然后在管理任务集根据该缩容任务名称确定对应的url,进而
利用该url启动缩容任务,以删除实例d。
75.在本实施例中,通过管理任务集和集群参数集配合,在监测集群参数集中的实例发生变更时,管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置,能够对单个实例进行变更,进而实现对集群中节点的单独配置,提高对节点配置的灵活性,且减少对其他节点的干扰。
76.在其他实施例中,在实现上述任一实施例时,还可以进行以下操作,具体参阅图5,图5是本技术提供的集群的参数配置方法另一实施例的流程示意图。该方法还包括:
77.步骤51:根据目标节点的配置情况,对预先构建的状态管理集中对应的目标实例状态进行更新;其中,状态管理集用于表示集群的实例状态。
78.实例状态可以为正常运行、变更中、失败、待扩容、扩容中、扩容失败、扩容成功、待缩容、缩容中、缩容失败以及缩容成功中任一种。具体根据实例的实际状态进行变化。
79.状态管理集中实例状态与集群参数集中的实例以及实例的配置参数相关联。在集群参数集中实例的配置参数发生变更时,该状态管理集中对应的实例的状态发生变化,如,从正常运行变为变更中,在变更成功后,状态变为正常运行,变更失败时,状态变为失败。
80.如,从在集群参数集中的新增实例,则在集群中拉起新节点时,在状态管理集中为新节点建立实例状态。此时,新节点的实例状态为待扩容,若开始进行新节点扩容后,新节点的实例状态为扩容中,若扩容成功,则实例状态为扩容成功,若扩容失败,则实例状态为扩容失败。在扩容失败后,可以等待下一次扩容,则将实例状态变为待扩容。
81.步骤52:根据目标实例状态的更新情况,对目标任务进行启停操作。
82.可以理解,在状态更新时,会执行不同的任务,进而会对任务进行开启和停止等操作。如,对目标实例进行状态更新时,需要执行目标任务e,则将目标任务e开启,以对目标实例进行相应的操作,在完成状态更新后,将目标任务e停止。
83.在其他实施例中,在实现上述任一实施例时,还可以进行以下操作,具体参阅图6,图6是本技术提供的集群的参数配置方法另一实施例的流程示意图。该方法还包括:
84.步骤61:利用服务接口监听集群参数集,以获取集群参数集中参数的变更情况。
85.步骤62:利用服务接口监听管理任务集,以获取管理任务集中任务的执行情况。
86.步骤61和步骤62可以同时进行,即服务接口可以同时监听集群数据集中的实例的变更以及监听管理任务集中任务的执行情况。
87.步骤63:根据集群参数集的变更情况,对集群的节点进行相应的配置以及根据集群参数集中目标实例的配置参数的变更情况,从管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置。
88.在其他实施例中,在实现上述任一实施例时,还可以进行以下操作,具体参阅图7,图7是本技术提供的集群的参数配置方法另一实施例的流程示意图。该方法还包括:
89.步骤71:根据目标节点的配置情况,对目标实例的状态进行更新。
90.在本实施例中,可以利用外部集群管理组件按照集群参数集中相应实例的配置参数来对目标节点进行配置,进而对状态管理集中的目标实例的状态进行更新。
91.步骤72:响应于目标实例的状态为配置失败,则在下一次变更处理更迭中再次对目标节点进行配置。
92.在本次更新失败时,则在下一次变更中再次进行配置,以此循环,直至配置成功。
93.参阅图8,图8是本技术提供的集群的参数配置装置一实施例的结构示意图。该参数配置装置100包括:集群参数模块10、监测模块20和处理模块30。
94.其中,集群参数模块10用于构建集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数。
95.监测模块20用于监测集群参数集。
96.处理模块30用于根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
97.在其他实施例中,参阅图9,参数配置装置100包括集群参数模块10、处理模块30、管理任务模块40、状态管理模块50以及服务接口60。
98.其中,管理任务模块40用于构建管理任务集。
99.处理模块30用于根据集群参数集中目标实例的配置参数的变更情况,从管理任务集调用相应的目标任务,以利用目标任务对集群中与目标实例对应的目标节点进行相应的配置。
100.状态管理模块50用于构建状态管理集;其中,状态管理集用于表示集群的实例状态。
101.处理模块30还用于根据目标节点的配置情况,对状态管理集中对应的目标实例状态进行更新。
102.处理模块30还用于根据目标实例状态的更新情况,对目标任务进行启停操作。
103.服务接口60用于监听集群参数集,以获取集群参数集中参数的变更情况。服务接口60可以作为监测模块20使用。
104.服务接口60还用于监听管理任务集,以获取管理任务集中任务的执行情况。
105.处理模块30还用于响应于集群参数集中目标实例的配置参数发生变更,对集群中与目标实例对应的目标节点进行重启;利用变更后的目标实例的配置参数对重启的目标节点进行配置。
106.处理模块30还用于响应于集群参数集中新增目标实例的配置参数,在集群中创建与目标实例对应的目标节点;将目标节点的前一节点的数据部分迁移至目标节点。
107.处理模块30还用于响应于集群参数集中删除目标实例的配置参数,删除集群中与目标实例对应的目标节点。
108.状态管理模块50还用于根据目标节点的配置情况,对目标实例的状态进行更新。
109.处理模块30还用于响应于目标实例的状态为配置失败,则在下一次变更处理更迭中再次对目标节点进行配置。
110.在一应用场景中,参数配置装置100包括集群参数模块10、监测模块20、处理模块30、管理任务模块40、状态管理模块50以及服务接口60。
111.集群参数模块10用于定义中间件集群结构及部署相关的资源(如镜像)、配置等。
112.集群参数模块10不采用statefulset方式定义实例,而是定义多个实例,多个实例可以单独设置,以解决中间件单独实例变更、操作的需求。
113.由于实例定义分开,每个实例可以定义自己独立的配置,也就实现了中间件部署运维过程中节点单独配置变更需求。
114.由于每个实例单独定义,除了集群整体状态管理外,各个实例需要单独的状态管
理。同时需要协调实例状态与集群整体状态。由此,可以通过状态管理模块50来进行状态管理。
115.在日常中间件运维处理过程中,每个实例状态,直观的有正常运行、变更中、正常运行/失败状态的几种状态,相关技术中的statefulset变更中状态不会关注整个负载业务层面需要处理的工作,这在中间件变更中反倒是强需求,针对中间件需求,本技术中细分实例状态,如待扩容、扩容中,扩容失败、扩容成功、待缩容、缩容中、缩容失败、缩容成功等。
116.一个实例在整个生命周期变更过程中,从中间件操作层面看,无外乎扩容、缩容两种涉及节点本身的变动类型,扩容过程实例要新增,缩容过程实例减少。对于这两个过程中间件集群层面需要处理的事情是要做扩容、缩容相关的数据处理过程,而这些处理工作每种中间件类型是不一样的,往往需要调用外部平台处理任务来完成相应工作。
117.故可以利用管理任务模块40进行实现。故抽象第二种资源类型。
118.管理任务模块40用于定义外部任务类型,跟踪外部任务执行状态。
119.处理模块30根据实例变更状态机,协调外部任务启停及状态检查,同时触发实例状态流转,最终完成实例变更过程。
120.对于外部任务,可以借用外部的中间件管理平台的中间件管理模块或组件,来完成扩缩容过程的数据迁移、准备、结构调整等工作,具体工作依不同的中间件类型或架构需求而定。
121.以kafka扩容或缩容为例,kafka扩容节点后,topic相关的分片并不会自动在新的节点上迁移分片。相关技术的部署方式,扩容只会拉起新的节点,新的节点并不会承载分片。缩容时直接停该节点,但节点上的数据并未做迁移,会直接导致topic副本减少,影响中间件集群可用性。
122.另外如果运维过程中,需要对集群的某个节点调整参数观察,例如调整jvm参数等,这个节点可能是集群中的任意一个,但其他节点暂时不调整,相关技术满足不了此类灵活性要求。
123.而本技术通过集群参数模块10的上述方案能够解决容器化中间件日常运维过程中不能任意节点单独变更运维的问题。以及能够解决运维过程任意节点上线、下线过程集群相关数据处理执行不能方便集成至容器生命周期的问题。
124.例如,一个kafka集群有3个实例,已正常部署。
125.如,以broker实例为例,集群参数模块10中的集群参数集配置如下:
126.{spec:
127.brokers:
128.broker1:
129.config:content1
130.broker2:
131.config:content2
132.broker3:
133.config:content3
134.upscalejobtrack:kafkaupscale
135.downsaclejobtrack:kafkadownscale}。
136.管理任务模块40中的管理任务集配置如下:
137.{spec:
138.name:kafkaupscale
139.taskurl:http://mwplatform/kafkaupscal
140.spec:
141.name:kafkadownscale
142.taskurl:http://mwplatform/kafkadownscal}。
143.在集群参数模块10进行任意实例变更时,在集群参数模块10和管理任务模块40定义的基础上,变更broker2的配置参数,由config:content2变更为config:content21,其他节点配置参数不变。提交至服务接口60。
144.处理模块30根据服务接口60监测到broker2的配置变更后,重启2号节点,并应用新配置即可完成2号节点配置变更。同时1、3号节点不受影响。
145.以扩容节点为例:在集群参数模块10和管理任务模块40定义的基础上,新增broker4配置。
146.集群参数模块10中的集群参数集的变化如下:
147.{spec:
148.brokers:
149.broker1:
150.config:content1
151.broker2:
152.config:content2
153.broker3:
154.config:content3
155.broker4:
156.config:content4
157.upscalejobtrack:kafkaupscale
158.downsaclejobtrack:kafkadownscale}。
159.处理模块30根据服务接口60监测到集群参数集定义变更后,根据状态流转关系,先拉起新的4号节点,4号节点在状态管理模块50中的状态为待扩容。
160.处理模块30在下一次reconcile过程,根据4号节点状态为待扩容,执行“调用外部扩容任务逻辑”,根据集群参数集定义的upscalejobtrack以及关联定义的kafkaupscale对象最终调用外部upscale任务,执行kafka分片重平衡,让3号节点部分分片数据迁移至4号节点,达到扩容并数据均匀分布的目的。同时处理模块30通过管理任务模块40跟踪任务执行状况,如成功、失败、处理中等。
161.如果外部upscale任务执行成功,4号节点的状态变更为扩容成功,完成扩容;如果失败,4号节点状态变更为扩容失败,在处理模块30的下次变更处理迭代中再进行重试执行。
162.上述参数配置装置100可以是基于kubernetes构建的。
163.参阅图10,图10是本技术提供的电子设备一实施例的结构示意图。该电子设备200
包括处理器201以及与处理器201耦接的存储器202,存储器202中存储有计算机程序,处理器201用于执行计算机程序以实现以下方法:
164.构建集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;监测集群参数集;根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
165.可以理解,处理器201还用于执行计算机程序以实现上述任一实施例的方法,具体请参阅上述任一技术方案,这里不做赘述。
166.参阅图11,图11是本技术提供的计算机可读存储介质一实施例的结构示意图。该计算机可读存储介质300存储有计算机程序301,计算机程序301在被处理器执行时,实现以下方法:
167.构建集群参数集;其中,集群参数集用于定义集群的至少一实例、以及每一实例对应的配置参数;监测集群参数集;根据集群参数集的变更情况,对集群的节点进行相应的配置;其中,节点用于运行实例。
168.可以理解,计算机程序301在被处理器执行时,还用于实现上述任一实施例的方法,具体请参阅上述任一技术方案,这里不做赘述。
169.综上,将本技术应用于kubernetes运维场景中时,通过分离节点单独控制、节点变更过程整合外部集群数据处理动作,同时达到了传统部署模式,独立控制节点和相关任务单独运维的便利性。通过抽象各种中间件运维要求的共性,实现通用的适用于中间件部署运维的kubernetes工作负载,为中间件容器部署、运维支撑提供了较通用的支持。
170.在本技术所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
171.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
172.另外,在本技术各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
173.以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是根据本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献