一种PodIP分配方法及相关装置制造方法及图纸

技术编号:35990731 阅读:50 留言:0更新日期:2022-12-17 23:05
本申请公开了一种Pod IP分配方法及相关装置,涉及通信技术领域。本申请中,调度器根据Pod创建请求关联保存的IP需求,将Pod创建请求发送至符合IP需求的目标节点中,目标节点向IP管理器申请符合IP需求的Pod IP,创建目标Pod,并为其配置Pod IP,同时在Pod IP与IP需求之间建立绑定关系,Pod IP管理模块持续监听IP需求,当确定IP需求更新时,重新向IP管理器申请新的Pod IP,或将目标Pod驱逐至调度器,重新调度。采用这种方式,即使IP需求更新,Pod也可能避免重新进行调度,提高了IP分配的灵活性,独立管理IP需求,使系统能针对多种IP需求进行IP分配,降低了IP分配方法的局限性。降低了IP分配方法的局限性。降低了IP分配方法的局限性。

【技术实现步骤摘要】
一种Pod IP分配方法及相关装置


[0001]本申请涉及通信
,尤其涉及一种Pod IP分配方法及相关装置。

技术介绍

[0002]开源容器编排系统(Kubernetes,简称K8s),是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效。Pod是Kubernetes的最重要最基本的概念,它是能够被创建,调度和管理的最小部署单元,一个Pod可以封装一个容器或多个容器。Kubernetes为每个Pod都分配了唯一的互联网协议地址(Internet Protocol Address,IP地址),也可以称之为Pod IP,一个Pod里的多个容器共享Pod IP。
[0003]随着Kubernetes的使用范围越来越广,现有的IP分配方法逐渐无法满足一些复杂和特定场景中Pod的IP需求。
[0004]例如,实际应用中,某些服务以IP地址作为访问的唯一标识,即通过Pod IP调用相应Pod中各容器提供的服务功能,此类Pod在第一次启动时,对IP地址没有特殊需求,系统为其随机分配一个IP地址,而为了保证后续服务的正常访问,此类Pod在重新启动时,就会特别要求使用曾经的IP地址,即Pod重新启动时,会更新其IP需求。
[0005]然而,相关技术下的IP分配方法,IP需求与Pod紧密结合,只有在Pod调度阶段才能获取其IP需求,因而无法实现在Pod不重新调度的情况下修改其IP需求,使得IP分配方式不够灵活。
[0006]又例如,实际应用中,使用了macvlan虚拟网卡技术的Pod,通常需要在节点的IP地址所在的局域网专属网段中为其分配IP地址;以及使用了cni插件的Pod,通常需要在设置的Pod专属网段中为其分配IP地址,而各类专属网段内的IP地址可能会随着服务商的修改而不断更新,相应地,Pod的IP需求也会随之更新。
[0007]然而,相关技术下的IP分配方法,只能根据Pod固定的IP需求,为其分配固定的IP地址,无法应对时刻变化的IP需求,进而对无法对Pod的IP地址进行更新,而一旦无法及时更新IP地址,就会导致相关服务无法顺利继续调用,从而影响服务的使用效果。
[0008]因此,需要提出一种能够应对多种不同需求的Pod IP分配方法,提高Pod IP分配的灵活性。

技术实现思路

