[发明专利]一种基于控制器模式的容器应用动态升级方法在审
申请号: | 202310252504.1 | 申请日: | 2023-03-08 |
公开(公告)号: | CN116301986A | 公开(公告)日: | 2023-06-23 |
发明(设计)人: | 闫海娜;景宇;刘磊;杨帆 | 申请(专利权)人: | 天翼云科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F9/455 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100010 北京市东城区青*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 控制器 模式 容器 应用 动态 升级 方法 | ||
1.一种基于控制器模式的容器应用动态升级方法,其特征在于,所述方法包括:
启动第一循环,所述第一循环内容包括遍历参数计算器,参数变更处理器,状态监控器和状态变更处理器;
启动升级控制器;
监听来自所述状态变更处理器的升级终止信号;
根据所述参数计算器的处理结果确定是否变更参数,若需要变更参数,则参数变更处理器会执行处理程序来修改升级策略的参数。
2.根据权利要求1所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述第一循环为所述历参数计算器,所述参数变更处理器,所述状态监控器和所述状态变更处理器的单一循环。
3.根据权利要求2所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述根据所述参数计算器的处理结果确定是否变更参数,若需要变更参数,则参数变更处理器会执行处理程序来修改升级策略的参数,包括:
收集数据,所述数据包括cpu使用率、memory使用率,storage使用率,网络延迟。
4.根据权利要求3所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述收集数据,所述数据包括cpu使用率、memory使用率,storage使用率,网络延迟,包括:
采集来源于kubelet的应用信息,包括deployment的cpu使用率,mem ory使用率,storage使用率、网络延迟、每秒请求数。
5.根据权利要求4所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述采集来源于kubelet的应用信息,包括deployment的cpu使用率,memory使用率,storage使用率、网络延迟、每秒请求数之前,还包括:
根据POD的平均启动时间确定采集周期T。
6.根据权利要求5所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述根据所述参数计算器的处理结果确定是否变更参数,若需要变更参数,则参数变更处理器会执行处理程序来修改升级策略的参数,包括:
所述升级参数根据以下公式进行计算:
|Ct-T-Ct|=R or|Dt-T-Dt|=R
其中,集群资源使用量为Ct,deployment资源使用量为Dt,t-T时刻集群资源使用量为Ct-T,deployment资源使用量为Dt-T,deployment中pod的资源请求为R。
7.根据权利要求6所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述根据所述参数计算器的处理结果确定是否变更参数,若需要变更参数,则参数变更处理器会执行处理程序来修改升级策略的参数,还包括:
maxSurge满足的约束条件的为:
Ct+maxSurge*R=80%*Rc;
其中,Rc为集群总资源量。
8.根据权利要求7所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,所述根据所述参数计算器的处理结果确定是否变更参数,若需要变更参数,则参数变更处理器会执行处理程序来修改升级策略的参数,还包括:
将maxSurge和maxUnavailable的取值与前一时刻的取值做比较,若不一致,则向所述参数变更处理器发送变更请求事件。
9.根据权利要求8所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,
若升级成功,则升级后replicaSet中的副本数为DESIRED,且所有副本状态为ready,所述状态变更处理器向所述升级控制器发送升级成功终止信号。
10.根据权利要求9所述的一种基于控制器模式的容器应用动态升级方法,其特征在于,
若升级失败,所述状态变更处理器rollout重试当前滚动周期,并发送升级失败终止信号并触发告警。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天翼云科技有限公司,未经天翼云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310252504.1/1.html,转载请声明来源钻瓜专利网。