容器组部署方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:34821790 阅读:11 留言:0更新日期:2022-09-03 20:32
本公开实施例提供了一种容器组部署方法、装置、电子设备及计算机可读存储介质,涉及云计算技术领域。获取当前Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量以及每一虚拟机与每一物理机之间的第二真实流量;确定第一虚拟机中与待部署容器组的业务类型相同的容器组,作为第一容器组;得到待部署容器组与每一虚拟机之间的第一预测流量;得到在该第一虚拟机中部署待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量;基于第二预测流量,从各第一虚拟机中确定出用于部署待部署容器组的目标虚拟机,能够降低集群的流量成本。能够降低集群的流量成本。能够降低集群的流量成本。

【技术实现步骤摘要】
容器组部署方法、装置、电子设备及计算机可读存储介质


[0001]本公开涉及云计算
,特别是涉及一种容器组部署方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]K8s(Kubernetes)集群用于管理云平台中多个主机上的容器。Kubernetes集群中至少包括多个节点,例如,可以包括一个主节点(Master Node)和多个工作节点(Worker Nodes)。Kubernetes集群中的节点可以是虚拟机(VM,Virtual Machine)或者物理机(PM,Physical Machine)。容器组(Pod)是Kubernetes集群中最小的调度单元,可以部署在节点中,容器组与容器组之间可以进行通信。
[0003]相关技术中,当需要部署容器组时,调度器(Kube

Scheduler)可以确定当前各虚拟机的资源剩余量,进而,可以确定出当前的资源剩余量最大的虚拟机,并将容器组部署至该虚拟机中。例如,在云数据中心中,可以将云原生网元以微服务的形式部署在虚拟机中,得到对应的微服务容器组。
[0004]在Kubernetes集群的运行过程中各容器组之间需要进行通信,相应的,容器组与虚拟机之间,虚拟机与物理机之间,以及容器组与物理机之间均会产生流量。然而,相关技术中,在部署容器组时,仅考虑了各虚拟机当前的资源剩余量,并未考虑Kubernetes集群中产生的上述流量。基于上述处理,会将容器组部署至目标虚拟机中,在Kubernetes集群运行过程中,该容器组可能需要与目标虚拟机所属物理机以外的其他物理机中的容器组进行大量的数据通信,进而,会导致Kubernetes集群的流量成本较大。

技术实现思路