[0009]本申请实施例提供了一种Pod IP分配方法及相关装置,用以提高Pod IP分配的灵活性。
[0010]第一方面,本申请实施例提供了一种Pod IP分配方法,应用于调度器,所述方法包括:
[0011]接收Pod创建请求,并获取对应Pod创建请求关联保存的IP需求,以及获得IP需求指示的第一IP类型;
IP;
[0030]监听模块,用于持续监听IP需求,当确定IP需求已更新,且Pod IP不符合更新后的IP需求指示的第二IP类型时,将目标Pod驱逐至调度器,以使调度器将目标Pod迁移至第二目标节点进行Pod IP重配置,其中,第二目标节点使用的IP地址与第二IP类型相适配。
[0031]可选的,接收调度器发送的Pod创建请求,并获取对应Pod创建请求关联保存的IP需求时,所述接收模块用于:
[0032]接收调度器发送的Pod创建请求;
[0033]在指定存储位置,获取对应Pod创建请求关联保存的IP需求,其中,IP需求是由目标对象在触发Pod创建请求时进行声明,并保存在指定存储位置的,且IP需求在保存后,由目标对象基于使用需求进行实时更新。
[0034]可选的,若对应IP需求保存有已绑定的Pod IP,则基于IP需求为目标Pod配置符合第一IP类型的Pod IP时,所述创建模块具体用于:
[0035]基于IP需求,从指定存储位置获取已绑定的Pod IP,其中,已绑定的Pod IP符合第一IP类型;
[0036]将获取到的已绑定的Pod IP配置给目标Pod。
[0037]可选的,将获取到的已绑定的Pod IP配置给目标Pod时,所述创建模块还用于:
[0038]进入目标Pod的网络命名空间,为Pod网卡配置已绑定的Pod IP。
[0039]可选的,若对应IP需求未保存已绑定的Pod IP,则基于第一IP类型为目标Pod配置相应的Pod IP时,所述创建模块具体用于:
[0040]将第一IP类型发往IP管理器,并接收IP管理器返回的符合第一IP类型的Pod IP;
[0041]为目标Pod配置Pod IP。
[0042]可选的,所述创建模块还用于:
[0043]若IP管理器未返回符合第一IP类型的Pod IP,则向目标对象提示创建目标Pod失败。
[0044]可选的,基于第一IP类型为目标Pod配置相应的Pod IP之后,所述创建模块还用于:
[0045]在Pod IP与IP需求之间建立绑定关系。
[0046]可选的,所述创建模块还用于:
[0047]在持续监听IP需求的过程中,当确定IP需求已被删除时,执行以下操作中的任意一种:
[0048]解除绑定关系;
[0049]解除绑定关系,并释放相应的Pod IP。
[0050]可选的,当确定IP需求已更新,且Pod IP不符合更新后的IP需求指示的第二IP类型时,将目标Pod驱逐至调度器,所述监听模块用于:
[0051]当确定IP需求已更新,且Pod IP不符合更新后的IP需求指示的第二IP类型时,第一目标节点进一步判断自身使用的IP地址是否与第二IP类型相适配;
[0052]若不适配,则将目标Pod驱逐至调度器。
[0053]可选的,所述监听模块还用于:
[0054]若适配,则向IP管理器重新申请符合第二IP类型的新的Pod IP;
[0055]接收IP管理器返回的新的Pod IP;
[0056]为目标Pod配置新的Pod IP。
[0057]第五方面,本申请实施例提供一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法。
[0058]第六方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如第一方面任一所述方法的步骤。
[0059]第七方面,本申请实施例提供一种计算机程序产品,其特征在于,所述计算机程序产品在被计算机调用时,使得所述计算机执行如第一方面所述的方法。
[0060]本申请实施例中,调度器根据Pod创建请求关联保存的IP需求,将Pod创建请求发送至符合IP需求的目标节点中,目标节点与IP管理器通信,向IP管理器申请符合IP需求的Pod IP,返回给目标节点,由目标节点中的Pod IP管理模块创建目标Pod,并为其配置Pod IP,同时在Pod IP与IP需求之间本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Pod IP分配方法,其特征在于,应用于开源容器编排系统Kubernetes中的调度器,所述方法包括:接收Pod创建请求,并获取对应所述Pod创建请求关联保存的IP需求,以及获得所述IP需求指示的第一IP类型;将所述Pod创建请求发往第一目标节点,以使所述第一目标节点创建目标Pod,并基于所述第一IP类型为所述目标Pod配置相应的Pod IP;其中,所述第一目标节点使用的IP地址与所述第一IP类型相适配;接收所述第一目标节点基于触发事件驱逐的所述目标Pod,其中,所述触发事件为:在持续监听所述IP需求的过程中,确定所述IP需求已更新,且所述Pod IP不符合更新后的IP需求指示的第二IP类型;将所述目标Pod迁移至第二目标节点进行PodIP重配置,其中,所述第二目标节点使用的IP地址与所述第二IP类型相适配。2.如权利要求1所述的方法,其特征在于,所述调度器接收Pod创建请求,并获取对应所述Pod创建请求关联保存的IP需求,包括:接收目标对象触发的Pod创建请求;在指定存储位置,获取对应所述Pod创建请求关联保存的IP需求,其中,所述IP需求是由所述目标对象在触发所述Pod创建请求时进行声明,并保存在所述指定存储位置的,且所述IP需求在保存后,由所述目标对象基于使用需求进行实时更新。3.一种Pod IP分配方法,其特征在于,应用于开源容器编排系统Kubernetes中的第一目标节点,所述方法包括:接收调度器发送的Pod创建请求,并获取对应所述Pod创建请求关联保存的IP需求,其中,所述IP需求用于指示第一IP类型,以及,第一目标节点使用的IP地址与所述第一IP类型相适配;创建目标Pod,并基于所述IP需求为所述目标Pod配置符合所述第一IP类型的PodIP;持续监听所述IP需求,当确定所述IP需求已更新,且所述Pod IP不符合更新后的IP需求指示的第二IP类型时,将所述目标Pod驱逐至所述调度器,以使所述调度器将所述目标Pod迁移至第二目标节点进行Pod IP重配置,其中,所述第二目标节点使用的IP地址与所述第二IP类型相适配。4.如权利要求3所述的方法,其特征在于,接收调度器发送的Pod创建请求,并获取对应所述Pod创建请求关联保存的IP需求,包括:接收所述调度器发送的Pod创建请求;在指定存储位置,获取对应所述Pod创建请求关联保存的IP需求,其中,所述IP需求是由所述目标对象在触发所述Pod创建请求时进行声明,并保存在所述指定存储位置的,且所述IP需求在保存后,由所述目标对象基于使用需求进行实时更新。5.如权利要求3或4所述的方法,其特征在于,若对应所述IP需求保存有已绑定的Pod IP,则基于所述IP需求为所述目标Pod配置符合所述第一IP类型的PodIP,包括:基于所述IP需求,从指定存储位置获取所述已绑定的Pod IP,其中,所述已绑定的Pod IP符合所述第一IP类型;将获取到的所述已绑定的Pod IP配置给所述目标Pod。
6.如权利要求5所述的方法,其特征在于,所述将获取到的所述已绑定的Pod IP配置给所述目标Pod,包括:进入所述目标Pod的网络命名空间,为Pod网卡配置所述已绑定的PodIP。7.如权利要求3或4所述的方法,其特征在于,若对应所述IP需求未保存已绑定的Pod IP,则所述基于所述第一IP类型为所述目标Pod配置相应的Pod IP,包括:将所述第一IP类型发往IP管理器,并接收所述IP管理器返回的符合所述第一IP类型的PodIP;为所述目标Pod配置所述PodIP。8.如权利要求3或4所述的方法,其特征在于...

【专利技术属性】
技术研发人员:马亮陆健健杨佳奇刘青周明伟
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:

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

1