根据业务量自动伸缩K8s中Pod的方法、装置及计算机存储介质与流程

文档序号:37647384发布日期:2024-04-18 20:21阅读:11来源:国知局
根据业务量自动伸缩K8s中Pod的方法、装置及计算机存储介质与流程

本发明涉及一种k8s中pod的调整方法,特别是涉及一种根据业务量自动伸缩k8s中pod的方法、装置及计算机存储介质。


背景技术:

1、当某时间段出现业务量激增时,并且还在以较快速度递增,这对整个业务流程中的处理环节提出了较大的考验。除此之外,业务需求的多样性,导致资源分配困难,亟需一个易扩展、易部署、高自由度、高开放性的业务k8s pod弹性扩容方法。

2、现有业务环境下,运维人员通过查看监控数据和历史经验,手动启动和调整k8spod数量,扩容和回收响应不及时,扩容不及时导致业务处理出现大量排队等待现象,致使无法在规定时间内完成处理;而回收不及时导致资源浪费,无法将资源分配给其他业务组或项目使用。


技术实现思路

1、针对上述技术现状,本发明目的在于提供一种根据业务量自动伸缩k8s中pod的方法,避免资源的过度浪费和资源不足而影响业务处理进度的情况。

2、本发明技术方案是这样的:一种根据业务量自动伸缩k8s中pod的方法,包括以下步骤:

3、步骤1、通过已存储的业务历史数据预测未来一段时间的业务量;

4、步骤2、转发器根据分配的预测的业务量确定是否满足扩容条件,在满足扩容条件时进入步骤3;

5、步骤3、在预测的业务高峰出现前的一设定时间,调用k8s的api接口启动pod,对pod数量进行扩容;

6、步骤4、在实际的业务高峰出现后的一设定时间,进行pod自动回收。

7、进一步地,所述预测未来一段时间的业务量的方法为:

8、步骤101、以设定第一时间段为单位获取历史数据中的任务数;

9、步骤102、计算环比数值,环比数=(当前第一时间段的任务数-前一第一时间段的任务数)/前一第一时间段的任务数*100%;

10、步骤103、计算过去的第二时间段内各个第一时间段的环比平均值,预测的业务量=前一第一时间段的任务数*环比平均值,所述第二时间段包括若干整数个第一时间段。

11、进一步地,所述第一时间段为一小时,所述第二时间段为24小时。

12、进一步地,所述步骤2中确定是否满足扩容条件具体为:查询k8s获取到当前的pod数量,检查当前的pod数量是否小于最大pod数量并且小于(分配的预测的业务量/扩容阈值),所述最大pod数量和所述扩容阈值为预设值。

13、进一步地,所述扩容时以(分配的预测业务量/扩容阈值)确定pod数量,若分配的(分配的预测业务量/扩容阈值)大于最大pod数量时,则以最大pod数量进行扩容。

14、进一步地,所述转发器的预测的业务量从所述步骤1得到的未来一段时间的业务量中按转发器的分配权重比例确定。如果涉及多个转发器时,可以对多个转发器进行统一扩容调度,提高效率。

15、进一步地,所述步骤4中pod自动回收包括以下步骤:

16、步骤401、获取自动回收参数配置;

17、步骤402、获取转码器当前未下发的任务数;

18、步骤403、判断是否满足自动回收条件,如果不满足自动回收条件则结束流程,如果满足自动回收条件则进入回收步骤;其中自动回收条件为判断(未下发任务数量+当前任务数量)/pod回收阈值并进行向上取整后的值与当前pod数量比较,所述向上取整后的值小于当前pod数量时,则认为满足自动回收条件;

19、回收步骤、调用k8s的api接口,回收对应数量的pod,所述对应数量为当前pod数量与所述上取整后的值的差值。

20、进一步地,所述步骤403中进入回收步骤前先进入步骤404,步骤404、判断是否按“等待时间”等待过,如果已等待则进入所述回收步骤,否则等待“等待时间”后,回到步骤403。

21、本发明还提供一种根据业务量自动伸缩k8s中pod的装置,包括处理器以及存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述根据业务量自动伸缩k8s中pod的方法。

22、本发明还提供一种计算机存储介质,其上存储有计算机程序,所述计算机该程序被处理器执行时,实现上述根据业务量自动伸缩k8s中pod的方法。

23、本发明与现有技术相比的优点在于:

24、本发明方法中,根据历史业务量、处理效率进行分析,结合当前k8s节点的性能指标和现有任务数量,进行综合分析后,确定合适的pod扩容和回收数量;该方法能有效避免资源的过度浪费和资源不足而影响业务处理进度的情况。



技术特征:

1.一种根据业务量自动伸缩k8s中pod的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述预测未来一段时间的业务量的方法为:

3.根据权利要求2所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述第一时间段为一小时,所述第二时间段为24小时。

4.根据权利要求1所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述步骤2中确定是否满足扩容条件具体为:查询k8s获取到当前的pod数量,检查当前的pod数量是否小于最大pod数量并且小于(分配的预测的业务量/扩容阈值),所述最大pod数量和所述扩容阈值为预设值。

5.根据权利要求4所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述扩容时以(分配的预测业务量/扩容阈值)确定pod数量,若(分配的预测业务量/扩容阈值)大于最大pod数量时,则以最大pod数量进行扩容。

6.根据权利要求1所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述转发器的预测的业务量从所述步骤1得到的未来一段时间的业务量中按转发器的分配权重比例确定。

7.根据权利要求1所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述步骤4中pod自动回收包括以下步骤:

8.根据权利要求7所述的根据业务量自动伸缩k8s中pod的方法,其特征在于,所述步骤403中进入回收步骤前先进入步骤404,步骤404、判断是否按“等待时间”等待过,如果已等待则进入所述回收步骤,否则等待“等待时间”后,回到步骤403。

9.一种根据业务量自动伸缩k8s中pod的装置,包括处理器以及存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1至8所述的根据业务量自动伸缩k8s中pod的方法。

10.一种计算机存储介质,其上存储有计算机程序,所述计算机该程序被处理器执行时,实现权利要求1至8所述的根据业务量自动伸缩k8s中pod的方法。


技术总结
本发明公开一种根据业务量自动伸缩K8s中Pod的方法,步骤1、通过已存储的业务历史数据预测未来一段时间的业务量;步骤2、转发器根据分配的预测的业务量确定是否满足扩容条件,在满足扩容条件时进入步骤3;步骤3、在预测的业务高峰出现前的一设定时间,调用K8s的API接口启动Pod,对Pod数量进行扩容;步骤4、在实际的业务高峰出现后的一设定时间,进行Pod自动回收。本发明能有效避免资源的过度浪费和资源不足而影响业务处理进度的情况。

技术研发人员:蒋锐权,曾芏,何川江
受保护的技术使用者:苏州融拓数字智能科技有限公司
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1