[0005]本公开实施例的目的在于提供一种容器组部署方法、装置、电子设备及计算机可读存储介质,能够降低集群的流量成本。具体技术方案如下:
[0006]本公开实施例的第一方面,首先提供了一种容器组部署方法,所述方法应用于Kubernetes集群中的管理节点,所述方法包括:
[0007]获取当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量;
[0008]针对当前所述Kubernetes集群中的每一第一虚拟机,确定该第一虚拟机中与待部署容器组的业务类型相同的容器组,作为第一容器组;
[0009]基于当前所述第一容器组与每一虚拟机之间的真实流量进行预测,得到所述待部署容器组与每一虚拟机之间的第一预测流量;
[0010]基于当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量进行预测,得到在该第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量;
[0011]基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机;其中,所述目标虚拟机所属的物理机与所述待部署容器组之间的第二预测流量大于预设流量阈值。
[0012]在一些实施例中,在所述基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机之前,所述方法还包括:
[0013]确定所述待部署容器组对应的需求资源配比;其中,所述需求资源配比表示:所述待部署容器组所需的存储资源与计算资源的第一权重的比值;
[0014]所述基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机,包括:
[0015]基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出所属的物理机与所述待部署容器组之间的第二预测流量大于预设流量阈值的虚拟机,作为第二虚拟机;
[0016]获取每一第二虚拟机对应的提供资源配比;其中,所述提供资源配比表示:该第二虚拟机所提供的存储资源与计算资源的第二权重的比值;
[0017]从各第二虚拟机中,选择对应的提供资源配比与所述需求资源配比一致的虚拟机,作为第三虚拟机;
[0018]基于所述第三虚拟机,确定用于部署所述待部署容器组的目标虚拟机。
[0019]在一些实施例中,所述基于所述第三虚拟机,确定用于部署所述待部署容器组的目标虚拟机,包括:
[0020]根据每一第三虚拟机当前剩余的存储资源的大小、剩余的计算资源的大小,以及所述待部署容器组所需的存储资源的大小、计算资源的大小,从各第三虚拟机中确定允许部署所述待部署容器组的虚拟机,作为第四虚拟机;
[0021]基于所述第四虚拟机,确定用于部署所述待部署容器组的目标虚拟机。
[0022]在一些实施例中,所述基于所述第四虚拟机,确定用于部署所述待部署容器组的目标虚拟机,包括:
[0023]针对每一第四虚拟机,基于所述第一权重,计算该第四虚拟机当前剩余的存储资源的大小与剩余的计算资源的大小的加权和;
[0024]将加权和最大的第四虚拟机,确定为用于部署所述待部署容器组的目标虚拟机。
[0025]在一些实施例中,所述基于当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量进行预测,得到在该第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,包括:
[0026]将当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量,输入至预先训练的预测模型,得到在该第一虚
拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量;其中,所述预测模型为:基于所述Kubernetes集群中每一容器组与每一虚拟机之间的第三真实流量、每一虚拟机与每一物理机之间的第四真实流量,以及每一容器组与每一物理机之间的第五真实流量进行训练得到的。
[0027]在一些实施例中,所述预测模型的训练过程包括以下步骤:
[0028]将样本时刻所述Kubernetes集群中每一容器组与每一虚拟机之间的第三真实流量,以及每一虚拟机与每一物理机之间的第四真实流量,输入至初始结本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种容器组部署方法,其特征在于,所述方法应用于Kubernetes集群中的管理节点,所述方法包括:获取当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量;针对当前所述Kubernetes集群中的每一第一虚拟机,确定该第一虚拟机中与待部署容器组的业务类型相同的容器组,作为第一容器组;基于当前所述第一容器组与每一虚拟机之间的真实流量进行预测,得到所述待部署容器组与每一虚拟机之间的第一预测流量;基于当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量进行预测,得到在该第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量;基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机;其中,所述目标虚拟机所属的物理机与所述待部署容器组之间的第二预测流量大于预设流量阈值。2.根据权利要求1所述的方法,其特征在于,在所述基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机之前,所述方法还包括:确定所述待部署容器组对应的需求资源配比;其中,所述需求资源配比表示:所述待部署容器组所需的存储资源与计算资源的第一权重的比值;所述基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出用于部署所述待部署容器组的目标虚拟机,包括:基于在各第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,从各第一虚拟机中确定出所属的物理机与所述待部署容器组之间的第二预测流量大于预设流量阈值的虚拟机,作为第二虚拟机;获取每一第二虚拟机对应的提供资源配比;其中,所述提供资源配比表示:该第二虚拟机所提供的存储资源与计算资源的第二权重的比值;从各第二虚拟机中,选择对应的提供资源配比与所述需求资源配比一致的虚拟机,作为第三虚拟机;基于所述第三虚拟机,确定用于部署所述待部署容器组的目标虚拟机。3.根据权利要求2所述的方法,其特征在于,所述基于所述第三虚拟机,确定用于部署所述待部署容器组的目标虚拟机,包括:根据每一第三虚拟机当前剩余的存储资源的大小、剩余的计算资源的大小,以及所述待部署容器组所需的存储资源的大小、计算资源的大小,从各第三虚拟机中确定允许部署所述待部署容器组的虚拟机,作为第四虚拟机;基于所述第四虚拟机,确定用于部署所述待部署容器组的目标虚拟机。4.根据权利要求3所述的方法,所述基于所述第四虚拟机,确定用于部署所述待部署容
器组的目标虚拟机,包括:针对每一第四虚拟机,基于所述第一权重,计算该第四虚拟机当前剩余的存储资源的大小与剩余的计算资源的大小的加权和;将加权和最大的第四虚拟机,确定为用于部署所述待部署容器组的目标虚拟机。5.根据权利要求1所述的方法,其特征在于,所述基于当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量进行预测,得到在该第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量,包括:将当前所述Kubernetes集群中每一容器组与每一虚拟机之间的第一真实流量、所述待部署容器组与每一虚拟机之间的第一预测流量,以及当前所述Kubernetes集群中每一虚拟机与每一物理机之间的第二真实流量,输入至预先训练的预测模型,得到在该第一虚拟机中部署所述待部署容器组后,Kubernetes集群中每一容器组与每一物理机之间的第二预测流量;其中,所述预测模型为:基于所述Kubernetes集群中每一容器组与每一虚拟机之间的第三真实流量、每一虚拟机与每一物理机之间的第四真实流量,以及每一容器组与每一物理机之间的第五真实流量进行训练得到的。6.根据权利要求5所述的方法,其特征在于,所述预测模型的训练过程包括以下步骤:将样本时刻所述Kubernetes集群中每一容器组与每一虚拟机之间的第三真实流量,以及每一虚拟机与每一物理机之间的第四真实流量,输入至初始结构的卷积神经网络模型,得到所述样本时刻每一容器组与每一物理机之间的第三预测流量;基于所述样本时刻每一容器组与每一物理机之间的第五真实流量,与所述样本时刻每一容器组与每一物理机之间的第三预测流量之间的差异,计算损失值;基于所述损失值对初始结构的卷积神经网络模型的模型参数进行调整,直至收敛,得到所述预测模型。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述目标虚拟机中,部署所述待部署容器组。8.一种容器组部署装置,其特征在于,所述装置应用于Kubernetes集群中的管理节点,所述装置包括:真实流量获取模块,获取当前所述Ku...

【专利技术属性】
技术研发人员:任佳伟李德恒任慧蕾朱万意王士宁
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1