【技术实现步骤摘要】
一种基于历史数据预测的Kubernetes资源调度优化方法
本专利技术属于计算机虚拟化
,涉及一种基于历史数据预测的Kubernetes资源调度优化方法。
技术介绍
自从Docker技术开源化之后,它迅速成为了容器生态圈最为炙手可热的新平台。Docker本身只专注于提供容器和镜像,所以不论是IT巨头还是初创公司或是普通的企业用户,都需要一个集成的Docker容器即服务管理平台高效地完成容器的编排、自动化部署、资源调度、健康监控、网络规划、服务发现等任务。开放开源的Kubernetes有着出色的容器调度与管理能力,成为了业界容器编排系统的首选。在现有的Kubernetes系统中,资源调度的工作主要由组件负责。在应用首次被调度时,由组件根据应用的资源配置情况,在集群内所有的节点上选择一个最适合的节点来部署,这种属于静态调度策略,虽然简单,却缺乏灵活性。为了保证Kubernetes系统中资源调度的服务质量,可以通过预测模型预测未来对资源的使用情况,使其能够在应用出现瓶颈之前就能预先触发调度,更加从容地按需将资源分配给应用,从 ...
【技术保护点】
1.一种基于预测模型的Kubernetes资源调度优化方法,其特征在于:具体包括如下步骤:/n步骤1:周期性的收集容器管理器Kubernetes上每个子节点上运行时产生的CPU使用量、内存使用量和I/O配置信息,并通过监控组件cAdvisor收集传入服务监控系统保存;/n步骤2:将步骤1中的三种资源使用量按时间先后顺序排列成时间序列;/n步骤3:将步骤2中得到的时间序列利用ARIMA模型进行建模预测,得到资源预测值序列P
【技术特征摘要】
1.一种基于预测模型的Kubernetes资源调度优化方法,其特征在于:具体包括如下步骤:
步骤1:周期性的收集容器管理器Kubernetes上每个子节点上运行时产生的CPU使用量、内存使用量和I/O配置信息,并通过监控组件cAdvisor收集传入服务监控系统保存;
步骤2:将步骤1中的三种资源使用量按时间先后顺序排列成时间序列;
步骤3:将步骤2中得到的时间序列利用ARIMA模型进行建模预测,得到资源预测值序列Pt;
步骤4:将步骤3中得到的资源预测值序列Pt和实际资源使用结果序列对比得到误差值序列,再使用RBF神经网络对误差值序列进行建模,得到预测误差值序列Et,最后将资源预测值序列Pt和预测误差值序列Et两者结合,就得到组合模型的预测值;
步骤5:利用步骤4得到的预测值,针对每种资源生成一系列资源调度决策,并将决策响应到Pod的请求资源限制中。
2.根据权利要求1所述的一种基于预测模型的Kubernetes资源调度优化方法,其特征在于:步骤1具体如下:
步骤1.1:每一个子节点上运行监控组件cAdvisor容器的Pod,收集节点的资源使用量信息,包括CPU使用量、内存使用量和I/O配置信息,在主节点运行一个容器的Pod,用键对值将监控组件cAdvisor的资源使用信息,以Pod为单位聚合起来;
步骤1.2:将监控组件cAdvisor的服务地址配置到服务监控系统,将步骤1.1聚合好的数据传入服务监控系统汇总,用于存储资源信息。
3.根据权利要求2所述的一种基于预测模型的Kubernetes资源调度优化方法,其特征在于:
步骤2具体如下:
步骤2.1:令监控组件cAdvisor中周期性收集到的历史使用量数据为R={R1,R2...Rt},其中Rt为第t个时刻子节点的负载情况,R1为收集的第1个时刻子节点的负载情况;
步骤2.2:从步骤2.1中得到的R中选出n个时刻的数据作为预测模型的时间序列输入,对时间序列预测就是通过n个输入数据集预测下一时刻t+1的资源使用量,ARIMA资源预测模型输入输出如下:
ARIMA:yt(Rt,Rt,...,Rt+n)
输入:Rt代表第t个时刻的资源需求量,
输出:yt代表资源预测值。
4.根据权利要求3所述的一种基于预测模型的Kubernetes资源调度优化方法,其特征在于:步骤3具体如下:
步骤3.1:输入资源使用量序列(Rt,Rt+1,...,Rt+n);
步骤3.2:判断步骤3.1中的时间序列是否满足平稳性,如果时间序列Rt满足以下两个条件:E(rt)=u,u是常数;Cov(rt,rt-i)=ri,ri只依赖于i,那么时间序列Rt是平稳的;
步骤3.3:利用自相关函数和偏自相关函数进行模式识别,判断哪一种模型比较适合对资源使用量序列进行建模;
步骤3.4:利用时间序列对模型函数参数估计,确定p、d、q变量,也就是模型的自回归、积分、和移动平均部分的顺序;
步骤3.4.1:如果在一个时间序列中,对于第t个时刻的值yt与过去p个时刻的值有关,则yt可以表示为历史值的线性组合加上t时刻的白噪声干扰项ξt来表示,该模型可表示为公式(1):
其中ξt为白噪声序列,并要确保该白噪声序列为零均值白噪声序列;为自回归参数,常数p为自回归阶数,并且要满足确定该模型的最高阶数为p;
步骤3.4.2:如果在一个时间序列中,对于第t个时刻的值yt都可以由过去q个时刻的残差序列{ξt}的加权平均值和的和来表示,则该模型可表示为公式(2):
yt=ξt+θ1ξt-1+θ2ξt-2+...+θqξt-q(2)
其中ξt为白噪声序列,并要确保白噪声序列为零均值白噪声序列,θ1θ2,...,θq为需要估计参数,常数q...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。