CN117435306A - 集群容器扩缩容方法、装置、设备及存储介质 - Google Patents
集群容器扩缩容方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117435306A CN117435306A CN202311448954.4A CN202311448954A CN117435306A CN 117435306 A CN117435306 A CN 117435306A CN 202311448954 A CN202311448954 A CN 202311448954A CN 117435306 A CN117435306 A CN 117435306A
- Authority
- CN
- China
- Prior art keywords
- container
- resource
- cluster
- expansion
- occupation
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000008602 contraction Effects 0.000 title claims description 82
- 238000012544 monitoring process Methods 0.000 claims abstract description 15
- 238000012549 training Methods 0.000 claims description 37
- 230000015654 memory Effects 0.000 claims description 20
- 238000013507 mapping Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种集群容器扩缩容方法、装置、设备及存储介质,涉及计算机领域,所述方法包括:监测目标集群中各容器的当前性能参数,将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息,基于所述占用预测信息对各容器进行扩缩容;由于本发明通过将监测到的目标集群中各容器的当前性能参数输入至预先构建的资源预测模型进行资源占用预测,从而基于预测到的各容器的占用预测信息对各容器进行扩缩容,从而确保负载均衡的实时性,有效地适应各种业务场景进行资源实时分配,满足各容器的资源需求。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种集群容器扩缩容方法、装置、设备及存储介质。
背景技术
Kubernetes(K8s)可用于大规模***中子***容器的自动化部署、扩缩容、管理。为了提高设备资源的利用率,可使用K8s整合部署在同一台服务器或多个服务器集群中,对于每个容器,需要技术人员准确定义服务对CPU、内存等物力资源的需求,使各服务正常运行,否则可能导致资源浪费或***性能下降,严重时可能由于资源不足导致容器服务启动,造成***崩溃。目前的容器扩缩容方式通常需要技术人员人工制定策略,资源配置效率较低,无法确保负载均衡的实时性,导致无法有效地适应真实业务场景的资源实时分配需求。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种集群容器扩缩容方法、装置、设备及存储介质,旨在解决现有技术资源配置效率较低,无法确保负载均衡的实时性,导致无法有效地适应真实业务场景的资源实时分配需求的技术问题。
为实现上述目的,本发明提供了一种集群容器扩缩容方法,所述方法包括以下步骤:
监测目标集群中各容器的当前性能参数;
将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息;
基于所述占用预测信息对各容器进行扩缩容。
可选地,所述将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息之前,包括:
获取目标集群中各容器的资源占用日志;
基于所述资源占用日志获取各容器的历史运行信息;
根据所述历史运行信息建模型训练集;
基于所述模型训练集构建资源预测模型。
可选地,所述根据所述历史运行信息建模型训练集,包括:
基于所述历史运行信息获取各容器在历史运行过程中的历史资源占用数据和历史时间数据;
将所述历史资源占用数据与所述历史时间数据进行关联,确定所述历史资源占用数据与所述历史时间数据之间的映射关系;
根据所述映射关系构建模型训练集。
可选地,所述基于所述占用预测信息对各容器进行扩缩容,包括:
根据所述占用预测信息确定各容器的资源需求指标和所述资源需求指标对应的资源需求时间;
基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容。
可选地,所述基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容,包括:
基于所述资源需求时间对各容器的资源需求进行排序,获得各容器的资源需求顺序;
根据所述资源需求顺序和所述资源需求指标构建扩缩容序列;
基于所述扩缩容序列对各容器进行扩缩容。
可选地,所述根据所述资源需求顺序和所述资源需求指标构建扩缩容序列,包括:
获取各容器的服务类型和容器性能参数;
基于所述资源需求指标、所述服务类型和容器性能参数对各容器进行权重分配,获得各容器对应的扩缩容权重;
根据所述扩缩容权重和所述资源需求顺序构建扩缩容序列。
可选地,所述基于所述占用预测信息对各容器进行扩缩容之后,还包括:
监测所述目标集群的扩缩容结果;
基于所述扩缩容结果对模型训练集进行更新;
基于更新后的所述模型训练集对所述资源预测模型进行迭代。
此外,为实现上述目的,本发明还提出一种集群容器扩缩容装置,所述集群容器扩缩容装置包括:
容器监测模块,用于监测目标集群中各容器的当前性能参数;
资源预测模块,用于将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息;
扩缩容模块,用于基于所述占用预测信息对各容器进行扩缩容。
此外,为实现上述目的,本发明还提出一种集群容器扩缩容设备,所述集群容器扩缩容设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的集群容器扩缩容程序,所述集群容器扩缩容程序配置为实现如上文所述的集群容器扩缩容方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有集群容器扩缩容程序,所述集群容器扩缩容程序被处理器执行时实现如上文所述的集群容器扩缩容方法的步骤。
本发明通过监测目标集群中各容器的当前性能参数,将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息,基于所述占用预测信息对各容器进行扩缩容;由于本发明通过将监测到的目标集群中各容器的当前性能参数输入至预先构建的资源预测模型进行资源占用预测,从而基于预测到的各容器的占用预测信息对各容器进行扩缩容,从而确保负载均衡的实时性,有效地适应各种业务场景进行资源实时分配,满足各容器的资源需求。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的集群容器扩缩容设备的结构示意图;
图2为本发明集群容器扩缩容方法第一实施例的流程示意图;
图3为本发明集群容器扩缩容方法第二实施例的流程示意图;
图4为本发明集群容器扩缩容方法第三实施例的流程示意图;
图5为本发明集群容器扩缩容装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的集群容器扩缩容设备结构示意图。
如图1所示,该集群容器扩缩容设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,Wi-Fi)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对集群容器扩缩容设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及集群容器扩缩容程序。
在图1所示的集群容器扩缩容设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明集群容器扩缩容设备中的处理器1001、存储器1005可以设置在集群容器扩缩容设备中,所述集群容器扩缩容设备通过处理器1001调用存储器1005中存储的集群容器扩缩容程序,并执行本发明实施例提供的集群容器扩缩容方法。
本发明实施例提供了一种集群容器扩缩容方法,参照图2,图2为本发明一种集群容器扩缩容方法第一实施例的流程示意图。
本实施例中,所述集群容器扩缩容方法包括以下步骤:
步骤S10:监测目标集群中各容器的当前性能参数。
应当理解的是,本实施例方法的执行主体可以是具有数据处理、网络通信以及程序运行功能的集群容器扩缩容设备,例如计算机等,或者是其他能够实现相同或相似功能的装置或设备,此处以上述集群容器扩缩容设备(以下简称扩缩容设备)为例进行说明。
需要说明的是,目标集群可以是需要进行资源配置和/或扩缩容管理的Kubernetes集群。上述当前性能参数可以是目标集群中各容器的性能占用数据和负载数据等。
可以理解的是,本实施例扩缩容设备通过实时监测容器的性能指标,从而更快响应负载变化。
在具体实现中,扩缩容设备收集容器的服务类型、名称、性能和负载数据。包括子***描述、CPU利用率、内存使用量、网络流量,各指标与时间的映射关系数据。
步骤S20:将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息。
需要说明的是,资源预测模型可以是预先基于训练数据构建的神经网络模型,例如,资源预测模型可以是基于循环神经网络(Recurrent Neural Network,RNN)、长短期记忆网络(Long Short-Term Memory,LSTM)等神经网络构建的。
可以理解的是,本实施例扩缩容设备选择机器学习算法,如RNN、LSTM等神经网络根据指标变化历史数据进行时间序列预测。训练数据应包含K8s集群中的容器名称、容器资源、当前时间等性能指标数据,让模型学习容器资源分配的时间序列关系,实现根据当前容器的性能信息和容器服务类型预测未来的资源需求。
应当理解的是,本实施例通过定时将当前各容器性能数据输入预先构建的资源预测模型,预测未来一段时间的性能需求,从而获得各容器的占用预测信息,基于各容器的占用预测信息对容器进行资源配置,从而实现自动化扩缩容。
步骤S30:基于所述占用预测信息对各容器进行扩缩容。
需要说明的是,本实施例扩缩容设备基于占用预测信息确定目标集群中各容器的资源占用需求参数,基于资源占用需求参数生成对应的配置文件,基于配置文件对各容器进行扩缩容。
可以理解的是,扩缩容设备通过使用预先构建的资源预测模型对容器的资源占用需求见实时预测,在一些实施例中使用Prometheus等控件实时监控各容器资源占用,并记录时间信息,使用资源预测模型进行容器资源需求的实时预测。
在一些实施例中,扩缩容设备可通过预先编辑的自动化脚本进行自动扩缩容,根据资源预测模型的预测结果中的资源占用需求信息生成配置文件,定期运行配置文件实现目标集群的容器进行自动扩缩容。
进一步地,为了提升模型性能,上述步骤S30之后,还包括:
监测所述目标集群的扩缩容结果;
基于所述扩缩容结果对模型训练集进行更新;
基于更新后的所述模型训练集对所述资源预测模型进行迭代。
可以理解的是,扩缩容设备通过监控实际扩缩容的结果,在线上部署***后根据运行情况持续收集新的性能数据,并将这些数据用于模型的迭代和优化,持续优化模型预测能力。
本实施例通过监测目标集群中各容器的当前性能参数,将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息,基于所述占用预测信息对各容器进行扩缩容;由于本实施例通过将监测到的目标集群中各容器的当前性能参数输入至预先构建的资源预测模型进行资源占用预测,从而基于预测到的各容器的占用预测信息对各容器进行扩缩容,从而确保负载均衡的实时性,有效地适应各种业务场景进行资源实时分配,满足各容器的资源需求。
参考图3,图3为本发明一种集群容器扩缩容方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S20之前,包括:
步骤S21:获取目标集群中各容器的资源占用日志。
需要说明的是,资源占用日志可以是记录有目标集群中各容器在历史时间段中资源占用日志文件。上述资源占用日志可包括各容器的历史资源使用情况、历史资源使用高频时间和低频时间等。
步骤S22:基于所述资源占用日志获取各容器的历史运行信息。
需要说明的是,历史运行信息可以是各容器在历史时间段内的运行情况的相关信息,例如历史运行信息可包括各容器在历史时间段的资源占用情况以及资源占用情况对应的时间节点、占用时长等
可以理解的是,本实施例通过对资源占用日志进行解析,提取出各容器在历史时间段内的运行情况,例如上述历史时间段可以是1个月内、3个月内、一年等。
应当理解的是,扩缩容设备基于所述资源占用日志获取各容器的在历史时间段内的资源占用数据和资源占用数据对应的历史时间数据,基于资源占用数据和历史时间数据分析各容器的历史运行情况。
在一些实施例中,扩缩容设备通过解析资源占用日志确定容器在历史时间段内的资源占用占比参数,基于资源占用占比参数确定容器的高频占比时间段和低频占比时间段,基于高频占比时间段和低频占比时间段分析容器的历史运行情况,其中上述高频占比时间段可以是容器占用较多资源的时间段,上述低频占比时间段可以是容器占用较少资源的时间段。
步骤S23:根据所述历史运行信息建模型训练集。
可以理解的是,本实施例扩缩容设备选择机器学习算法,如RNN、LSTM等神经网络根据指标变化历史数据进行时间序列预测。训练数据应包含K8s集群中的容器名称、容器资源、当前时间等性能指标数据,让模型学习容器资源分配的时间序列关系,实现根据当前容器的性能信息和容器服务类型预测未来的资源需求。
进一步地,为了提升模型训练效率以及提升模型性能,上述步骤S23,可包括:
步骤S231:基于所述历史运行信息获取各容器在历史运行过程中的历史资源占用数据和历史时间数据;
步骤S232:将所述历史资源占用数据与所述历史时间数据进行关联,确定所述历史资源占用数据与所述历史时间数据之间的映射关系;
步骤S233:根据所述映射关系构建模型训练集。
需要说明的是,扩缩容设备通过模型预测从大量数据中发现容器运行的模式、规律和趋势,然后将这些知识应用到新的数据中,以进行预测、分类优化等任务。
作为资源预测模型的数据支持,首先要收集大量对应容器历史性能数据,以预测一天中容器性能与时间的变化规律。性能数据通常包含某一时刻的CPU使用率,CPU Load,内存使用占比、Cache\buffer使用占比、总内存使用,以及磁盘、网络的读写情况,如容器磁盘空间使用、磁盘读取、写入速度、网络下行、上行流量等,以及对应的时刻。可根据服务种类或设备类型添加数据属性,增加预测合理性。
可以理解的是,资源预测模型在通过大量上述数据的学习后,拥有一定的性能参数预测能力,可根据当前性能和时刻数据预测某一属性(如CPU、内存)的变化情况。
步骤S24:基于所述模型训练集构建资源预测模型。
应当理解的是,本实施例通过定时将当前各容器性能数据输入预先构建的资源预测模型,预测未来一段时间的性能需求,从而获得各容器的占用预测信息,基于各容器的占用预测信息对容器进行资源配置,从而实现自动化扩缩容。
可以理解的是,本实施例可通过收集容器的服务类型、名称、性能和负载数据。包括子***描述、CPU利用率、内存使用量、网络流量,各指标与时间的映射关系数据,并将数据整理为可用于机器学习模型训练的格式,基于整理后的数据构建模型训练集,基于模型训练集进行模型训练,构建资源预测模型。
本实施例通过获取目标集群中各容器的资源占用日志,基于所述资源占用日志获取各容器的历史运行信息,根据所述历史运行信息建模型训练集,基于所述模型训练集构建资源预测模型;由于本实施例通过获取目标集群中各容器的资源占用日志,提取出各容器的历史运行信息,基于历史运行信息构建训练集,基于训练集进行模型训练,构建资源预测模型,从而提升了资源需求的预测效率,实现了准确地预测各容器未来时间段的资源占用需求。
参考图4,图4为本发明一种集群容器扩缩容方法第三实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S40,包括:
步骤S41:根据所述占用预测信息确定各容器的资源需求指标和所述资源需求指标对应的资源需求时间;
步骤S42:基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容。
需要说明的是,资源需求指标可以是容器在未来时间段内的资源需求的参数指标,例如资源需求指标可以是某容器需要在18时20分占用80%的CPU资源等,资源需求时间可以是容器占用资源的时间点和时长等。
可以理解的是,扩缩容设备通过资源预测模型对各容器未来时间的资源需求指标进行预测,并预测出资源需求指标对应的需求时长和需求时间点,从而基于资源需求指标和需求时长在各容器的需求时间点进行资源配置,确保满足各容器的资源需求,从而有效地响应各容器的负载变化。
进一步地,为了实时满足容器的资源需求,并快速响应容器的负载变化情况,上述步骤S42,可包括:
步骤S421:基于所述资源需求时间对各容器的资源需求进行排序,获得各容器的资源需求顺序;
步骤S422:根据所述资源需求顺序和所述资源需求指标构建扩缩容序列;
步骤S423:基于所述扩缩容序列对各容器进行扩缩容。
可以理解的是,为了在未来不同时段满足容器的资源需求,确保容器扩缩容的时效性,本实施例扩容设备基于各容器的资源需求时间对各容器的资源需求配置顺序进行排序,获得各容器的资源需求顺序,基于资源需求顺序和资源需求指标构建扩缩容序列,从而确保扩缩容的有序进行,以在不同时段满足容器的资源需求。
进一步地,为了准确地构建扩缩容序列,上述步骤S422,可包括:
步骤S4221:获取各容器的服务类型和容器性能参数;
步骤S4222:基于所述资源需求指标、所述服务类型和容器性能参数对各容器进行权重分配,获得各容器对应的扩缩容权重;
步骤S4223:根据所述扩缩容权重和所述资源需求顺序构建扩缩容序列。
可以理解的是,扩缩容设备收集容器的服务类型、名称、性能和负载数据。包括子***描述、CPU利用率、内存使用量、网络流量,基于容器服务类型和性能参数对各容器进行重要程度评估,基于评估结果对各容器进行权重分配,获得各容器对应的扩缩容权重,根据所述扩缩容权重和所述资源需求顺序构建扩缩容序列。
本实施例通过根据所述占用预测信息确定各容器的资源需求指标和所述资源需求指标对应的资源需求时间,基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容;由于本实施例根据模型预测获得的各容器的资源需求指标和资源需求时间对各容器进行扩缩容,从而实现有序地对各容器进行资源配置,确保各容器在不同时段可以得到资源需求满足,从而更快地响应容器的负载变化。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有集群容器扩缩容程序,所述集群容器扩缩容程序被处理器执行时实现如上文所述的集群容器扩缩容方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
参照图5,图5为本发明集群容器扩缩容装置第一实施例的结构框图。
如图5所示,本发明实施例提出的集群容器扩缩容装置包括:
容器监测模块10,用于监测目标集群中各容器的当前性能参数;
资源预测模块20,用于将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息;
扩缩容模块30,用于基于所述占用预测信息对各容器进行扩缩容。
进一步地,所述集群容器扩缩容装置还包括:
模型训练模块40,用于获取目标集群中各容器的资源占用日志;基于所述资源占用日志获取各容器的历史运行信息;根据所述历史运行信息建模型训练集;基于所述模型训练集构建资源预测模型。
进一步地,所述模型训练模块40,还用于基于所述历史运行信息获取各容器在历史运行过程中的历史资源占用数据和历史时间数据;将所述历史资源占用数据与所述历史时间数据进行关联,确定所述历史资源占用数据与所述历史时间数据之间的映射关系;根据所述映射关系构建模型训练集。
进一步地,所述扩缩容模块30,还用于根据所述占用预测信息确定各容器的资源需求指标和所述资源需求指标对应的资源需求时间;基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容。
进一步地,所述扩缩容模块30,还用于基于所述资源需求时间对各容器的资源需求进行排序,获得各容器的资源需求顺序;根据所述资源需求顺序和所述资源需求指标构建扩缩容序列;基于所述扩缩容序列对各容器进行扩缩容。
进一步地,所述扩缩容模块30,还用于获取各容器的服务类型和容器性能参数;基于所述资源需求指标、所述服务类型和容器性能参数对各容器进行权重分配,获得各容器对应的扩缩容权重;根据所述扩缩容权重和所述资源需求顺序构建扩缩容序列。
进一步地,所述集群容器扩缩容装置还包括:
模型迭代模块50,用于监测所述目标集群的扩缩容结果;基于所述扩缩容结果对模型训练集进行更新;基于更新后的所述模型训练集对所述资源预测模型进行迭代。
本实施例通过监测目标集群中各容器的当前性能参数,将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息,基于所述占用预测信息对各容器进行扩缩容;由于本实施例通过将监测到的目标集群中各容器的当前性能参数输入至预先构建的资源预测模型进行资源占用预测,从而基于预测到的各容器的占用预测信息对各容器进行扩缩容,从而确保负载均衡的实时性,有效地适应各种业务场景进行资源实时分配,满足各容器的资源需求。
应当理解的是,以上仅为举例说明,对本发明的技术方案并不构成任何限定,在具体应用中,本领域的技术人员可以根据需要进行设置,本发明对此不做限制。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的集群容器扩缩容方法,此处不再赘述。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种集群容器扩缩容方法,其特征在于,所述集群容器扩缩容方法包括:
监测目标集群中各容器的当前性能参数;
将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息;
基于所述占用预测信息对各容器进行扩缩容。
2.如权利要求1所述的集群容器扩缩容方法,其特征在于,所述将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息之前,包括:
获取目标集群中各容器的资源占用日志;
基于所述资源占用日志获取各容器的历史运行信息;
根据所述历史运行信息建模型训练集;
基于所述模型训练集构建资源预测模型。
3.如权利要求2所述的集群容器扩缩容方法,其特征在于,所述根据所述历史运行信息建模型训练集,包括:
基于所述历史运行信息获取各容器在历史运行过程中的历史资源占用数据和历史时间数据;
将所述历史资源占用数据与所述历史时间数据进行关联,确定所述历史资源占用数据与所述历史时间数据之间的映射关系;
根据所述映射关系构建模型训练集。
4.如权利要求1所述的集群容器扩缩容方法,其特征在于,所述基于所述占用预测信息对各容器进行扩缩容,包括:
根据所述占用预测信息确定各容器的资源需求指标和所述资源需求指标对应的资源需求时间;
基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容。
5.如权利要求4所述的集群容器扩缩容方法,其特征在于,所述基于所述资源需求指标和所述资源需求时间对各容器进行扩缩容,包括:
基于所述资源需求时间对各容器的资源需求进行排序,获得各容器的资源需求顺序;
根据所述资源需求顺序和所述资源需求指标构建扩缩容序列;
基于所述扩缩容序列对各容器进行扩缩容。
6.如权利要求5所述的集群容器扩缩容方法,其特征在于,所述根据所述资源需求顺序和所述资源需求指标构建扩缩容序列,包括:
获取各容器的服务类型和容器性能参数;
基于所述资源需求指标、所述服务类型和容器性能参数对各容器进行权重分配,获得各容器对应的扩缩容权重;
根据所述扩缩容权重和所述资源需求顺序构建扩缩容序列。
7.如权利要求1至6中任一项所述的集群容器扩缩容方法,其特征在于,所述基于所述占用预测信息对各容器进行扩缩容之后,还包括:
监测所述目标集群的扩缩容结果;
基于所述扩缩容结果对模型训练集进行更新;
基于更新后的所述模型训练集对所述资源预测模型进行迭代。
8.一种集群容器扩缩容装置,其特征在于,所述集群容器扩缩容装置包括:
容器监测模块,用于监测目标集群中各容器的当前性能参数;
资源预测模块,用于将所述当前性能参数输入至预先构建的资源预测模型进行资源占用预测,获得各容器的占用预测信息;
扩缩容模块,用于基于所述占用预测信息对各容器进行扩缩容。
9.一种集群容器扩缩容设备,其特征在于,所述集群容器扩缩容设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的集群容器扩缩容程序,所述集群容器扩缩容程序配置为实现如权利要求1至7中任一项所述的集群容器扩缩容方法。
10.一种存储介质,其特征在于,所述存储介质上存储有集群容器扩缩容程序,所述集群容器扩缩容程序被处理器执行时实现如权利要求1至7任一项所述的集群容器扩缩容方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311448954.4A CN117435306A (zh) | 2023-11-01 | 2023-11-01 | 集群容器扩缩容方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311448954.4A CN117435306A (zh) | 2023-11-01 | 2023-11-01 | 集群容器扩缩容方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117435306A true CN117435306A (zh) | 2024-01-23 |
Family
ID=89547768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311448954.4A Pending CN117435306A (zh) | 2023-11-01 | 2023-11-01 | 集群容器扩缩容方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117435306A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648173A (zh) * | 2024-01-26 | 2024-03-05 | 杭州阿里云飞天信息技术有限公司 | 资源调度方法以及装置 |
CN118051347A (zh) * | 2024-04-16 | 2024-05-17 | 杭州冰特科技股份有限公司 | 一种服务器集群管理方法及*** |
-
2023
- 2023-11-01 CN CN202311448954.4A patent/CN117435306A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648173A (zh) * | 2024-01-26 | 2024-03-05 | 杭州阿里云飞天信息技术有限公司 | 资源调度方法以及装置 |
CN117648173B (zh) * | 2024-01-26 | 2024-05-14 | 杭州阿里云飞天信息技术有限公司 | 资源调度方法以及装置 |
CN118051347A (zh) * | 2024-04-16 | 2024-05-17 | 杭州冰特科技股份有限公司 | 一种服务器集群管理方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112000459B (zh) | 一种用于服务的扩缩容的方法及相关设备 | |
CN117435306A (zh) | 集群容器扩缩容方法、装置、设备及存储介质 | |
CN1956457B (zh) | 用于安排网格计算***中的网格作业的方法和设备 | |
US7752239B2 (en) | Risk-modulated proactive data migration for maximizing utility in storage systems | |
CN111258767A (zh) | 复杂***仿真应用的云计算资源智能分配方法与装置 | |
CN112685170A (zh) | 备份策略的动态优化 | |
CN104298550A (zh) | 一种面向Hadoop的动态调度方法 | |
CN114356587A (zh) | 算力任务跨区域调度方法、***及设备 | |
CN114661482B (zh) | 一种gpu算力管理方法、介质、设备及*** | |
US11651271B1 (en) | Artificial intelligence system incorporating automatic model updates based on change point detection using likelihood ratios | |
CN117271100B (zh) | 算法芯片集群调度方法、装置、计算机设备和存储介质 | |
CN117332970A (zh) | 计划任务管理方法、装置、计算机设备和存储介质 | |
CN117290090A (zh) | 节点协同资源分配方法、装置、设备及存储介质 | |
US11636377B1 (en) | Artificial intelligence system incorporating automatic model updates based on change point detection using time series decomposing and clustering | |
Ismaeel et al. | Real-time energy-conserving vm-provisioning framework for cloud-data centers | |
CN111783487A (zh) | 一种读卡器设备的故障预警方法及装置 | |
Tuli et al. | Optimizing the performance of fog computing environments using ai and co-simulation | |
US11782923B2 (en) | Optimizing breakeven points for enhancing system performance | |
CN115525394A (zh) | 容器数量的调整方法及装置 | |
CN112257977B (zh) | 模糊工时下资源受限的物流项目工期优化方法及*** | |
Chahal et al. | iSeSA: Towards Migrating HPC and AI Workloads to Serverless Platform | |
Adeyelu et al. | A model for coordinating jobs on mobile wireless computational grids | |
Shrivastava et al. | A predictive energy saving technique for 5G network base stations | |
Tournaire et al. | Reinforcement learning with model-based approaches for dynamic resource allocation in a tandem queue | |
CN117112213A (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 |