系列文章:kubesphere蓝绿部署和流量镜像

原标题:系列文章:kubesphere蓝绿部署和流量镜像
现在要实现灰度发布的另两个功能 , 分别是蓝绿部署和流量镜像 , 根据官方文档介绍如下:
蓝绿部署:蓝绿发布提供零宕机部署 , 即在保留旧版本的同时部署新版本 。 在任何时候 , 只有其中一个版本处于活跃状态 , 接收所有流量 , 另一个版本保持空闲状态 。 如果运行出现问题 , 您可以快速回滚到旧版本 。

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
流量镜像(TrafficMirroring) , 也称为流量影子(TrafficShadowing) , 是一种强大的、无风险的测试应用版本的方法 , 它将实时流量的副本发送给被镜像的服务 。 采用这种方法 , 您可以搭建一个与原环境类似的环境以进行验收测试 , 从而提前发现问题 。 由于镜像流量存在于主服务关键请求路径带外 , 终端用户在测试全过程不会受到影响 。
下面分别就蓝绿部署和流量镜像两个功能进行实验 。
1 , 蓝绿部署
以project-regular账户登录:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
选择“蓝绿部署”:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
输入名称“blue-green”:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
注意 , 这里如果要选择reviews方式的话 , 要将之前的灰度发布任务下线 , 否则这里为不可选择 。
版本更迭到v2版本 , 注意镜像也选择为v2版本:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
选择v2版本接管所有流量:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
点击“创建”:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
可以看到所有流量都流向v2版本:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
新的部署也已经创建:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
执行以下命令直接获取虚拟服务来查看权重:
kubectl-ndemo-projectgetvirtualservice-oyaml
这里可以看到权重:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
待实现蓝绿部署并且结果满足预期 , 可以点击任务下线来移除v3版本 , 从而下线任务 。

系列文章:kubesphere蓝绿部署和流量镜像
文章图片

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
2 , 流量镜像:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
选择“v2”版本:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
为应用添加另一个“v3”版本:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
流量被镜像至v3:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
查看工作负载:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
执行以下命令查看虚拟服务的mirror和weight字段:
[root@kubesphere~]#kubectl-ndemo-projectgetvirtualservice-oyaml

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
可以看到流量全在v2 , 流量镜像全在v3 。
下线任务:

系列文章:kubesphere蓝绿部署和流量镜像
文章图片

系列文章:kubesphere蓝绿部署和流量镜像
文章图片
【系列文章:kubesphere蓝绿部署和流量镜像】至此 , 蓝绿部署和流量镜像实验完毕 , 实验目的达到 。