您当前位置:主页 > 新闻动态 > > 正文

使用kubectl进行分批发布

  分批发布是一种通用的发布方式,但是在Kubernetes集群中,要实现分批发布,需要控制各种状态,维护service流量,以及各种label配置,十分麻烦。阿里云容器服务提供一种基于 CRD 的分批发布方式,大大方便发布流程。

  这是一个含有三个实例的nginx 实例,为了暴露此容器,我们使用Service来暴露,Service的Yaml如下

  可以看到两个Secret都已经创建完毕,下面就可以来创建分批发布的 CRD。分批发布的 CRD 格式如下,

  可以看到,新老StatefulSet的区别在于,更换了新版本的镜像。同样,我们需要创建一个Secret 来存储这个新的StatefulSet

  我们可以通过event 看到 CRD 的所有事件。同时可以看到,nginx的3个pod,已经有一个 pod发生了改变,变成了最新镜像,同时 curl对应的service,会发现流量已经指向了新的pod。这样用户就可以快速试错了。

  下面我们来演示如何快速回滚,如果流量打到新的 pod后发现有问题,需要回滚,那么我们需要编辑CRD,

  可以看到原来web-2所在的pod已经被回滚到了老镜像,现在curl service 也都是老的服务了。

  可以看到,所有的确认版本历史都会被记录到secret里面,方便到时候跨版本回滚。

关于我们 产品中心 新闻动态 工程案例 联系我们

联系人: 张经理

传真: 400-0162217

E-MALL: 4557197@qq.com

网址: http://www.maxfordwines.com

地址: 濮阳市 西村镇永安路南段22号

联系我们 →

400-0162217

扫一扫关注我们