CN117097615A - 容器集群扩容的控制方法、装置和电子设备 - Google Patents

容器集群扩容的控制方法、装置和电子设备 Download PDF

Info

Publication number
CN117097615A
CN117097615A CN202310900101.3A CN202310900101A CN117097615A CN 117097615 A CN117097615 A CN 117097615A CN 202310900101 A CN202310900101 A CN 202310900101A CN 117097615 A CN117097615 A CN 117097615A
Authority
CN
China
Prior art keywords
information
hpa
module
cluster
configmap
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
Application number
CN202310900101.3A
Other languages
English (en)
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 Zhongxinjia Technology Development Co ltd
Original Assignee
Beijing Zhongxinjia Technology Development 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 Zhongxinjia Technology Development Co ltd filed Critical Beijing Zhongxinjia Technology Development Co ltd
Priority to CN202310900101.3A priority Critical patent/CN117097615A/zh
Publication of CN117097615A publication Critical patent/CN117097615A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种容器集群扩容的控制方法、装置和电子设备,涉及计算机技术领域,该方法包括:基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;集群监听模块基于HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;集群监听模块向API服务模块发送第二控制请求,重启业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;集群监听模块向API服务模块发送第三控制请求,恢复HPA扩容,通过该方法缓解了器集群扩容前后配置不一致导致服务稳定性差的技术问题,达到了提高服务稳定性和可用性的技术效果。

Description

