400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

基于K8s的自定义控制器EnhancedStatefulset怎么用

这期内容当中小编将会给大家带来有关基于K8s的自定义控制器Enhanced Statefulset怎么用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

成都创新互联长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为通许企业提供专业的成都网站建设、成都网站制作,通许网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

下面要讲的产品——Enhanced statefulset。

顾名思义,Enhanced statefulset就是我们在statefulset的基础上对控制器做了进一步的扩展。它主要解决Pod绑定静态IP问题,同时也解决了statefulset在升级过程中不允许同时升级多个实例的限制。另外,它还可以在节点故障时支持Pod和IP的迁移。

前面已经提到了静态IP的重要场景是业务依赖的周边组件都以IP作为实例唯一标识,所以上到Kubernetes后仍然需要Pod实例保持IP不变。相信很多用户也面临着类似的问题,下面就来分享一下实现原理。

我们主要是通过对Enhanced Statefulset Controller 、 Scheduler、CNI这几个模块扩展来支持Enhanced Statefulset的Pod绑定静态IP。

Enhanced Statefulset Controller 对静态IP的管理主要是维护更新Static IP CR来实现的。当Controller收到创建请求时,会首先检查要创建的实例是否已经有对应的static IP CR记录,若记录不存在则会创建一个新的记录。在稍后scheduler完成调度,CNI完成静态IP分配后,controller会监听Pod信息并将其更新到Static IP CR中。反之若创建实例时,对应的static IP CR记录已经存在则表示这个Pod是删除重建,Controller会将static IP CR中的信息更新到Pod上,scheduler和CNI根据pod上的配置进行亲和性调度和IP分配。

StaticIP CRD中记录了负载类型、负载名称、节点、IP和Pod信息。其中IP信息在Pod实例上以annotation

上述就是小编为大家分享的基于K8s的自定义控制器Enhanced Statefulset怎么用了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


本文标题:基于K8s的自定义控制器EnhancedStatefulset怎么用
网站链接:http://www.bluegullmedia.com/article/gpihce.html

其他资讯

让你的专属顾问为你服务

0.0479s