CN116244069A - 一种扩缩容方法、装置、电子设备和可读存储介质 - Google Patents

一种扩缩容方法、装置、电子设备和可读存储介质 Download PDF

Info

Publication number
CN116244069A
CN116244069A CN202211676705.6A CN202211676705A CN116244069A CN 116244069 A CN116244069 A CN 116244069A CN 202211676705 A CN202211676705 A CN 202211676705A CN 116244069 A CN116244069 A CN 116244069A
Authority
CN
China
Prior art keywords
parameter information
historical
expansion
contraction
index
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
CN202211676705.6A
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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202211676705.6A priority Critical patent/CN116244069A/zh
Publication of CN116244069A publication Critical patent/CN116244069A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/505Allocation 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Genetics & Genomics (AREA)
  • Physiology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供了一种扩缩容方法、装置、电子设备和存储介质,方法包括:确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息,容器中各性能指标的第二历史使用参数信息,以及容器应用中各业务指标的第三历史使用参数信息;对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;将历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;根据预测结果确定对宿主机节点和/或容器进行扩容或缩容处理。本方法支持按照时间策略、资源负载情况以及业务压力情况自动进行使用资源的弹性伸缩。

Description

一种扩缩容方法、装置、电子设备和可读存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种扩缩容方法、一种扩缩容装置、一种电子设备和一种计算机可读存储介质。
背景技术
随着全社会数字化转型的深入推进,越来越多企业由传统架构转向分布式云架构,采用容器化技术部署应用,通过容器编排器(如Kubernetes)更加便捷地部署和管理容器化的应用。Kubernetes自带的Horizontal Pod Autoscaling(Pod水平自动伸缩,简称HPA),可以实现整个集群在面临高负载高并发访问时能迅速扩展集群节点数来提升处理能力,保障平稳运行不影响用户体验,而在低负载时又能及时减少服务器资源投入,降低资源闲置率,是一套目前普遍采用的自动化资源扩缩容机制。其实现原理主要是通过监控分析集群当前负载情况(如CPU使用率、内存、QPS等度量指标),与预先设定的阈值进行对比,计算出满足指标所需副本数量,并据此调整目标资源副本数。
上述扩缩容机制可以快速实现自动扩缩容管理,但在系统规模应用过程中存在以下不足:
1、阈值设定不科学:扩缩容触发基于阈值规则,而阈值设置主要依赖日常维护经验,缺乏科学性的设置指导,经常出现因指标设置不合理造成的扩缩容反应钝化或过敏感。
2、监控指标有限:在HPA中仅提供对CPU使用率、内存、QPS等有限的度量指标进行监控,不适用于复杂多样的应用场景。
3、应对机制较被动:基于对当前指标实时与设定阈值进行对比,容易受干扰,且反应滞后,不具备前瞻性。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种扩缩容方法和相应的一种扩缩容装置、一种电子设备,以及一种计算机可读存储介质。
本发明实施例公开了一种扩缩容方法,所述方法包括:
确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻所述宿主机节点中各性能指标的第一历史使用参数信息,所述容器中各性能指标的第二历史使用参数信息,以及所述容器应用中各业务指标的第三历史使用参数信息;
对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;
将所述历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;
根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理。
可选地,所述预测结果包括对各所述关键指标的未来使用参数信息,所述根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理,包括:
当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息;其中,所述扩缩容策略信息的策略目标为使得进行扩缩容处理的所述宿主机节点和所述容器至少在预设时长范围内正常运行;
根据所述扩缩容策略信息对所述宿主机节点和/或所述容器进行扩容或缩容处理。
可选地,所述当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息,包括:
从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象;其中,所述待扩缩容对象为产生第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息的节点容器对象;
获取所述目标参照扩缩容对象的参照GBDT模型,以及确定各所述关键指标的正常指标范围;
确定所述扩缩容策略信息的所述策略目标,并根据所述策略目标构建目标函数;
采用预设的遗传算法,结合所述目标函数对由所述参照GBDT模型和所述正常指标范围构成的方程求全局最优解,输出对应的所述扩缩容策略信息;其中,所述扩缩容策略信息包括对各所述关键指标的建议配置数值。
可选地,所述从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象,包括:
采用时间滞后互相关算法计算所述待扩缩容对象的各所述关键指标与所述参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值;
对所述多个相关值进行加权求和计算,获得所述待扩缩容对象与所述参照扩缩容对象的最终相关值;
将最终相关值最高的所述参照扩缩容对象确定为所述目标参照扩缩容对象。
可选地,所述对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征,包括:
采用所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息构建指标向量矩阵;
对所述指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值;
基于所述指标特征值确定所述历史使用参数特征。
可选地,所述方法还包括:
基于负载与时间的强相关性,对所述历史使用参数特征进行特征衍生,获得对应的衍生特征数据;
将所述衍生特征数据输入所述预先训练的GBDT模型中对未来所述关键指标的使用趋势进行预测。
可选地,所述预设的使用参数阈值包括预设的扩容参数阈值和预设的缩容参数阈值,所述当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息,包括:
当所述未来使用参数信息超过所述预设的扩容参数阈值时,通过所述预先训练的GBDT模型输出对应的扩容策略信息;
当所述未来使用参数信息低于所述预设的缩容参数阈值时,通过所述预先训练的GBDT模型输出对应的缩容策略信息。
本发明实施例还公开了一种扩缩容装置,所述装置包括:
确定及获取模块,用于确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻所述宿主机节点中各性能指标的第一历史使用参数信息,所述容器中各性能指标的第二历史使用参数信息,以及所述容器应用中各业务指标的第三历史使用参数信息;
特征提取模块,用于对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;
输入输出模块,用于将所述历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;
扩缩容处理模块,用于根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理。
可选地,所述预测结果包括对各所述关键指标的未来使用参数信息,所述扩缩容处理模块,包括:
输出子模块,用于当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息;其中,所述扩缩容策略信息的策略目标为使得进行扩缩容处理的所述宿主机节点和所述容器至少在预设时长范围内正常运行;
扩缩容处理子模块,用于根据所述扩缩容策略信息对所述宿主机节点和/或所述容器进行扩容或缩容处理。
可选地,所述输出子模块,包括:
查找单元,用于从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象;其中,所述待扩缩容对象为产生第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息的节点容器对象;
获取及确定单元,用于获取所述目标参照扩缩容对象的参照GBDT模型,以及确定各所述关键指标的正常指标范围;
确定及构建单元,用于确定所述扩缩容策略信息的所述策略目标,并根据所述策略目标构建目标函数;
求解及输出单元,用于采用预设的遗传算法,结合所述目标函数对由所述参照GBDT模型和所述正常指标范围构成的方程求全局最优解,输出对应的所述扩缩容策略信息;其中,所述扩缩容策略信息包括对各所述关键指标的建议配置数值。
可选地,所述查找单元,包括:
计算子单元,用于采用时间滞后互相关算法计算所述待扩缩容对象的各所述关键指标与所述参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值;
加权求和计算子单元,用于对所述多个相关值进行加权求和计算,获得所述待扩缩容对象与所述参照扩缩容对象的最终相关值;
确定子单元,用于将最终相关值最高的所述参照扩缩容对象确定为所述目标参照扩缩容对象。
可选地,所述特征提取模块,包括:
构建子模块,用于采用所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息构建指标向量矩阵;
加权平均计算子模块,用于对所述指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值;
确定子模块,用于基于所述指标特征值确定所述历史使用参数特征。
可选地,所述装置还包括:
特征衍生模块,用于基于负载与时间的强相关性,对所述历史使用参数特征进行特征衍生,获得对应的衍生特征数据;
输入模块,用于将所述衍生特征数据输入所述预先训练的GBDT模型中对未来所述关键指标的使用趋势进行预测。
可选地,所述预设的使用参数阈值包括预设的扩容参数阈值和预设的缩容参数阈值,所述输出子模块,包括:
第一输出单元,用于当所述未来使用参数信息超过所述预设的扩容参数阈值时,通过所述预先训练的GBDT模型输出对应的扩容策略信息;
第二输出单元,用于当所述未来使用参数信息低于所述预设的缩容参数阈值时,通过所述预先训练的GBDT模型输出对应的缩容策略信息。
本发明实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述一种扩缩容方法。
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述一种扩缩容方法。
本发明实施例包括以下优点:
在本发明实施例中,可以确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息,容器中各性能指标的第二历史使用参数信息,以及容器应用中各业务指标的第三历史使用参数信息,对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征,可以将历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,根据预测结果确定对宿主机节点和/或容器进行扩容或缩容处理。通过采用上述方法,通过基于GBDT模型的扩缩容预测算法对资源请求的历史规律数据进行分析。基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。本方案支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
附图说明
图1是本发明实施例提供的一种扩缩容方法的步骤流程图;
图2是本发明实施例提供的另一种扩缩容方法的步骤流程图;
图3是本发明实施例的一种GBDT模型预测过程示意图;
图4是本发明实施例的确定扩缩容策略信息的过程示意图;
图5是本发明实施例的一种扩缩容方法的应用系统示意图;
图6是本发明实施例的一种扩缩容方法的流程示意图;
图7是本发明实施例的GBDT模型迭代优化的过程示意图;
图8是本发明实施例提供的一种扩缩容方法的应用场景示意图;
图9是本发明实施例的扩缩容方法的应用界面示意图;
图10是本发明实施例提供的一种扩缩容装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其它实施例,都属于本发明保护的范围。
Kubernetes自带的HPA,通过监控分析集群当前负载情况(如CPU使用率、内存、QPS等度量指标),与预先设定的阈值进行对比,计算出满足指标所需副本数量,并据此调整目标资源副本数,简便快速实现自动扩缩容管理。但整个过程中阈值设置、监控指标选择、被动应对机制等因素导致在管理容器资源伸缩时,效果不够理想。而部分改进思路也仅是引入多指标自回归算法,选取CPU、内存、请求响应时间作为度量指标,结合时间序列来进行负载预测以实现弹性伸缩。此方式仍然以度量指标为主,关注的业务指标不足,且未考虑构建案例知识库有效沉淀历史数据进行更精准的模型调优。
因此,本发明拟提供一种克服上述问题或者至少部分地解决上述问题的一种扩缩容方法和相应的一种扩缩容装置、一种电子设备,以及一种计算机可读存储介质。
本发明实施例的核心构思之一在于,可以确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息,容器中各性能指标的第二历史使用参数信息,以及容器应用中各业务指标的第三历史使用参数信息,对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征,可以将历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,根据预测结果确定对宿主机节点和/或容器进行扩容或缩容处理。通过采用上述方法,基于GBDT模型的扩缩容预测算法对资源请求的历史规律数据进行分析。基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。本方案支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
参照图1,示出了本发明实施例提供的一种扩缩容方法的步骤流程图,具体可以包括如下步骤:
步骤101,确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息,容器中各性能指标的第二历史使用参数信息,以及容器应用中各业务指标的第三历史使用参数信息。
在本发明实施例中,容器应用运行在宿主机节点的对应容器中,可以获取在某个历史时刻宿主机节点中各性能指标的历史使用参数信息,此处称为第一历史使用参数信息;以及获取在该历史时刻容器中各性能指标的历史使用参数信息,此处称为第二历史使用参数信息;以及获取在该历史时刻容器应用中各业务指标的历史使用参数信息,此处称为第三历史使用参数信息。
在具体实施中,宿主机节点/容器的性能指标可以包括CPU指标、内存指标、网络带宽指标、磁盘指标中的一种或多种;容器应用的业务指标可以包括业务请求数/秒、响应时间、超时数量、业务工单数中的一种或多种。
在实际应用中,可以对原本采集的一分钟一个点的颗粒度,向一小时上规整,取上四分位数作为代表点,形成宿主机节点/容器的历史性能指标数据。
步骤102,对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征。
在本发明实施例中,可以对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征。
步骤103,将历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果。
在本发明实施例中,可以将历史使用参数特征输入预先训练的GBDT模型中,预测关键指标的未来使用趋势,输出对应的预测结果。
步骤104,根据预测结果确定对宿主机节点和/或容器进行扩容或缩容处理。
可以根据输出的预测结果确定是否对宿主机节点和/或容器进行扩容或缩容处理。
综上,在本发明实施例中,基于GBDT模型的扩缩容预测算法对资源请求的历史规律数据进行分析。基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。本方案支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
参照图2,示出了本发明实施例提供的另一种扩缩容方法的步骤流程图,具体可以包括如下步骤:
步骤201,确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息,容器中各性能指标的第二历史使用参数信息,以及容器应用中各业务指标的第三历史使用参数信息。
在本发明实施例中,容器应用运行在宿主机节点的对应容器中,可以获取在某个历史时刻宿主机节点中各性能指标的第一历史使用参数信息;以及获取在该历史时刻容器中各性能指标的第二历史使用参数信息;以及获取在该历史时刻容器应用中各业务指标的第三历史使用参数信息。
步骤202,对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征。
在本发明一种可选的实施例中,步骤202中对第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征,具体可以包括如下子步骤:
子步骤S11,采用第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息构建指标向量矩阵。
子步骤S12,对指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值。
子步骤S13,基于指标特征值确定历史使用参数特征。
在本发明实施例中,可以采用第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息构建指标向量矩阵,然后对该指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值,基于指标特征值确定历史使用参数特征。
在具体实施中,采集的历史使用参数信息组成指标向量(x1,x2,x3),数据形式为由历史数据组成的矩阵。对矩阵的每一行指标数据求加权平均值,将每项指标都考虑进去,但越重要的指标相应的权值也越大,对于第k行,可以按如下公式转化为指标特征值:
Figure BDA0004018516780000101
其中,Xk为第k行的指标特征值;Xki为第k行的第i个指标数据;m为第k行的指标数据总个数。
步骤203,将历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果。
在本发明实施例中,可以将历史使用参数特征输入预先训练的GBDT模型中,预测关键指标的未来使用趋势,输出对应的预测结果。
在本发明一种可选的实施例中,具体还可以执行如下步骤:
基于负载与时间的强相关性,对历史使用参数特征进行特征衍生,获得对应的衍生特征数据;将衍生特征数据输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测。
在本发明实施例中,还可以基于负载与时间的强相关性,对历史使用参数特征进行特征衍生,获得对应的衍生特征数据,然后可以将衍生特征数据和历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,获得对应的预测结果。
在具体实施中,可以根据负载与时间的强相关性,按时间衍生出多维特征数据,和历史使用参数特征一起作为GBDT模型的输入,GBDT模型为可根据历史规律预测负载的模型。此方法加入了对多指标数据进行监控综合处理,着重考虑了最可能成为瓶颈的负载,使得对不同负载特征的应用具有了一定的普适性,避免由于单一指标选择不当导致预测算法失效。同时该算法充分利用了负载与时间的强相关性,并且加入了短期趋势指标,由此模型预测出的结果可以同时兼顾长期规律和短期变化,增加预测结果的准确度,将结果应用于扩缩容策略,可以在负载高峰前提前扩容,缓解滞后性。
参照图3所示,为本发明实施例的一种GBDT模型预测过程示意图,按时间衍生出多维特征数据,和历史使用参数特征一起作为算法模型的输入,进行负载预测。
步骤204,当未来使用参数信息达到预设的使用参数阈值时,通过预先训练的GBDT模型输出对应的扩缩容策略信息。
其中,扩缩容策略信息的策略目标为使得进行扩缩容处理的宿主机节点和容器至少在预设时长范围内正常运行。
在本发明实施例中,GBDT模型输出的预测结果包括对各关键指标的未来使用参数信息,如果未来使用参数信息达到预设的使用参数阈值时,可以通过预先训练的GBDT模型输出对应的扩缩容策略信息。
判断关键指标的未来使用趋势是否在允许的范围内,如果达到扩缩容阈值,则输出扩缩容策略信息。例如,根据数据预测出某个容器应用在未来1小时后可能内存占用率提升至60%,而该容器应用的内存占用率在75%以下都属正常范围,故可不采取措施;根据数据预测出某个容器应用在未来1小时后CPU使用率下降到15%,达到缩容参数阈值,则触发缩容策略对现有容器应用进行资源回收。
在本发明一种可选的实施例中,预设的使用参数阈值包括预设的扩容参数阈值和预设的缩容参数阈值,步骤204中当未来使用参数信息达到预设的使用参数阈值时,通过预先训练的GBDT模型输出对应的扩缩容策略信息,具体可以包括如下子步骤:
子步骤S21,当未来使用参数信息超过预设的扩容参数阈值时,通过预先训练的GBDT模型输出对应的扩容策略信息。
子步骤S22,当未来使用参数信息低于预设的缩容参数阈值时,通过预先训练的GBDT模型输出对应的缩容策略信息。
在本发明实施例中,如果未来使用参数信息超过预设的扩容参数阈值,则可以通过GBDT模型输出对应的扩容策略信息;如果未来使用参数信息低于预设的缩容参数阈值,则可以通过GBDT模型输出对应的缩容策略信息。
在本发明一种可选的实施例中,步骤204中当未来使用参数信息达到预设的使用参数阈值时,通过预先训练的GBDT模型输出对应的扩缩容策略信息,具体可以包括如下子步骤:
子步骤S31,从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象。
其中,待扩缩容对象为产生第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息的节点容器对象。
案例库中存储有经典案例及扩缩容效果较好的已扩缩容对象,存储该对象在扩缩容前后一定时间内每个关键指标的数据变化趋势,形成案例库。
子步骤S32,获取目标参照扩缩容对象的参照GBDT模型,以及确定各关键指标的正常指标范围。
在本发明实施例中,可以从案例库中获取与待扩缩容对象相关性最高的已扩缩容对象(即目标参照扩缩容对象)的GBDT模型,此处称作参照GBDT模型。
可以获取容器应用的关键指标的正常指标范围。例如,容器应用为APP_A,APP_A正常状态下,CPU正常区间范围【20%-80%】,内存正常区间范围【20%-80%】。
子步骤S33,确定扩缩容策略信息的策略目标,并根据策略目标构建目标函数。
策略目标为使得进行扩缩容处理的宿主机节点和容器至少在预设时长范围内正常运行。
目标函数:与APP_A相关性最高已扩缩容对象的GBDT模型(CPU、内存)的关键指标输出在未来至少一定周期内80%都是正常值。
子步骤S34,采用预设的遗传算法,结合目标函数对由参照GBDT模型和正常指标范围构成的方程求全局最优解,输出对应的扩缩容策略信息。
其中,扩缩容策略信息包括对各关键指标的建议配置数值。
在本发明实施例中,可以采用遗传算法对上述方程寻找全局最优解,然后根据原有的配置属性,映射为实际配置需求(CPU核数及内存),再进行对各关键指标的建议配置数值输出。
输出扩缩容策略及策略执行前后一定时间内每个关键指标的变化趋势将形成新的案例存储在案例库中,供下次使用。
参照图4所示,为本发明实施例的确定扩缩容策略信息的过程示意图。输出的扩缩容策略信息的策略目标是可以保证机器(待扩缩容对象)正常运行至少一定周期以上(天/小时)。
在本发明一种可选的实施例中,子步骤S31中从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象,具体可以包括如下子步骤:
采用时间滞后互相关算法计算待扩缩容对象的各关键指标与参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值;对多个相关值进行加权求和计算,获得待扩缩容对象与参照扩缩容对象的最终相关值;将最终相关值最高的参照扩缩容对象确定为目标参照扩缩容对象。
进行相关性分析可以采用时间滞后互相关(TLCC),TLCC是通过逐步移动一个时间序列向量并反复计算两个信号间的相关性而测量得到的。
本发明实施例可以采用时间滞后互相关算法计算待扩缩容对象的各关键指标与参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值,对多个相关值进行加权求和计算,获得待扩缩容对象与参照扩缩容对象的最终相关值,将最终相关值最高的参照扩缩容对象确定为目标参照扩缩容对象。即需要对多个关键指标的相关性进行分析时,可以对每个关键指标相关性加权求和,得到最终相关性。
步骤205,根据扩缩容策略信息对宿主机节点和/或容器进行扩容或缩容处理。
在本发明实施例中,可以根据输出的扩缩容策略信息对宿主机节点和/或容器进行扩容或缩容处理。
参照图5所示,为本发明实施例的一种扩缩容方法的应用系统示意图。该应用系统包括采集中心、AI智能调度引擎和资源调度中心。
其中,采集中心负责采集宿主机节点和容器的性能指标(例如CPU、内存、网络等)的历史使用参数信息、及对应承载的容器应用的业务指标(例如业务请求数/秒、响应时间、超时数量等)的历史使用参数信息,通过消息/API方式传递给AI智能调度引擎。
AI智能调度引擎根据AI算法(GBDT预测算法)给出扩缩容的决策,并采用遗传算法对GBDT模型进行持续优化。
资源调度中心根据AI智能调度引擎的决策自动执行应用资源弹性扩缩容。
参照图6所示,为本发明实施例的一种扩缩容方法的流程示意图。具体流程可以包括:
1、采集中心采集宿主机节点和容器的性能指标(例如CPU、内存、网络带宽、磁盘等)的历史使用参数信息,以及采集容器应用的业务指标(例如业务请求数/秒、响应时间、超时数量、业务工单数等)的历史使用参数信息;
2、采集中心将采集数据输入到GBDT模型用来预测关键指标未来的使用趋势;
3、AI智能调度引擎根据GBDT预测结果判断关键指标的未来使用趋势是否在允许的范围内,如果达到扩缩容阈值,则输出扩缩容策略;
4、资源调度中心根据AI智能调度引擎输出的扩缩容策略,执行弹性扩缩容,对使用资源进行调整。如图9所示,为本发明实施例的扩缩容方法的应用界面示意图。
在本发明一种可选的实施例中,还可以对GBDT模型进行迭代优化,参照图7所示,为本发明实施例的GBDT模型迭代优化的过程示意图,可以采用遗传算法对GBDT模型的参数如:最大迭代次数、步长、正则化、损失函数、alpha、max_depth(树的最大深度)、min_samples_split(拆分内部节点所需的最小样本数)、max_leaf_nodes(最大叶子节点数)等进行优化。具体流程可以包括:
1、将数据集按照时间账期划分训练集和测试集。
2、设定各个参数的取值范围,输入到遗传算法,目标函数为GBDT模型预测测试集的误差符合最小评价指数MAE要求。平均绝对误差(MAE)是绝对误差的平均值,能更好地反映预测值误差的实际情况,该指标越小越好。
3、设定最大迭代数为30,变异概率0.5,使用遗传算法不断迭代优化,最终输出最优参数。
参照图8所示,为本发明实施例提供的一种扩缩容方法的应用场景示意图,本发明提供的扩缩容方法可以应用于云化架构下的负载资源弹性调度的场景,具体实施过程如下:
S1、采集中心采集宿主机节点和容器的性能指标的历史使用参数信息、以及采集对应承载的容器应用的业务指标的历史使用参数信息,通过消息/API方式传递给AI智能调度引擎(如,当前容器部署的容器应用为APP_A,采集中心通过agent采集到CPU占用率68%,内存占用率48%,业务请求数391次/秒,平均响应时间3.4秒)。
S2、AI智能调度引擎根据输入数据,结合机器学习算法(GBDT预测算法)给出扩缩容的决策,并采用遗传算法对GBDT模型进行持续优化。
S201、采集中心实时采集的各指标的历史使用参数信息输入到GBDT模型用来预测关键指标未来的使用趋势。
S20101、从案例库中获取与待扩缩容对象相关性最高的已扩缩容对象的GBDT模型(根据案例库匹配情况,分析得出APP_B与库中APP_A相关度较高,因此选取APP_B的GBDT模型作为初始模型)。
S20102、对阈值告警规则信息进行分析,获取容器应用的关键指标的正常指标范围(如APP_B正常运行,CPU正常区间范围[20%-40%],内存正常区间范围[20%-60%],业务请求数正常区间范围[100-200次/秒],平均响应时间正常区间范围[1-2秒])。
S20103、使用遗传算法对上述方程寻找全局最优解,然后根据原有的配置属性,映射为实际配置需求(CPU核数及内存)(如判定此应用资源需求为16C vcpu,64G内存)。
S20104、根据上一步骤输出结果进行关键指标建议配置数值输出。
S20105、输出扩缩容策略信息,策略执行前后一定时间内每个关键指标的变化趋势将形成新的案例存储在案例库中,供下次使用(即生成本次应用的专属模型存储在案例库中,供下次使用)。
S202、AI智能调度引擎根据GBDT预测结果判断关键指标未来使用趋势是否在允许的范围内(例如,根据数据预测出该应用在未来1小时后可能内存占用率提升至79%,而根据历史性能模型分析该应用内存占用率60%以下才属正常范围,故判定需要进行扩容)。
S203、AI智能调度引擎判断预测结果是否达到扩缩容阈值(如未来1小时后可能内存占用率提升至79%,达到扩容阈值上限75%,故采取扩容措施)。
S204、AI智能调度引擎输出扩缩容策略供资源调度中心执行。
S3、资源调度中心根据AI智能调度引擎输出的扩缩容策略,执行弹性扩缩容,对资源进行调整(如扩容新加节点8C 32G满足应用需求)。
本发明创建监控指标数据多维矩阵,采集节点和容器的性能指标数据,以及容器应用的业务指标数据,将历史数据与预测数据进行互补,运用AI算法(GBDT)实现容器化应用的智能弹性伸缩策略制定,支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,轻松自如的应对各种业务负载波动的问题。
相对现有技术,如Kubernetes自带自动伸缩管理,本发明主要从策略合理性、多样性、灵活性三个方面进行优化提升。
原有容器管理(Kubernetes)自动伸缩决策是采用基于观察时点的资源使用情况即时作出的应对动作,具有一定滞后性。本发明伸缩策略主要侧重于通过基于GBDT的扩缩容预测算法对资源请求的历史规律数据进行分析。如计费系统高峰期为月初出账期三天访问量约平时3-4倍,而CRM系统高峰期为月底,日高峰按时段主要集中在11点和15点左右,以及一些政策性活动带来的访问量提升,基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。
原有Kubernetes弹性伸缩主要采用横向扩展方式,适合此方式的应用需进行无状态服务化改造,其工程较大,故需配套纵向伸缩方式,而本发明支持横纵两种方式扩展,其中纵向扩展可以给已有pod分配更多CPU或内存,适应性更强,灵活性更高。
对比现有自动伸缩管理策略,本发明使用遗传算法+GBDT模型不断调整,以事实数据,海量数据为基础,不断自发的迭代优化模型,保障弹性扩缩容策略的合理性。
本发明采用算法对系统特性进行差异化的区分,同时不断构建扩缩容案例库,有效的建立“一户一案”的策略池,为扩缩容提供了有力的举证。
原有伸缩管理主要以pod度量为判断依据,而本发明支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
综上,在本发明实施例中,基于GBDT模型的扩缩容预测算法对资源请求的历史规律数据进行分析。基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。本方案支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图10,示出了本发明实施例提供的一种扩缩容装置的结构框图,具体可以包括如下模块:
确定及获取模块1001,用于确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻所述宿主机节点中各性能指标的第一历史使用参数信息,所述容器中各性能指标的第二历史使用参数信息,以及所述容器应用中各业务指标的第三历史使用参数信息;
特征提取模块1002,用于对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;
输入输出模块1003,用于将所述历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;
扩缩容处理模块1004,用于根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理。
在本发明实施例中,所述预测结果包括对各所述关键指标的未来使用参数信息,所述扩缩容处理模块,包括:
输出子模块,用于当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息;其中,所述扩缩容策略信息的策略目标为使得进行扩缩容处理的所述宿主机节点和所述容器至少在预设时长范围内正常运行;
扩缩容处理子模块,用于根据所述扩缩容策略信息对所述宿主机节点和/或所述容器进行扩容或缩容处理。
在本发明实施例中,所述输出子模块,包括:
查找单元,用于从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象;其中,所述待扩缩容对象为产生第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息的节点容器对象;
获取及确定单元,用于获取所述目标参照扩缩容对象的参照GBDT模型,以及确定各所述关键指标的正常指标范围;
确定及构建单元,用于确定所述扩缩容策略信息的所述策略目标,并根据所述策略目标构建目标函数;
求解及输出单元,用于采用预设的遗传算法,结合所述目标函数对由所述参照GBDT模型和所述正常指标范围构成的方程求全局最优解,输出对应的所述扩缩容策略信息;其中,所述扩缩容策略信息包括对各所述关键指标的建议配置数值。
在本发明实施例中,所述查找单元,包括:
计算子单元,用于采用时间滞后互相关算法计算所述待扩缩容对象的各所述关键指标与所述参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值;
加权求和计算子单元,用于对所述多个相关值进行加权求和计算,获得所述待扩缩容对象与所述参照扩缩容对象的最终相关值;
确定子单元,用于将最终相关值最高的所述参照扩缩容对象确定为所述目标参照扩缩容对象。
在本发明实施例中,所述特征提取模块,包括:
构建子模块,用于采用所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息构建指标向量矩阵;
加权平均计算子模块,用于对所述指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值;
确定子模块,用于基于所述指标特征值确定所述历史使用参数特征。
在本发明实施例中,所述装置还包括:
特征衍生模块,用于基于负载与时间的强相关性,对所述历史使用参数特征进行特征衍生,获得对应的衍生特征数据;
输入模块,用于将所述衍生特征数据输入所述预先训练的GBDT模型中对未来所述关键指标的使用趋势进行预测。
在本发明实施例中,所述预设的使用参数阈值包括预设的扩容参数阈值和预设的缩容参数阈值,所述输出子模块,包括:
第一输出单元,用于当所述未来使用参数信息超过所述预设的扩容参数阈值时,通过所述预先训练的GBDT模型输出对应的扩容策略信息;
第二输出单元,用于当所述未来使用参数信息低于所述预设的缩容参数阈值时,通过所述预先训练的GBDT模型输出对应的缩容策略信息。
综上,在本发明实施例中,通过基于GBDT模型的扩缩容预测算法对资源请求的历史规律数据进行分析。基于历史数据的建模分析制定出相应扩缩容策略并提前实施,将有效的保障应用高峰期的平稳过渡,具备一定前瞻性。本方案支持按照时间策略、资源负载情况以及业务压力情况自动进行弹性伸缩,灵活自如的应对各种业务负载波动的问题。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述一种扩缩容方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述一种扩缩容方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理终端设备上,使得在计算机或其它可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种扩缩容方法和一种扩缩容装置、一种电子设备和一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种扩缩容方法,其特征在于,所述方法包括:
确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻所述宿主机节点中各性能指标的第一历史使用参数信息,所述容器中各性能指标的第二历史使用参数信息,以及所述容器应用中各业务指标的第三历史使用参数信息;
对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;
将所述历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;
根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理。
2.根据权利要求1所述的方法,其特征在于,所述预测结果包括对各所述关键指标的未来使用参数信息,所述根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理,包括:
当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息;其中,所述扩缩容策略信息的策略目标为使得进行扩缩容处理的所述宿主机节点和所述容器至少在预设时长范围内正常运行;
根据所述扩缩容策略信息对所述宿主机节点和/或所述容器进行扩容或缩容处理。
3.根据权利要求2所述的方法,其特征在于,所述当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息,包括:
从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象;其中,所述待扩缩容对象为产生第一历史使用参数信息、第二历史使用参数信息和第三历史使用参数信息的节点容器对象;
获取所述目标参照扩缩容对象的参照GBDT模型,以及确定各所述关键指标的正常指标范围;
确定所述扩缩容策略信息的所述策略目标,并根据所述策略目标构建目标函数;
采用预设的遗传算法,结合所述目标函数对由所述参照GBDT模型和所述正常指标范围构成的方程求全局最优解,输出对应的所述扩缩容策略信息;其中,所述扩缩容策略信息包括对各所述关键指标的建议配置数值。
4.根据权利要求3所述的方法,其特征在于,所述从预设的案例库中查找与待扩缩容对象相关性高的目标参照扩缩容对象,包括:
采用时间滞后互相关算法计算所述待扩缩容对象的各所述关键指标与所述参照扩缩容对象的各参照关键指标的相关性,获得对应的多个相关值;
对所述多个相关值进行加权求和计算,获得所述待扩缩容对象与所述参照扩缩容对象的最终相关值;
将最终相关值最高的所述参照扩缩容对象确定为所述目标参照扩缩容对象。
5.根据权利要求1所述的方法,其特征在于,所述对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征,包括:
采用所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息构建指标向量矩阵;
对所述指标向量矩阵的每行指标数据进行加权平均计算,获得每行分别对应的指标特征值;
基于所述指标特征值确定所述历史使用参数特征。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
基于负载与时间的强相关性,对所述历史使用参数特征进行特征衍生,获得对应的衍生特征数据;
将所述衍生特征数据输入所述预先训练的GBDT模型中对未来所述关键指标的使用趋势进行预测。
7.根据权利要求2所述的方法,其特征在于,所述预设的使用参数阈值包括预设的扩容参数阈值和预设的缩容参数阈值,所述当所述未来使用参数信息达到预设的使用参数阈值时,通过所述预先训练的GBDT模型输出对应的扩缩容策略信息,包括:
当所述未来使用参数信息超过所述预设的扩容参数阈值时,通过所述预先训练的GBDT模型输出对应的扩容策略信息;
当所述未来使用参数信息低于所述预设的缩容参数阈值时,通过所述预先训练的GBDT模型输出对应的缩容策略信息。
8.一种扩缩容装置,其特征在于,所述装置包括:
确定及获取模块,用于确定容器应用运行的宿主机节点和容器,并获取在某个历史时刻所述宿主机节点中各性能指标的第一历史使用参数信息,所述容器中各性能指标的第二历史使用参数信息,以及所述容器应用中各业务指标的第三历史使用参数信息;
特征提取模块,用于对所述第一历史使用参数信息、所述第二历史使用参数信息和所述第三历史使用参数信息进行特征提取,获得对应的历史使用参数特征;
输入输出模块,用于将所述历史使用参数特征输入预先训练的GBDT模型中对未来关键指标的使用趋势进行预测,输出对应的预测结果;
扩缩容处理模块,用于根据所述预测结果确定对所述宿主机节点和/或所述容器进行扩容或缩容处理。
9.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-7中任一项所述一种扩缩容方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述一种扩缩容方法。
CN202211676705.6A 2022-12-26 2022-12-26 一种扩缩容方法、装置、电子设备和可读存储介质 Pending CN116244069A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211676705.6A CN116244069A (zh) 2022-12-26 2022-12-26 一种扩缩容方法、装置、电子设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211676705.6A CN116244069A (zh) 2022-12-26 2022-12-26 一种扩缩容方法、装置、电子设备和可读存储介质

