[发明专利]Pod结构体修改方法、装置、计算机设备及存储介质有效
申请号: | 202111388807.3 | 申请日: | 2021-11-22 |
公开(公告)号: | CN114124901B | 公开(公告)日: | 2023-09-19 |
发明(设计)人: | 胡之卓;王立勋;盛钟滨 | 申请(专利权)人: | 深圳市华云中盛科技股份有限公司 |
主分类号: | H04L61/5007 | 分类号: | H04L61/5007;H04L61/5053;H04L61/5061;H04L61/4511;H04L9/40 |
代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 李燕娥 |
地址: | 518000 广东省深圳市南山区粤海街道麻岭*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | pod 结构 修改 方法 装置 计算机 设备 存储 介质 | ||
本发明实施例公开了Pod结构体修改方法、装置、计算机设备及存储介质。所述方法包括:定义IP网段范围,并生成可用数量;定义IP池;定义IP需求,分配IP;创建Statefulset;拦截Pod请求,并修改Pod请求结构体;保存修改后的Pod请求结构体。通过实施本发明实施例的方法可以解决现有Kubernetes集群有状态的服务无法灵活管理IP的问题,实现确保Kubernetes的可维护性和可扩展性。
技术领域
本发明涉及计算机,更具体地说是指Pod结构体修改方法、装置、计算机设备及存储介质。
背景技术
CNI(容器网络接口,Container Network Interface)是一个云原生基金会的项目,由在Linux容器中配置网络接口的配置以及一些受支持的插件组成。CNI只关注容器的网络连接和删除容器时删除分配的资源。CNI的出现提供了Kubernetes的统一网络规范,由此发散式的出现许多网络插件。例如:calico、macvlan、weave、clilium、flannel等等。目前业界在Kubernetes上的网络插件大多都是为无状态的服务提供IP管理,针对数据库这类有状态的服务还没有成熟的解决方法。calico等网络插件为Kubernetes仅提供了单个Pod固定IP(网络之间互连的协议,Internet Protocol)解决方案。
但是现有的方式是采用Kubernetes为有状态的服务提供了StatefulSet控制器,使用StatefulSet域名解析的特性和Service无头服务的方式可以解决有状态服务点对点的访问,但Pod被重新创建后,Pod的IP将会被更新,虽然可以使用StatefulSet域名解析的特性和Service无头服务解决点到点的访问问题,但是实际的目的IP会被更新,如Kafka、Redis等IP和主机名强绑定的有状态的服务,即IP和主机名一致视为一个节点的服务将无法正常组成一个集群。使用单个Pod固定IP的方式虽可以解决这类问题,但是会减少Kubernetes的可维护性和可扩展性。
因此,有必要设计一种新的方法,以解决现有Kubernetes集群有状态的服务无法灵活管理IP的问题,实现确保Kubernetes的可维护性和可扩展性。
发明内容
本发明的目的在于克服现有技术的缺陷,提供Pod结构体修改方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:Pod结构体修改方法,包括:
定义IP网段范围,并生成可用数量;
定义IP池;
定义IP需求,分配IP;
创建Statefulset;
拦截Pod请求,并修改Pod请求结构体;
保存修改后的Pod请求结构体。
其进一步技术方案为:所述定义IP网段范围,并生成可用数量,包括:
定义IP网段范围;
获取所述IP网段范围中的已使用IP;
获取所述IP网段范围中的所有IP;
对比所有IP和已使用IP,以获取差异数量;
保存所述差异数量至IP网段范围的状态,以得到可用数量。
其进一步技术方案为:所述定义IP池,包括:
定义IP池的名称以及IP池的IP范围段名称列表。
其进一步技术方案为:所述定义IP需求,分配IP,包括:
定义IP需求的名称、IP需求的命名空间、IP需求的数量以及名称与所述IP池的名称一致且由IP需求构成的IP池;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市华云中盛科技股份有限公司,未经深圳市华云中盛科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111388807.3/2.html,转载请声明来源钻瓜专利网。