容器集群扩容的控制方法、装置和电子设备
技术领域
本发明涉及计算机技术领域,尤其是涉及一种容器集群扩容的控制方法、装置和电子设备。
背景技术
Kubernetes,简称K8s,是一个开源的、用于管理云平台中多个主机上的容器化的应用,作为一个非常流行的容器编排平台,它可以协助管理和部署容器应用程序。其中一个重要的功能是水平容器组自动扩缩容(Horizontal Pod Autoscaler,简称HPA),HPA是一种对k8s的Pod副本数进行自动水平扩缩容机制,也是使用最广泛的一种自动扩缩容机制,可以根据负载自动调整Pod的数量。此外,ConfigMap是Kubernetes中一种用于存储配置数据的资源对象,在Kubernetes中,如果修改了ConfigMap的内容,Kubernetes会自动重新加载,并更新相关的Pod。
然而,在某些情况下,当ConfigMap被更新时,自动扩容后的Pod运行状态可能会变得不一致。这是因为旧Pod会在更新ConfigMap之前启动,内存中使用的是旧的配置文件。当更新ConfigMap后并未做其他操作,自动扩容时新Pod读取的是新配置文件,这样会导致新Pod与其他Pod之间出现配置不一致的情况,从而影响服务的稳定性和可用性。
发明内容
本发明的目的在于提供一种容器集群扩容的控制方法、装置和电子设备,以缓解现有技术中存在的容器集群扩容前后配置不一致导致服务稳定性差的技术问题。
第一方面,本发明实施例提供了一种容器集群扩容的控制方法,应用于容器集群扩容管理系统,上述容器集群扩容管理系统包括API服务模块和集群监听模块;上述方法包括:
(S4)基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;上述目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;
(S5)上述集群监听模块基于上述HPA控制器信息向上述API服务模块发送第一控制请求,暂停HPA扩容;
(S6)上述集群监听模块向上述API服务模块发送第二控制请求,重启上述业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
(S7)上述集群监听模块向上述API服务模块发送第三控制请求,恢复HPA扩容。
在一些可选的实现中,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,上述方法还包括:
(S1)利用上述集群监听模块向上述API服务模块获取所有ConfigMap配置信息;
通过上述集群监听模块监控上述ConfigMap配置信息的状态;
确定发生变化的上述ConfigMap配置信息,并触发回调函数以执行后续步骤。
在一些可选的实现中,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之后,上述方法还包括:
(S2)利用上述集群监听模块向上述API服务模块获取所有业务控制器的信息;
基于上述ConfigMap配置信息确定目标业务控制器。
在一些可选的实现中,基于上述ConfigMap配置信息确定目标业务控制器的步骤,包括:
遍历所有上述业务控制器的信息,确定引用了发生变化的上述ConfigMap配置信息的业务控制器为目标业务控制器;上述目标业务控制器引用的上述ConfigMap配置信息为目标业务控制器信息。
在一些可选的实现中,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,上述方法还包括:
(S3)利用上述集群监听模块向上述API服务模块获取HPA水平扩容信息。
在一些可选的实现中,上述容器集群扩容管理系统还包括管理员模块;上述方法还包括:
(S8)记录容器集群扩容参数并发送至上述管理员模块;上述容器集群扩容参数包括:控制器名称、配置变更时间、控制器重启状态、当前HPA水平扩容状态。
第二方面,本发明实施例提供了一种容器集群扩容的控制装置,该装置包括:
确定模块,用于基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;上述目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;
第一控制请求发送模块,用于集群监听模块基于上述HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;
第二控制请求发送模块,用于上述集群监听模块向上述API服务模块发送第二控制请求,重启上述业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
第三控制请求发送模块,用于上述集群监听模块向上述API服务模块发送第三控制请求,恢复HPA扩容。
在一些可选的实现中,上述装置还包括配置信息获取模块,上述配置信息获取模块用于:
利用上述集群监听模块向上述API服务模块获取所有ConfigMap配置信息;通过上述集群监听模块监控上述ConfigMap配置信息的状态;确定发生变化的上述ConfigMap配置信息,并触发回调函数以执行后续步骤。
第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项所述的方法的步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述第一方面任一项所述的方法。
本发明提供了一种容器集群扩容的控制方法、装置和电子设备,该方法应用于容器集群扩容管理系统,该容器集群扩容管理系统包括API服务模块和集群监听模块;该方法包括:基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;集群监听模块基于HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;集群监听模块向API服务模块发送第二控制请求,重启业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;集群监听模块向API服务模块发送第三控制请求,恢复HPA扩容,通过该方法缓解了器集群扩容前后配置不一致导致服务稳定性差的技术问题,达到了提高服务稳定性和可用性的技术效果。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种容器集群扩容的控制方法的流程示意图;
图2为本发明实施例提供的一种容器集群扩容的控制方法的具体实施例的流程示意图;
图3为本发明实施例提供的一种容器集群扩容的控制装置的结构示意图;
图4为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
Kubernetes作为一个非常流行的容器编排平台,它可以协助管理和部署容器应用程序。其中一个重要的功能是水平容器组自动扩缩容(Horizontal Pod Autoscaler,简称HPA),HPA是一种对k8s的Pod副本数进行自动水平扩缩容机制,也是使用最广泛的一种自动扩缩容机制,可以根据负载自动调整Pod的数量。此外,ConfigMap是Kubernetes中一种用于存储配置数据的资源对象,在Kubernetes中,如果修改了ConfigMap的内容,Kubernetes会自动重新加载,并更新相关的Pod。然而,在某些情况下,当ConfigMap被更新时,自动扩容后的Pod运行状态可能会变得不一致。这是因为旧Pod会在更新ConfigMap之前启动,内存中使用的是旧的配置文件。当更新ConfigMap后并未做其他操作,自动扩容时新Pod读取的是新配置文件,这样会导致新Pod与其他Pod之间出现配置不一致的情况,从而影响服务的稳定性和可用性。
基于此,本发明实施例提供了一种容器集群扩容的控制方法、装置和电子设备,以缓解现有技术中存在的容器集群扩容前后配置不一致导致服务稳定性差的技术问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种容器集群扩容的控制方法进行详细介绍,参见图1所示的一种容器集群扩容的控制方法的流程示意图,该方法应用于容器集群扩容管理系统,容器集群扩容管理系统包括API服务模块和集群监听模块;该方法可以由电子设备执行,主要包括以下步骤S110至步骤S140:
S110:基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;
其中,目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;确定目标业务控制器的方法包括以下步骤:
利用集群监听模块向API服务模块获取所有业务控制器的信息;
基于ConfigMap配置信息确定目标业务控制器。
作为一个具体的示例,基于ConfigMap配置信息确定目标业务控制器的步骤,包括:遍历所有业务控制器的信息,确定引用了发生变化的ConfigMap配置信息的业务控制器为目标业务控制器;目标业务控制器引用的ConfigMap配置信息为目标业务控制器信息。
S120:集群监听模块基于HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;
S130:集群监听模块向API服务模块发送第二控制请求,重启业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
S140:集群监听模块向API服务模块发送第三控制请求,恢复HPA扩容。
在一种实施例中,S110基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,上述方法还包括以下步骤:
(S101)利用集群监听模块向API服务模块获取所有ConfigMap配置信息;
(S102)通过集群监听模块监控ConfigMap配置信息的状态;
(S103)确定发生变化的ConfigMap配置信息,并触发回调函数以执行后续步骤。
也就是说,在监控到集群的ConfigMap配置信息有变化时,后续可能因此变化产生POD运行状态不一致的隐患,因此触发回调函数以执行后续基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤。也即,配置信息发生改变时,则触发回调函数,以便于控制器处理后续解决问题的流程。在一种实施例中,S110基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,上述方法还包括:
(S104)利用集群监听模块向API服务模块获取HPA水平扩容信息。
在一种实施例中,容器集群扩容管理系统还包括管理员模块;上述方法还包括:
(S105)记录容器集群扩容参数并发送至管理员模块;容器集群扩容参数包括:控制器名称、配置变更时间、控制器重启状态、当前HPA水平扩容状态。
作为一个具体的示例,本申请实施例提供了一种容器集群扩容的控制方法,参见图2所示,该方法包括以下步骤:
(S21)利用集群监听模块向API服务模块获取所有ConfigMap配置信息;
首先在集群中部署一个集群监听模块,即:监听器(WatchRobot),该监听器主动向API服务模块(Api Server)获取所有ConfigMap配置信息,同时监控所有ConfigMap信息是否变化,当发现某个配置信息变化时触发回调函数以执行后续步骤。
(S22)利用集群监听模块向API服务模块获取目标业务控制器的信息;
其中,目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器。通过WatchRobot向Api Server获取所有业务控制器信息(Deployment控制器),遍历每个Deployment控制器信息。获取那些业务控制器引用了步骤S21中发生变化的ConfigMap配置。
(S23)利用集群监听模块向API服务模块获取HPA水平扩容信息;
(S24)基于目标业务控制器的信息和HPA水平扩容信息,确定HPA控制器信息;
WatchRobot向Api Server获取所有HPA水平扩容信息,以步骤(S22)获取到的业务控制器为参数,过滤出对应的HPA控制器信息。
(S25)集群监听模块基于HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;
WatchRobot根据步骤(S24)获取到的HPA控制器信息,向Api Server发起请求,暂停对应的HPA扩容,以防突然扩容后导致的配置不一致。
(S26)集群监听模块向API服务模块发送第二控制请求,重启业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
WatchRobot向Api Server发起rollout restart请求,重启步骤(S22)中的业务控制器,目的在于重建Pod以读取最新的ConfigMap信息。
(S27)集群监听模块向API服务模块发送第三控制请求,恢复HPA扩容;
当WatchRobot确认步骤(S26)执行完成后,向Api Server发起请求,恢复步骤(S25)中暂停的HPA扩容。
(S28)记录容器集群扩容参数并发送至管理员模块;
其中,容器集群扩容参数包括:控制器名称、配置变更时间、控制器重启状态、当前HPA水平扩容状态。
即:发送以上步骤信息和最终结果给系统管理员,进入下一个循环。
本方案的重点在于:当配置变更时,要确保所有(旧POD)使用了该配置的控制器都自动完成最新配置的加载,确保每个deployment控制器对应POD配置文件的一致性。结合以下示例进一步说明:1.当前deployment控制器产生了一个POD,这个pod中独立了一行配置,假设该配置是:name=first.目前一切运行正常;2.当操作员更新了name的配置,比如name=second,目前一切运行正常;3.此时假设因流量增加,导致需要deployment扩容新的pod,这时新扩容的POD,将读取最新的配置name=second,当步骤1中的pod内存中任然是name=first,此时新扩容的pod和旧pod内存中的name属性不一致。本方案的重点就是解决HPA扩容后导致此处name配置属性不一致的问题。
也就是说,现有技术中存在的容器集群因配置更新导致扩容后容器运行状态不一致的问题,通过使用上述实施例提供的容器集群扩容的控制方法,可以确保集群中所有的Pod在HPA扩容时不会因为ConfigMap信息变动导致不一致的情况发生,从而提高服务可用性和稳定性。
此外,本发明实施例还提供了一种容器集群扩容的控制装置,参见图3所示,该装置包括:
确定模块310,用于基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;
第一控制请求发送模块320,用于集群监听模块基于HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;
第二控制请求发送模块330,用于集群监听模块向API服务模块发送第二控制请求,重启业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
第三控制请求发送模块340,用于集群监听模块向API服务模块发送第三控制请求,恢复HPA扩容。
在一种实施例中,该装置还包括配置信息获取模块,配置信息获取模块用于:
利用集群监听模块向API服务模块获取所有ConfigMap配置信息;通过集群监听模块监控ConfigMap配置信息的状态;确定发生变化的ConfigMap配置信息,并触发回调函数以执行后续步骤。
本申请实施例所提供的容器集群扩容的控制装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。本申请实施例提供的容器集群扩容的控制装置与上述实施例提供的容器集群扩容的控制方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本申请实施例还提供了一种电子设备,具体的,该电子设备包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被所述处理器运行时执行如上所述实施方式的任一项所述的方法。
图4为本申请实施例提供的一种电子设备的结构示意图,该电子设备400包括:处理器40,存储器41,总线42和通信接口43,所述处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存储器41中存储的可执行模块,例如计算机程序。
其中,存储器41可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线42可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器41用于存储程序,所述处理器40在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。
处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。
对应于上述方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述方法的步骤。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种容器集群扩容的控制方法,其特征在于,应用于容器集群扩容管理系统,所述容器集群扩容管理系统包括API服务模块和集群监听模块;所述方法包括:
基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;所述目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;
所述集群监听模块基于所述HPA控制器信息向所述API服务模块发送第一控制请求,暂停HPA扩容;
所述集群监听模块向所述API服务模块发送第二控制请求,重启所述业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
所述集群监听模块向所述API服务模块发送第三控制请求,恢复HPA扩容。
2.根据权利要求1所述的容器集群扩容的控制方法,其特征在于,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,所述方法还包括:
利用所述集群监听模块向所述API服务模块获取所有ConfigMap配置信息;
通过所述集群监听模块监控所述ConfigMap配置信息的状态;
确定发生变化的所述ConfigMap配置信息,并触发回调函数以执行后续步骤。
3.根据权利要求2所述的容器集群扩容的控制方法,其特征在于,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之后,所述方法还包括:
利用所述集群监听模块向所述API服务模块获取所有业务控制器的信息;
基于所述ConfigMap配置信息确定目标业务控制器。
4.根据权利要求3所述的容器集群扩容的控制方法,其特征在于,基于所述ConfigMap配置信息确定目标业务控制器的步骤,包括:
遍历所有所述业务控制器的信息,确定引用了发生变化的所述ConfigMap配置信息的业务控制器为目标业务控制器;所述目标业务控制器引用的所述ConfigMap配置信息为目标业务控制器信息。
5.根据权利要求1所述的容器集群扩容的控制方法,其特征在于,基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息的步骤之前,所述方法还包括:
利用所述集群监听模块向所述API服务模块获取HPA水平扩容信息。
6.根据权利要求1所述的容器集群扩容的控制方法,其特征在于,所述容器集群扩容管理系统还包括管理员模块;所述方法还包括:
记录容器集群扩容参数并发送至所述管理员模块;所述容器集群扩容参数包括:控制器名称、配置变更时间、控制器重启状态、当前HPA水平扩容状态。
7.一种容器集群扩容的控制装置,其特征在于,包括:
确定模块,用于基于目标业务控制器信息和HPA水平扩容信息,确定HPA控制器信息;所述目标业务控制器为引用了更新后的ConfigMap配置信息的业务控制器;
第一控制请求发送模块,用于集群监听模块基于所述HPA控制器信息向API服务模块发送第一控制请求,暂停HPA扩容;
第二控制请求发送模块,用于所述集群监听模块向所述API服务模块发送第二控制请求,重启所述业务控制器,以重建Pod并读取更新后的ConfigMap配置信息;
第三控制请求发送模块,用于所述集群监听模块向所述API服务模块发送第三控制请求,恢复HPA扩容。
8.根据权利要求7所述的容器集群扩容的控制装置,其特征在于,还包括配置信息获取模块,所述配置信息获取模块用于:
利用所述集群监听模块向所述API服务模块获取所有ConfigMap配置信息;通过所述集群监听模块监控所述ConfigMap配置信息的状态;确定发生变化的所述ConfigMap配置信息,并触发回调函数以执行后续步骤。
9.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至6任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行所述权利要求1至6任一项所述的方法。
CN202310900101.3A 2023-07-21 2023-07-21 容器集群扩容的控制方法、装置和电子设备 Pending CN117097615A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310900101.3A CN117097615A (zh) 2023-07-21 2023-07-21 容器集群扩容的控制方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310900101.3A CN117097615A (zh) 2023-07-21 2023-07-21 容器集群扩容的控制方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN117097615A true CN117097615A (zh) 2023-11-21

