CN111459617B - 基于云平台的容器化应用自动分配优化系统及其方法 - Google Patents

基于云平台的容器化应用自动分配优化系统及其方法 Download PDF

Info

Publication number
CN111459617B
CN111459617B CN202010256959.7A CN202010256959A CN111459617B CN 111459617 B CN111459617 B CN 111459617B CN 202010256959 A CN202010256959 A CN 202010256959A CN 111459617 B CN111459617 B CN 111459617B
Authority
CN
China
Prior art keywords
resource
node
module
management
data
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.)
Active
Application number
CN202010256959.7A
Other languages
English (en)
Other versions
CN111459617A (zh
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.)
CSG Electric Power Research Institute
Original Assignee
CSG Electric Power Research Institute
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 CSG Electric Power Research Institute filed Critical CSG Electric Power Research Institute
Priority to CN202010256959.7A priority Critical patent/CN111459617B/zh
Publication of CN111459617A publication Critical patent/CN111459617A/zh
Application granted granted Critical
Publication of CN111459617B publication Critical patent/CN111459617B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • 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

Abstract

本发明公开了一种基于云平台的容器化应用自动分配优化系统及其方法,所述系统包括:至少一个资源节点,用于收集当前运行容器消耗资源的数据;资源节点状态数据边缘计算器,用于结合资源节点对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况;至少两个管理节点,用于对资源信息、调度任务、队列信息进行基础管理,监控各个资源节点状态,对资源节点状态数据进行分析统计,并对分配、优化资源提供执行策略。本发明能够实现云平台中的资源进行集约化管理,在监控资源节点各项性能指标基础上,通过量化分析当前运行的资源性能实现合理分配节点,并且可以根据资源节点工作负载情况进行统一计算调整,动态地进行伸缩。

Description

