论文部分内容阅读
Kubernetes是基于Docker容器技术的开源容器管理系统,凭借其强大的容器编排能力,目前已经成为了容器管理领域的首选方案。然而,Kubernetes默认的资源调度策略存在着不足,无法满足复杂场景下的资源调度需求。本文以Kubernetes作为研究对象,介绍了Kubernetes的核心概念和资源调度方案,并提出了一种基于负载预测的资源调度策略,该策略使用预测式的资源调度机制,根据负载预测模型的预测结果提前进行资源调度,从而减少应用程序的请求响应时间,并提高系统的服务质量。本文分析了Kubernetes集群中应用的负载特征,基于经验模态分解(EMD)和时间卷积网络(TCN)建立了一种组合负载预测模型EMD-TCN。使用EMD算法对应用负载数据进行分解,使用TCN模型对分解后的数据进行预测,将各个分量的预测结果叠加,得到最终的预测结果。Kubernetes根据模型的负载预测值为应用及时、准确地分配资源,避免因负载突变导致的调度不及时的情况。在Pod调度过程中本文提出了一种节点优选算法,根据不同类型Pod对资源的消耗情况选择合适的目标节点进行调度,从而消除节点上单一资源的瓶颈,提高节点的负载均衡度。最后,本文搭建了Kubernetes集群并进行了对比实验,实验结果显示:本文提出的组合负载预测模型EMD-TCN取得了比较好的预测效果;基于负载预测的资源调度策略在负载峰值到达之前对Pod进行扩展,可以有效地降低应用的请求响应时间;本文提出的节点优选算法可以使节点具有较好的负载均衡性,并消除单一资源的瓶颈问题。