关键词:
云计算
容器云
Kubernetes
HPA
弹性伸缩
时间序列
滑动窗口
加权融合
负载预测
摘要:
Kubernetes容器云是当前流行的云计算技术,其默认的弹性伸缩方法HPA(Horizontal Pod Autoscaler)能对云原生应用进行横向扩缩容。但该方法存在以下问题:基于单一负载指标,使其难以适用于多样化云原生应用;基于当前负载进行弹性伸缩,使扩缩容过程具有明显的滞后性;基于滑动时间窗口算法进行弹性缩容,使缩容过程缓慢易造成系统资源浪费。针对上述问题,文中提出一种改进的弹性伸缩方法。设计一种动态加权融合算法将多种负载指标融合为综合负载因子,全面反映云原生应用的综合负载。提出CEEMDAN(Complete Ensemble Empirical Mode Decomposition with Adaptive Noise)-ARIMA(Autoregressive Integrated Moving Average Model)预测模型,基于该模型的预测负载值实现预先弹性伸缩以应对突发流量。提出快速缩容与滑动时间窗口相结合的方法,在确保应用服务质量的基础上减少系统资源浪费。实验结果表明,相较于HPA机制,改进的弹性伸缩方法在应对首次突发流量时的平均响应时间缩短了336.55%,流量结束后系统资源占用减少了50%,再次遇到突发流量时能迅速扩容,平均响应时间缩短66.83%。