基于云平台的容器化应用自动分配优化系统及其方法
技术领域
本发明涉及云平台资源管理方法技术领域,更具体涉及一种基于云平台的容器化应用自动分配优化系统及其方法。
背景技术
云计算是一种资源利用模式,以简便的途径和按需的方式通过网络访问可配置的计算资源,快速部署资源。在这种模式中,应用、数据和资源以服务的方式通过网络提供给用户使用;大量的计算资源组成资源池,用于动态创建高度虚拟化的资源以供用户使用。云计算提供了一种弹性的资源供应模式,用户通过按需请求分配的方式来获取资源的使用权,从而为自己的应用提供服务,因此以Docker为代表的容器技术应运而生,开发者能够将应用封装成标准的容器镜像并且统一发布到不同的平台上。
目前的容器管理系统提供了容器简单的编排和监控功能,需要手动指定和调整容器需求的资源消耗,但是在实际运行过程中,应用工作负载动态变化使得管理系统不能及时地调整容器所需的计算资源,从而违背了应用的性能目标,而且指定资源消耗、优化资源参数需要人工去维护,这种管理方式缺乏灵活性和效率。目前常见的容器管理系统需要人工手动分配、优化资源节点,对于云平台中日渐庞大的资源不能及时、动态进行管理。
发明内容
本发明需要解决的技术问题是提供一种基于云平台的容器化应用自动分配优化系统及其方法,以解决目前的容器管理系统需要人工手动去指定和调整容器需求的资源消耗,而不能灵活、及时、适量地满足资源需求的问题,以更好地达到云平台资源高可用、高可靠的目标,以实现云平台的容器化应用监控、分配、优化的一体化管理。
为解决上述技术问题,本发明所采取的技术方案如下。
基于云平台的容器化应用自动分配优化系统,包括:
至少一个资源节点,用于收集当前运行容器消耗资源的数据;
资源节点状态数据边缘计算器,用于结合资源节点对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况;
至少两个管理节点,用于对资源信息、调度任务、队列信息进行基础管理,监控各个资源节点状态,对资源节点状态数据进行分析统计,并对分配、优化资源提供执行策略;
所述资源节点接收资源节点状态数据边缘计算器发送的当前容器的运行状况数据,检测是否发生性能干扰;所述资源节点接收到管理节点的优化资源任务对需要优化的容器进行相应的资源参数调整。
进一步优化技术方案,所述资源节点包括:
容器状态数据收集器,用于收集在资源节点中当前运行的容器消耗资源的数据;
基于KNN和RLS算法的检测模块,用于接收资源节点状态数据边缘计算器在预设周期发送的当前容器的运行状况数据,检测是否发生性能干扰;所述基于KNN和RLS算法的检测模块的输入端连接于资源节点状态数据边缘计算器的输出端;
容器资源调整执行模块,用于接收到管理节点的优化资源任务,并按照资源消耗的实际需求,对需要优化的容器进行相应的资源参数调整;所述容器资源调整执行模块的输入端连接于管理节点的输出端。
进一步优化技术方案,所述资源节点状态数据边缘计算器结合容器状态数据收集器和基于KNN和RLS算法的检测模块,对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况。
进一步优化技术方案,所述管理节点包括:
基础管理模块,用于对资源信息和资源任务信息进行管理、查询,对调度任务进行管理、优化,对调度结果进行查询,对队列进行管理,对队列信息进行查询;
监控模块,用于监控各个资源节点的CPU、内存、硬盘、I/O设备以及网络设备的状态,并将状态数据采集到数据库中;
决策处理模块,用于根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用。
进一步优化技术方案,所述基础管理模块包括:
资源管理模块,用于提供资源信息的新增、修改、删除功能,并且能够提供资源相关信息的查询;提供资源任务信息的新增、修改、删除、查询的功能;
调度模块,用于为管理节点提供新增、修改、删除调度任务,以及调度结果查询,初始化资源分配调度任务、筛选优化资源调度任务;
队列管理模块,用于提供队列的新增、修改、删除功能、队列信息查询,并提供队列集群功能,初始化提交资源任务队列、执行资源节点队列。
进一步优化技术方案,所述监控模块包括:
硬件监控模块,包括CPU的个数以及各CPU的资源利用率、内存、硬盘占用率;
I/O监控模块,用于监搾各计算节点中的I/O设备的读写请求数、数据量以及排队时间;
网络监控模块,用于监控各资源节点中的网络设备的上传/下载数据包个数以及网络速率。
进一步优化技术方案,所述决策处理模块包括:
数据分析模块,根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用;
决策处理模块,基于数据分析模块结合相关算法对分配、优化资源提供执行策略,程序根据策略进行处理得出相应的结果,并且能够新增和修改算法策略。
基于云平台的容器化应用自动分配优化方法,该方法基于所述的基于云平台的容器化应用自动分配优化系统进行,包括以下具体步骤:
S1、注册新资源消耗分配信息;新资源信息提交至管理节点,管理节点接收新资源分配任务并进行处理,并且将新资源信息注册到资源管理模块中进行集中管理;
S2、动态分配资源节点;管理节点的监控模块采集边缘数据,数据分析模块根据监控模块分析计算各个资源节点的资源消耗数据结果,决策处理模块结合数据分析模块获取目标资源节点,管理节点发送资源信息到执行资源节点队列,目标资源节点获取资源分配任务后进行初始化操作;
S3、巡检分类资源节点;管理节点对注册在资源管理模块的资源节点定期进行分类,资源节点在端上收集到的状态数据发送到基于KNN和RLS算法的检测模块进行汇总计算,基于KNN和RLS算法的检测模块将结果发送到资源节点状态数据边缘计算器对资源节点进一步做汇总统计,管理节点的监控模块采集边缘数据后提供给数据分析模块进行分析统计,决策处理模块根据数据分析模块的数据结果对资源节点进行分类,分类结果集发送到执行资源节点队列中;
S4、调整优化资源节点消耗参数;资源节点获取执行资源调整任务,并根据资源管理模块的优化消耗信息进行扩展或缩小操作。
进一步优化技术方案,所述步骤S2进行新资源动态分配的具体方法如下:
S21、管理节点的提交资源任务队列接收处理任务;
S22、获取资源任务的详细信息;
S23、请求当前各资源节点的监控分析结果,并判断是否存在最新的监控分析结果;
S24、若不存在最新的监控分析结果,则获取资源节点的硬件、I/O设备和网络设备数据分析结果;
S25、若存在最新的监控分析结果,则结合资源任务的详细信息和各资源节点监控数据采用预选算法筛选潜在的节点;
S26、在步骤S25的基础上通过优选算法计算每个潜在节点的优先分值择目标节点,并判断是否存在最优目标节点;
S27、若不存在最优目标节点,则该资源任务设置等待状态,推迟到合适时机执行,并返回至步骤S23;
S28、若存在最优目标节点,则根据最优目标节点执行资源初始化操作。
进一步优化技术方案,所述步骤S3、步骤S4的具体方法如下:
S31、资源节点状态数据边缘计算器统计分析资源节点的运行状态;
S32、管理节点采集资源节点状态数据边缘数据,提供给管理节点的数据分析模块进行分析统计操作;
S33、管理节点对采集的边缘数据进行分析,根据分析筛选出需要优化的节点;
S34、管理节点将优化节点任务推送到优化资源节点队列中,等待目标资源节点处理资源调整;
S35、目标资源节点接受优化任务,按照资源实际需求进行动态调整,判断扩展或缩小资源参数;
如果是进行扩展资源参数操作,则根据资源优化信息的扩展参数进行扩展参数并且将通过资源管理模块修改资源节点中运行参数的最大值;
如果进行缩小资源参数操作,则根据资源优化信息的缩小参数进行缩小资源并且将通过资源管理模块修改资源节点中运行参数的最小值;
S36、通过动态调整资源节点运行参数,使资源节点正常运行,通过管理节点的调度管理按照一定周期对资源节点进行动态优化的操作。
由于采用了以上技术方案,本发明所取得技术进步如下。
本发明能够实现云平台中的资源进行集约化管理,在监控资源节点各项性能指标基础上,通过量化分析当前运行的资源性能实现合理分配节点,并且可以根据资源节点工作负载情况进行统一计算调整,动态地进行伸缩,无需人工手动去指定和调整容器需求的资源消耗,能够灵活、及时、适量地满足资源需求,实现了云平台的容器化应用监控、分配、优化的一体化管理。
本发明基于KNN和RLS算法的检测模块的功能为:资源节点状态数据边缘计算器在每一个时间段的分析结果都将作为历史数据传递给RSL模型进行自适应的学习,通过不断地修正模型的训练参数来尽可能地拟合容器正常的运行状况。KNN算法模型将落在判定区域外的分析结果视为容器干扰情况的发生,并且将异常分析结果与正常状态结果的差值作为干扰的实际测量值。相比其他的干扰检测模型,基于KNN和RLS算法的检测模块,量化分析当前运行容器受到的性能干扰程度。
本发明资源节点状态数据边缘计算器的功能为:为了分析容器当前的运行状况,需要对资源的硬件、I/O设备以及网络设备的资源消耗进行统计处理,更好地分析出容器的运行状态。相比较传统的监控系统,可以更快地进行数据处理和分析,减少管理节点的运算压力,管理节点可以关注本身的核心运算,提高管理节点应用程序效率。
本发明决策处理模块的功能为:结合数据分析模块和算法,对分配、优化资源提供智能化的策略,程序根据策略进行处理得出相应的结果,随着系统的运行可以动态增加或者调整策略和处理程序,为实现自动化分配、优化提供可靠的技术支撑。
附图说明
图1为本发明基于云平台的容器化应用自动分配优化系统的功能架构图;
图2为本发明基于云平台的容器化应用自动分配优化方法的流程图;
图3为本发明基于云平台的容器化应用自动分配优化方法中新资源动态分配流程图;
图4为本发基于云平台的容器化应用自动分配优化方法中资源节点动态优化流程图。
具体实施方式
下面将结合附图和具体实施例对本发明进行进一步详细说明。
一种基于云平台的容器化应用自动分配优化系统,结合图1所示,包括至少一个资源节点、一个资源节点状态数据边缘计算器和至少两个管理节点。
资源节点,用于收集当前运行容器消耗资源的数据。
资源节点状态数据边缘计算器,用于结合资源节点对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况。
管理节点,用于对资源信息、调度任务、队列信息进行基础管理,监控各个资源节点状态,对资源节点状态数据进行分析统计,并对分配、优化资源提供执行策略;管理节点采用集群方式,一个节点作为主节点,其他节点作为备用节点。
资源节点接收资源节点状态数据边缘计算器发送的当前容器的运行状况数据,检测是否发生性能干扰;资源节点接收到管理节点的优化资源任务对需要优化的容器进行相应的资源参数调整。
其中,资源节点包括:
容器状态数据收集器,用于收集在资源节点中当前运行的容器消耗资源的数据;
基于KNN和RLS算法的检测模块,用于接收资源节点状态数据边缘计算器在预设周期发送的当前容器的运行状况数据,检测是否发生性能干扰;基于KNN和RLS算法的检测模块的输入端连接于资源节点状态数据边缘计算器的输出端;
容器资源调整执行模块,用于接收到管理节点的优化资源任务,并按照资源消耗的实际需求,对需要优化的容器进行相应的资源参数调整;容器资源调整执行模块的输入端连接于管理节点的输出端。
资源节点状态数据边缘计算器结合容器状态数据收集器和基于KNN和RLS算法的检测模块,对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况。
其中,管理节点包括:
基础管理模块,用于对资源信息和资源任务信息进行管理、查询,对调度任务进行管理、优化,对调度结果进行查询,对队列进行管理,对队列信息进行查询;
监控模块,用于监控各个资源节点的CPU、内存、硬盘、I/O设备以及网络设备的状态,并将状态数据采集到数据库中;
决策处理模块,用于根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用。
基础管理模块包括:
资源管理模块,用于提供资源信息的新增、修改、删除功能,并且能够提供资源相关信息的查询;提供资源任务信息的新增、修改、删除、查询的功能;
调度模块,用于为管理节点提供新增、修改、删除调度任务,以及调度结果查询,初始化资源分配调度任务、筛选优化资源调度任务;
队列管理模块,用于提供队列的新增、修改、删除功能、队列信息查询,并提供队列集群功能,初始化提交资源任务队列、执行资源节点队列。
监控模块包括:
硬件监控模块,包括CPU的个数以及各CPU的资源利用率、内存、硬盘占用率;
I/O监控模块,用于监搾各计算节点中的I/O设备的读写请求数、数据量以及排队时间;
网络监控模块,用于监控各资源节点中的网络设备的上传/下载数据包个数以及网络速率。
决策处理模块包括:
数据分析模块,根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用;
决策处理模块,基于数据分析模块结合相关算法对分配、优化资源提供执行策略,程序根据策略进行处理得出相应的结果,并且能够新增和修改算法策略。初始化新资源节点分配策略和筛选优化资源节点策略,新资源节点分配策略采用优选纵横对折算法和预选算法进行新资源节点动态分配,筛选优化资源节点策略采用朴素贝叶斯分类算法进行分类。
基于云平台的容器化应用自动分配优化方法,结合图2至图4所示,该方法基于所述的基于云平台的容器化应用自动分配优化系统进行,包括以下具体步骤:
S1、注册新资源消耗分配信息;新资源信息提交至管理节点,管理节点接收新资源分配任务并进行处理,并且将新资源信息注册到资源管理模块中进行集中管理。
S2、动态分配资源节点;管理节点的监控模块采集边缘数据,数据分析模块根据监控模块分析计算各个资源节点的资源消耗数据结果,决策处理模块结合数据分析模块获取目标资源节点,管理节点发送资源信息到执行资源节点队列,目标资源节点获取资源分配任务后进行初始化操作。
S3、巡检分类资源节点;管理节点对注册在资源管理模块的资源节点定期进行分类,资源节点在端上收集到的状态数据发送到基于KNN和RLS算法的检测模块进行汇总计算,基于KNN和RLS算法的检测模块将结果发送到资源节点状态数据边缘计算器对资源节点进一步做汇总统计,管理节点的监控模块采集边缘数据后提供给数据分析模块进行分析统计,决策处理模块根据数据分析模块的数据结果对资源节点进行分类,分类结果集发送到执行资源节点队列中。
S4、调整优化资源节点消耗参数;资源节点获取执行资源调整任务,并根据资源管理模块的优化消耗信息进行扩展或缩小操作。
结合图3所示,步骤S2进行新资源动态分配的具体方法如下:
S21、新资源节点提交分配资源信息至管理节点,管理节点将新资源的分配资源信息插入到资源任务队列中,根据队列算法的先进先出原理,该新资源信息任务将会等待到前面的任务处理完毕进行处理。
S22、管理节点获取到当前的新资源信息任务,并且将新资源信息存储到资源管理模块中,新资源信息包含CPU、内存、硬盘空间、网络带宽、I/O吞吐量基本参数的最大值和最小值以及优化信息,优化信息包括缩小、扩展CPU、内存、硬盘空间、网络带宽、I/O吞吐量参数。
S23、管理节点从数据分析模块中获取最新的资源节点监控结果,数据分析模块会根据一定的周期(如每天)从监控模块中汇总计算出资源监控结果。
S24、如果监控结果不是最新的,数据分析模块实时获取当前各个资源节点的硬件、I/O设备和网络设备数据分析结果,分析结果提供给管理节点的决策处理模块进行决策处理。
S25、若存在最新的监控分析结果,管理节点决策处理模块根据新资源信息和资源节点的数据分析结果,采用预选算法对潜在的资源节点进行初步筛选。预选算法核心思想:结合新资源信息基本参数最大值、最小值排除不符合要求的资源节点,获取符合要求的资源节点集合。
S26、在步骤S25的基础上决策处理模块根据优选算法,在潜在节点中选取最优的目标节点,被选中的目标节点权重会降低2个级别,未被选中的潜在资源节点权重会升高3个级别。
该过程采用了优选纵横对折法,算法原理:
先固定一个因素于试验区域的中点,用单因素优选法对另一个因素进行选优;然后,固定这一个因素于试验区域的中点,再优选另一个因素;将两个结果进行比较,沿着“坏”点所在的线,丢去不包括好点所在的半个平面,这样继续下去,不断地将试验区域缩小,直至找到最优点。
在双因素情况下,假设试验范围为长方形,长度x取值范围为[a1,b1],宽度y取值范围为[a2,b2],长方形的纵横两根中线
Figure SMS_1
上用单因素方法求出最优点。
先将因素x2固定在
Figure SMS_2
处,而用单因素方法求出相应于它的最优点数值x1,这样一个两因素的组合记为A1。同样,固定x1在/>
Figure SMS_3
处,再用单因素方法求出相应于它的最优点数值x2,这样一个两因素的组合记为B1。比较A1与B1的结果,去掉不适合的部分,缩小试验范围,继续进行试验,直至试验结果满意为止。
本发明采用新资源参数最大值、最小值的中位数、资源节点的权重作为双因素的输入参数来选取最优目标资源节点。
S27、若不存在最优目标节点,则该资源任务设置等待状态,推迟到合适时机执行,并返回至步骤S23。
S28、若存在最优目标节点,则根据最优目标节点执行资源初始化操作。
选定最优目标节点,管理节点根据资源管理模块查询该节点是否空闲,如果该资源节点不是空闲状态,重新将该新资源任务插入到资源任务队列中和设置为挂起等待状态,与此同时设置定时调度执行该任务,该任务每次不能分配资源权重会增加1个级别,任务队列根据权重优先级高低处理资源分配任务。
对于有空闲的节点,管理节点将资源分配执行分配任务插入到执行资源节点队列中,最优目标节点进行初始化的操作,初始化成功管理节点将该资源节点状态设置为使用,将新资源节点的运行参数初始设置为资源的基础参数。
本发明中步骤S3、步骤S4为资源节点动态优化的方法,结合图4所示,步骤S3、步骤S4的具体方法如下:
S31、资源节点中的容器状态数据收集器收集资源节点中当前运行的容器消耗资源的数据,提供基于KNN和RLS算法的检测模块进行干扰情况的分析和深度学习,其中KNN模型容器落在判定区域外的分析结果视为容器干扰情况的发生,并且将异常分析结果、临界分析结果、正常状态结果的差值作为干扰的实际测量值,生成的结果将提供给资源节点状态数据边缘计算器对资源节点情况进行计算;而RSL模型,则在一定周期(如每周)中接收资源节点状态数据边缘计算器的历史数据进行自适应的学习,通过不断的深度学习来修正模型的训练参数来模拟容器正常运行状况,通过接收到容器的结果数据,资源节点状态数据边缘计算器汇总分析资源节点状态。
基于KNN和RLS算法的检测模块采用了2种算法模型:
1)KNN算法:如果一个样本在特征空间中的k个最邻近的样本中的大多数属于某一个类别,则该样本也划分为这个类别。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。
计算测试数据与各个训练数据之间的距离;
按照距离的递增关系进行排序;
选取距离最小的K个点;
确定前K个点所在类别的出现频率;
返回前K个点中出现频率最高的类别作为测试数据的预测分类
计算距离公式:两个点或元组P1=(x1,y1)和P2=(x2,y2)的欧几里得距离为
Figure SMS_4
距离公式为:(多个维度的时候是多个维度各自求差)
Figure SMS_5
2)RLS自适应算法:
所谓自适应实现是指利用前一时刻获得的滤波器参数,根据估计误差自动调节现时刻的参数,使得某个代价函数达到最小,从而实现最优滤波。RLS算法又称为递归最小二乘算法,是对一组已知数据的最佳滤波器,处理过程中没有对输入序列的统计特性做出假定,它是利用在已知n-1时滤波器抽头权系数的情况下,通过简单的更新,求出n时刻的滤波器抽头权系数。相对于LMS自适应横向滤波器具有更好的性能。
初始条件为:
Figure SMS_6
其中,δ是一个很小的正数。引入遗忘因子λ,则自适应RLS横向滤波器的算法流程可以表示为:
Figure SMS_7
S32、管理节点采集资源节点状态数据边缘数据,提供给管理节点的数据分析模块进行分析统计操作。
S33、管理节点的监控模块采集资源节点状态数据边缘数据,在此基础上,数据分析模块从监控模块获取数据并分析统计每个资源节点在一定周期(如每天)中的运行状况,决策处理模块根据每个资源节点的运行状态参数最大值、最小值采用贝叶斯分类算法分类出需要缩小、扩展的资源节点集合。
S34、管理节点将筛选出来需要优化的资源节点集合插入到执行资源节点队列中,等待目标资源节点处理资源调整。
步骤S33和步骤S34的过程是基于朴素贝叶斯分类算法对资源节点进行快速分类操作,可以分为正常运行资源节点、扩展参数资源节点、缩小参数资源节点三种类型。
设每个数据样本用一个n维特征向量来描述n个属性的值,即:X={x1,x2,…,xn},假定有m个类,分别用C1,C2,…,Cm表示。给定一个未知的数据样本X(即没有类标号),若朴素贝叶斯分类法将未知的样本X分配给类Ci,则一定是
P(Ci|X)>P(Cj|X)1≤j≤m,j≠i
根据贝叶斯定理,由于P(X)对于所有类为常数,最大化后验概率P(Ci|X)可转化为最大化先验概率P(X|Ci)P(Ci)。如果训练数据集有许多属性和元组,计算P(X|Ci)的开销可能非常大,为此,通常假设各属性的取值互相独立,这样先验概率P(x1|Ci),P(x2|Ci),…,P(xn|Ci)可以从训练数据集求得。
根据此方法,对一个未知类别的样本X,可以先分别计算出X属于每一个类别Ci的概率P(X|Ci)P(Ci),然后选择其中概率最大的类别作为其类别。
S35、目标资源节点获取调整资源任务,判断扩展或缩小资源参数,如果是进行扩展资源参数操作,则根据资源优化信息的扩展参数进行扩展参数并且将通过资源管理模块修改资源节点中运行参数的最大值;如果进行缩小资源参数操作,则根据资源优化信息的缩小参数进行缩小资源并且将通过资源管理模块修改资源节点中运行参数的最小值。
S36、通过动态调整资源节点运行参数,使资源节点正常运行,通过管理节点的调度管理按照一定周期对资源节点进行动态优化的操作。

