预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN115022335A(43)申请公布日2022.09.06(21)申请号202210592827.0(22)申请日2022.05.27(71)申请人桂林电子科技大学地址541004广西壮族自治区桂林市七星区金鸡路1号(72)发明人张文辉王子辰方兴罗鸿豪(74)专利代理机构桂林市持衡专利商标事务所有限公司45107专利代理师陈跃琳(51)Int.Cl.H04L67/1008(2022.01)H04L67/101(2022.01)H04L67/10(2022.01)H04L41/0826(2022.01)H04L41/0894(2022.01)权利要求书2页说明书9页附图1页(54)发明名称基于多目标均衡优化的KubernetesPod调度方法(57)摘要本发明公开一种基于多目标均衡优化的KubernetesPod调度方法,针对Kubernetes未考虑Pod应用部署后产生的资源消耗成本最小化问题和调度大量Pod应用后集群整体的均衡负载问题,提出了改进知识获取与分享的调度算法。首先扩展了Kubernetes资源指标,在默认算法只考虑CPU和内存的基础上,额外考虑了带宽和磁盘两种指标;其次算法会基于节点和Pod应用的标签匹配情况、以及和Pod应用所请求的端口建立校验字典,修复算法初始生成的种群和种群迭代期间更新的不符合配置的所有个体;最后,建立基于成本和集群失衡度的目标函数并将这两种目标函数归一化为算法的评估函数,以便改进默认调度算法的节点选择策略,获得最优的Pod应用部署方案,从而在均衡部署的同时,降低整体的资源消费成本。CN115022335ACN115022335A权利要求书1/2页1.基于多目标均衡优化的KubernetesPod调度方法,其特征是,包括步骤如下:步骤1、采集Kubernetes集群中所有节点的资源信息和所有待部署的Pod应用的资源信息,并建立记录所有节点的标签、以及所有待部署Pod应用的标签和申请端口的校验字典;步骤2、构建基于资源消耗成本和集群失衡度的目标函数,即:fALL=w1*favgCOST+w2*Savg式中,fALL表示个体的评估值,w1表示成本权重,w2表示集群失衡度权重,favgCOST表示所有Pod应用的平均资源消费成本,Savg表示所有节点的平均资源失衡度;n表示Kubernetes集群中的节点的个数,m表示待部署的Pod应用的个数;flag表示Pod应用申请的端口是否被占用,若端口已被占用,则flag=0,若端口未被占用,则flag=1;分别表示Pod应用j请求的CPU、内存、带宽、磁盘的资源大小;分别表示节点i的CPU、内存、带宽、磁盘的单位时间资源消费价格;分别表示集群中所有节点的CPU、内存、带宽、磁盘单位时间消费的最高的价格;分别表示节点i上CPU、内存、带宽、磁盘的实际资源利用率;步骤3、基于步骤1和2,利用改进的知识获取与分享算法将待部署的Pod应用部署到Kubernetes集群的节点上,即:在改进的知识获取与分享算法的初始阶段:首先,对种群中不满足校验字典的个体进行更新,直至所有个体均满足校验字典;然后,计算种群中的各个体的评估值,并基于评估值对种群中的所有个体进行排序;最后,对于种群中的各个体,从所有个体中选择3个个体作为当前个体的知识分享的来源,其中所选择的3个个体为从所有个体中随机选择1个个体,从所有个体中选择2个与当前个体的评估值最接近的个体;在改进的知识获取与分享算法的高级阶段:首先,对种群中不满足校验字典的个体进行更新,直至所有个体均满足校验字典;然后,计算种群中的各个体的评估值,并基于评估值对种群中的所有个体进行排序,并按照预定比例将种群中的所有个体分为三组,即评估值高的个体组,评估值中等的个体组,评估值低的个体组;最后,对于种群中的各个体,从所有个体中选择3个个体作为当前个体的知识分享的来源,其中所选择的3个个体为从评估值高的个体组中随机选择1个个体,从评估值中等的个体组中随机选择1个个体,从评估值低的个体组中随机选择1个个体。2CN115022335A权利要求书2/2页2.根据权利要求1所述基于多目标均衡优化的KubernetesPod调度方法,其特征是,节点i的标签labeli是将这4个值中最大值所对应的资源名称;Pod应用j的标签labelj是将这4个值中最大值所对应的资源名称;其中i=1,2,…,n,n表示Kubernetes集群中的节点的个数;j=1,2,…,m,m表示待部署的Pod应用的个数;表示节点i的内存资源的容量,表示节点i的带宽资源的容量,表示节点i的磁盘资源的容量;表示Pod应用j请求的CPU的资源大小,示Pod应用j请求的内存的资源大小,示Pod应用j请求的带宽的资源大