Publications (1)

Publication Number Publication Date
CN116244069A true CN116244069A (zh) 2023-06-09

Family

ID=86630467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211676705.6A Pending CN116244069A (zh) 2022-12-26 2022-12-26 一种扩缩容方法、装置、电子设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN116244069A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116610534A (zh) * 2023-07-18 2023-08-18 贵州海誉科技股份有限公司 一种基于Kubernetes集群资源的改进预测性弹性伸缩方法
CN117608809A (zh) * 2024-01-18 2024-02-27 中国电子科技集团公司第十五研究所 基于梯度提升决策树的多任务计划进度预测系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116610534A (zh) * 2023-07-18 2023-08-18 贵州海誉科技股份有限公司 一种基于Kubernetes集群资源的改进预测性弹性伸缩方法
CN116610534B (zh) * 2023-07-18 2023-10-03 贵州海誉科技股份有限公司 一种基于Kubernetes集群资源的改进预测性弹性伸缩方法
CN117608809A (zh) * 2024-01-18 2024-02-27 中国电子科技集团公司第十五研究所 基于梯度提升决策树的多任务计划进度预测系统

Similar Documents

Publication Publication Date Title
CN109587713B (zh) 一种基于arima模型的网络指标预测方法、装置及存储介质
US11334813B2 (en) Method and apparatus for managing machine learning process
CN116244069A (zh) 一种扩缩容方法、装置、电子设备和可读存储介质
US20150254554A1 (en) Information processing device and learning method
CN112633316B (zh) 一种基于边界估值理论的负荷预测方法和装置
JP5857049B2 (ja) 単語のユーザー挙動数の予測
CN112598248B (zh) 负荷预测方法、装置、计算机设备和存储介质
CN105071983A (zh) 一种面向云计算在线业务的异常负载检测方法
CN110969290A (zh) 一种基于深度学习的径流概率预测方法及系统
CN111327655A (zh) 多租户容器资源配额预测方法、装置及电子设备
CN110689183B (zh) 一种集群光伏功率概率预测方法、系统、介质及电子设备
CN112101485B (zh) 目标设备识别方法、电子设备及介质
CN116307215A (zh) 一种电力系统的负荷预测方法、装置、设备及存储介质
CN110956278A (zh) 重新训练机器学习模型的方法和系统
CN116861331A (zh) 一种融合专家模型决策的数据识别方法及系统
CN113868953A (zh) 工业系统中多机组运行优化方法、装置、系统及存储介质
CN112069294A (zh) 一种数学题处理方法、装置、设备及存储介质
CN114389953B (zh) 一种基于流量预测的Kubernetes容器动态扩缩容方法及系统
CN114841664A (zh) 一种多任务处理顺序确定方法及装置
WO2022156743A1 (zh) 特征构建方法和装置、模型训练方法和装置、设备、介质
CN117827863B (zh) 基于cldas数据库的大气环境监测分析方法及系统
CN117034010A (zh) 虚拟资源转换预测模型训练方法、装置、设备和存储介质
Panda et al. Machine learning using exploratory analysis to predict taxi fare
CN111191669B (zh) 一种数据处理方法、装置及存储介质
CN117648157A (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