Claims (9)

1.基于云平台的容器化应用自动分配优化系统,其特征在于,包括:
至少一个资源节点,用于收集当前运行容器消耗资源的数据;
所述资源节点包括:
容器状态数据收集器,用于收集在资源节点中当前运行的容器消耗资源的数据;
基于KNN和RLS算法的检测模块,用于接收资源节点状态数据边缘计算器在预设周期发送的当前容器的运行状况数据,检测是否发生性能干扰;所述基于KNN和RLS算法的检测模块的输入端连接于资源节点状态数据边缘计算器的输出端;
容器资源调整执行模块,用于接收到管理节点的优化资源任务,并按照资源消耗的实际需求,对需要优化的容器进行相应的资源参数调整;所述容器资源调整执行模块的输入端连接于管理节点的输出端;
资源节点状态数据边缘计算器,用于结合资源节点对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况;
至少两个管理节点,用于对资源信息、调度任务、队列信息进行基础管理,监控各个资源节点状态,对资源节点状态数据进行分析统计,并对分配、优化资源提供执行策略;
所述资源节点接收资源节点状态数据边缘计算器发送的当前容器的运行状况数据,检测是否发生性能干扰;所述资源节点接收到管理节点的优化资源任务对需要优化的容器进行相应的资源参数调整。
2.根据权利要求1所述的基于云平台的容器化应用自动分配优化系统,其特征在于,所述资源节点状态数据边缘计算器结合容器状态数据收集器和基于KNN和RLS算法的检测模块,对资源的容器状态数据进一步计算资源消耗,分析得到当前资源节点的运行状况。
3.根据权利要求1所述的基于云平台的容器化应用自动分配优化系统,其特征在于,所述管理节点包括:
基础管理模块,用于对资源信息和资源任务信息进行管理、查询,对调度任务进行管理、优化,对调度结果进行查询,对队列进行管理,对队列信息进行查询;
监控模块,用于监控各个资源节点的CPU、内存、硬盘、I/O设备以及网络设备的状态,并将状态数据采集到数据库中;
决策处理模块,用于根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用。
4.根据权利要求3所述的基于云平台的容器化应用自动分配优化系统,其特征在于,所述基础管理模块包括:
资源管理模块,用于提供资源信息的新增、修改、删除功能,并且能够提供资源相关信息的查询;提供资源任务信息的新增、修改、删除、查询的功能;
调度模块,用于为管理节点提供新增、修改、删除调度任务,以及调度结果查询,初始化资源分配调度任务、筛选优化资源调度任务;
队列管理模块,用于提供队列的新增、修改、删除功能、队列信息查询,并提供队列集群功能,初始化提交资源任务队列、执行资源节点队列。
5.根据权利要求3所述的基于云平台的容器化应用自动分配优化系统,其特征在于,所述监控模块包括:
硬件监控模块,包括CPU的个数以及各CPU的资源利用率、内存、硬盘占用率;
I/O监控模块,用于监搾各计算节点中的I/O设备的读写请求数、数据量以及排队时间;
网络监控模块,用于监控各资源节点中的网络设备的上传/下载数据包个数以及网络速率。
6.根据权利要求3所述的基于云平台的容器化应用自动分配优化系统,其特征在于,所述决策处理模块包括:
数据分析模块,根据监控模块采集到的状态数据,对资源节点状态数据进一步分析统计,提供给监控模块和决策处理模块调用;
决策处理模块,基于数据分析模块结合相关算法对分配、优化资源提供执行策略,程序根据策略进行处理得出相应的结果,并且能够新增和修改算法策略。
7.基于云平台的容器化应用自动分配优化方法,其特征在于,该方法基于权利要求1至6任意一项所述的基于云平台的容器化应用自动分配优化系统进行,包括以下具体步骤:
S1、注册新资源消耗分配信息;新资源信息提交至管理节点,管理节点接收新资源分配任务并进行处理,并且将新资源信息注册到资源管理模块中进行集中管理;
S2、动态分配资源节点;管理节点的监控模块采集边缘数据,数据分析模块根据监控模块分析计算各个资源节点的资源消耗数据结果,决策处理模块结合数据分析模块获取目标资源节点,管理节点发送资源信息到执行资源节点队列,目标资源节点获取资源分配任务后进行初始化操作;
S3、巡检分类资源节点;管理节点对注册在资源管理模块的资源节点定期进行分类,资源节点在端上收集到的状态数据发送到基于KNN和RLS算法的检测模块进行汇总计算,基于KNN和RLS算法的检测模块将结果发送到资源节点状态数据边缘计算器对资源节点进一步做汇总统计,管理节点的监控模块采集边缘数据后提供给数据分析模块进行分析统计,决策处理模块根据数据分析模块的数据结果对资源节点进行分类,分类结果集发送到执行资源节点队列中;
S4、调整优化资源节点消耗参数;资源节点获取执行资源调整任务,并根据资源管理模块的优化消耗信息进行扩展或缩小操作。
8.根据权利要求7所述的基于云平台的容器化应用自动分配优化方法,其特征在于,所述步骤S2进行新资源动态分配的具体方法如下:
S21、管理节点的提交资源任务队列接收处理任务;
S22、获取资源任务的详细信息;
S23、请求当前各资源节点的监控分析结果,并判断是否存在最新的监控分析结果;
S24、若不存在最新的监控分析结果,则获取资源节点的硬件、I/O设备和网络设备数据分析结果;
S25、若存在最新的监控分析结果,则结合资源任务的详细信息和各资源节点监控数据采用预选算法筛选潜在的节点;
S26、在步骤S25的基础上通过优选算法计算每个潜在节点的优先分值择目标节点,并判断是否存在最优目标节点;
S27、若不存在最优目标节点,则该资源任务设置等待状态,推迟到合适时机执行,并返回至步骤S23;
S28、若存在最优目标节点,则根据最优目标节点执行资源初始化操作。
9.根据权利要求7所述的基于云平台的容器化应用自动分配优化方法,其特征在于,所述步骤S3、步骤S4的具体方法如下:
S31、资源节点状态数据边缘计算器统计分析资源节点的运行状态;
S32、管理节点采集资源节点状态数据边缘数据,提供给管理节点的数据分析模块进行分析统计操作;
S33、管理节点对采集的边缘数据进行分析,根据分析筛选出需要优化的节点;
S34、管理节点将优化节点任务推送到优化资源节点队列中,等待目标资源节点处理资源调整;
S35、目标资源节点接受优化任务,按照资源实际需求进行动态调整,判断扩展或缩小资源参数;
如果是进行扩展资源参数操作,则根据资源优化信息的扩展参数进行扩展参数并且将通过资源管理模块修改资源节点中运行参数的最大值;
如果进行缩小资源参数操作,则根据资源优化信息的缩小参数进行缩小资源并且将通过资源管理模块修改资源节点中运行参数的最小值;
S36、通过动态调整资源节点运行参数,使资源节点正常运行,通过管理节点的调度管理按照一定周期对资源节点进行动态优化的操作。
CN202010256959.7A 2020-04-03 2020-04-03 基于云平台的容器化应用自动分配优化系统及其方法 Active CN111459617B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010256959.7A CN111459617B (zh) 2020-04-03 2020-04-03 基于云平台的容器化应用自动分配优化系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010256959.7A CN111459617B (zh) 2020-04-03 2020-04-03 基于云平台的容器化应用自动分配优化系统及其方法