Family

ID=88768903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310900101.3A Pending CN117097615A (zh) 2023-07-21 2023-07-21 容器集群扩容的控制方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN117097615A (zh)

Similar Documents

Publication Publication Date Title
CN109995813B (zh) 一种分区扩展方法、数据存储方法及装置
JP6763580B2 (ja) 分散記憶システムをアップグレードするための方法および装置
CN111897558A (zh) 容器集群管理系统Kubernetes升级方法和装置
CN110888889B (zh) 一种数据信息更新方法、装置及设备
CN108123851B (zh) 分布式系统中主从节点同步链路的存活检测方法及装置
CN107817950B (zh) 一种数据处理方法及装置
CN110825495A (zh) 一种容器云平台的恢复方法、装置、设备及可读存储介质
CN109361542B (zh) 客户端的故障处理方法、装置、系统、终端和服务器
CN108055322B (zh) 请求消息处理方法及装置
CN111273924B (zh) 软件更新方法及装置
CN108874549B (zh) 资源复用方法、装置、终端和计算机可读存储介质
CN102141921A (zh) 一种终端设备系统升级方法及终端设备
CN111880956A (zh) 一种数据同步方法和装置
TW202109336A (zh) 物聯網設備中的系統升級方法、裝置、設備及儲存媒體
CN112199240B (zh) 一种节点故障时进行节点切换的方法及相关设备
US11500812B2 (en) Intermediate file processing method, client, server, and system
CN112052230A (zh) 多机房数据同步方法、计算设备及存储介质
CN111949384B (zh) 任务调度方法、装置、设备及计算机可读存储介质
CN112035326A (zh) 基于集群节点互检的异常节点任务处理方法及装置
CN117097615A (zh) 容器集群扩容的控制方法、装置和电子设备
WO2016176045A1 (en) System, method, and apparatus for updating data in a distributed storage system
CN112685063B (zh) 特征库更新方法、装置、网络设备及可读存储介质
CN115794306A (zh) 基于抢占实例的资源分配方法及装置、电子设备及介质
CN111208949B (zh) 一种确定分布式存储系统中的数据回滚时段的方法
CN112711376B (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