概述

ACK应用与发布管理包括4种方式:

  • 灰度发布

  • 手动发布

  • 自动发布

  • Helm发布

 

灰度发布(又名金丝雀发布)

灰度发布概念

  • 灰度发布是将应用的旧版本A与新版本B同时部署在环境中,业务请求可能会被路由到版本A或者版本B的后端上,您可以自定义灰度发布策略,快速调整版本A和版本B的流量占比。

  • 灰度发布可以再发布新版本应用时:

    • 自定义控制新版本应用流量比重

    • 渐进式完成新版本应用的全量上线

    • 最大限度地控制新版本发布带来的业务风险,降低故障带来的影响

    • 同时支持快速回滚

 

灰度发布实现

灰度发布是可以帮助您渐进式更新Deployment的工具

  • 他能结合路由控制器Ingress Controller实现多版本并存,发布暂停、流量百分比切换、健康检查等功能

  • 极大解放灰度发布过程中的手动操作,全自动化实现线上灰度流量切换


 

安装灰度发布组件


 

手动发布

  • 在使用灰度发布的手动发布方式的时候,您需要创建一个Ingress、Service和Deployment结构的应用。

  • 目前灰度发布只支持基于Deployment和Ingress的灰度发布流程。

 

手动发布流程

  1. 创建测试应用:可使用YAML文件来创建Deployment、Ingress向外暴露服务

  2. 创建灰度发布:创建灰度发布时,设置上述创建的Deployment、Service、Ingress,然后设置发布方式为手动发布

  3. 执行灰度发布:

  • 初始化完毕后,就可以进行灰度发布

  • 开始灰度发布前,您需要更新应用

  1. 查看历史记录:在灰度发布页面的历史记录区域,您可以查看所有创建的灰度发布的发布记录,在每个创建的灰度发布详情页面下方的发布日志区域,查看发布过程。

 

自动发布

自动发布模式可以让您全自动化地完成灰度发布流程。

自动发布流程

  1. 创建测试应用:可使用YAML文件来创建Deployment、Ingress向外暴露服务

  2. 创建灰度发布:创建灰度发布时,设置上述创建的Deployment、Service、Ingress,然后设置发布方式为自动发布,然后灰度发布即可自动运行。

  3. 查看历史记录:在灰度发布页面的历史记录区域,您可以查看所有创建的灰度发布的发布记录,在每个创建的灰度发布详情页面下方的发布日志区域,查看发布过程。

 

基于Helm的发布管理

  • 阿里云Kubernetes服务集成了Helm包管理工具,帮助您快速构建云上应用,因为chart可以多次发布,这就带来一个发布版本管理的问题

  • 因此,阿里云Kubernetes提供了发布功能,通过Web界面的方式对通过Helm发布的应用进行管理。

 

前提条件

  • 已经成功创建一个Kubernetes集群

  • 已开通了应用目录或者服务目录功能,安装了Helm应用

 

查看发布详情

  1. 登录容器服务管理控制台

  2. 在控制台左侧导航栏中,单击集群

  3. 在集群列表页面中,单击目标集群名称或者目标集群右侧操作栏下的详情

  4. 在集群管理业左侧导航栏中,单击应用

  5. 单击Helm页签,进入发布列表页面

  6. 查看发布的详情信息,单击右侧的详情,进入该发布的详情页面

  7. 单击参数页签,您可查看该Helm包的参数设置

 

发布更新的版本

  1. 在控制台左侧导航栏中,单击集群

  2. 在集群列表页面中,单击目标集群名称或者目标集群右侧操作栏下的详情

  3. 在集群管理业左侧导航栏中,单击应用

  4. 单击Helm页签,进入发布列表页面

  5. 您可更新该发布,单击右侧的更新,弹性更新发布对话框

  6. 在更新发布对话框中修改相关参数,随后单击更新,可对该发布进行更新

 

发布回滚

  1. 单击Helm页签,进入发布列表页面

  2. 您可删除该发布,单击右侧的删除

  3. 在删除应用对话框中,勾选是否清楚发布记录,然后单击确定,可将应用、服务、部署一并删除。

posted on 2023-03-10 15:36  eryoung2  阅读(94)  评论(0编辑  收藏  举报