Publications (2)

Publication Number Publication Date
CN111459617A CN111459617A (zh) 2020-07-28
CN111459617B true CN111459617B (zh) 2023-07-11

Family

ID=71685846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010256959.7A Active CN111459617B (zh) 2020-04-03 2020-04-03 基于云平台的容器化应用自动分配优化系统及其方法

Country Status (1)

Country Link
CN (1) CN111459617B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112700004A (zh) * 2020-12-25 2021-04-23 南方电网深圳数字电网研究院有限公司 基于容器技术的深度学习模型训练方法、设备及存储介质
CN113656174A (zh) * 2021-08-18 2021-11-16 河北幸福消费金融股份有限公司 资源分配方法、系统、计算机设备和存储介质
CN113568759B (zh) * 2021-09-27 2022-02-22 睿至科技集团有限公司 一种基于云计算的大数据处理方法及其系统
CN113722109A (zh) * 2021-11-02 2021-11-30 深圳大学 一种容器化边缘计算智能服务引擎系统
CN114900449B (zh) * 2022-03-30 2024-02-23 网宿科技股份有限公司 一种资源信息管理方法、系统及装置
CN115373825B (zh) * 2022-10-25 2022-12-20 中国铁塔股份有限公司 一种资源调度方法、装置、设备及可读存储介质
CN115454652A (zh) * 2022-11-09 2022-12-09 湖南子宏生态科技股份有限公司 一种基于边缘计算的猪场养殖数据处理系统
CN116600015B (zh) * 2023-07-18 2023-10-10 湖南快乐阳光互动娱乐传媒有限公司 一种资源节点调整方法、系统、电子设备及可读存储介质
CN116881106B (zh) * 2023-07-31 2024-03-08 招商基金管理有限公司 业务系统容量运营分析管理方法、装置、存储介质及设备
CN116721485B (zh) * 2023-08-04 2023-10-24 浙江大学 一种基于容器技术的汽车轮毂轴承监测系统流计算平台
CN117112242B (zh) * 2023-10-24 2024-01-26 纬创软件(武汉)有限公司 一种云计算系统中的资源节点分配方法和系统
CN117478681B (zh) * 2023-12-26 2024-03-08 常州指尖互动网络科技有限公司 基于边缘计算的递归服务器状态监测方法
CN117519952A (zh) * 2024-01-04 2024-02-06 浙江大华技术股份有限公司 云平台任务调度方法、计算机设备和存储介质
CN117785481A (zh) * 2024-02-23 2024-03-29 广州尚航信息科技股份有限公司 一种数据中心计算资源分配管理系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204945A (zh) * 2015-09-28 2015-12-30 四川神琥科技有限公司 一种在大数据背景下的负载平衡装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776005B (zh) * 2016-11-23 2019-12-13 华中科技大学 一种面向容器化应用的资源管理系统及方法
CN107404523A (zh) * 2017-07-21 2017-11-28 中国石油大学(华东) 云平台自适应资源调度系统和方法
CN108829509A (zh) * 2018-05-03 2018-11-16 山东汇贸电子口岸有限公司 基于国产cpu和操作系统的分布式容器集群框架资源管理方法
CN110231976B (zh) * 2019-05-20 2021-04-20 西安交通大学 一种基于负载预测的边缘计算平台容器部署方法及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204945A (zh) * 2015-09-28 2015-12-30 四川神琥科技有限公司 一种在大数据背景下的负载平衡装置

Also Published As

Publication number Publication date
CN111459617A (zh) 2020-07-28

Similar Documents

Publication Publication Date Title
CN111459617B (zh) 基于云平台的容器化应用自动分配优化系统及其方法
CN109271015B (zh) 一种降低大规模分布式机器学习系统能耗的方法
Manogaran et al. Machine learning assisted information management scheme in service concentrated IoT
He et al. QoE-driven content-centric caching with deep reinforcement learning in edge-enabled IoT
US7720841B2 (en) Model-based self-optimizing distributed information management
CN105204971B (zh) 一种基于朴素贝叶斯分类技术的动态监控间隔调整方法
CN112148484B (zh) 一种基于耦合度的微服务在线分配方法与系统
US20210255899A1 (en) Method for Establishing System Resource Prediction and Resource Management Model Through Multi-layer Correlations
CN113971066A (zh) 一种Kubernetes集群资源动态调整方法及电子设备
CN115037749A (zh) 一种性能感知的大规模微服务智能多资源协同调度方法及系统
CN113033800A (zh) 分布式深度学习方法、装置、参数服务器及主工作节点
CN113553160A (zh) 用于人工智能物联网的边缘计算节点任务调度方法及系统
CN112527448A (zh) 基于openstack的动态负载调整方法及其系统
CN114356548A (zh) 边缘计算服务的动态扩展及放置方法和装置
CN111131447A (zh) 一种基于中介节点任务分配的负载均衡方法
CN115967990A (zh) 一种基于分类和预测的边端协同业务卸载方法
Soula et al. Intelligent tasks allocation at the edge based on machine learning and bio-inspired algorithms
Cheng et al. Proscale: Proactive autoscaling for microservice with time-varying workload at the edge
CN114691372A (zh) 一种多媒体端边云系统的群体智能控制方法
CN114356531A (zh) 基于K-means聚类和排队理论的边缘计算任务分类调度方法
CN111901435B (zh) 一种负载感知的云边协同服务部署方法
CN116382892B (zh) 一种基于多云融合以及云服务的负载均衡方法及装置
CN115525394A (zh) 容器数量的调整方法及装置
CN115562940A (zh) 负载能耗监控方法、装置、介质及电子设备
Lili et al. A Markov chain based resource prediction in computational grid

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
GR01 Patent grant
GR01 Patent grant