更新时间:2025-12-17 GMT+08:00
分享

Istio灰度发布

Istio为您提供基于微服务的流量治理能力。Istio允许您按照标准制定一套流量分发规则,并且无侵入的下发到实例中,平滑稳定的实现灰度发布功能。

前置条件

  • 已有CCE集群,若无集群请创建CCE集群
  • 已有当前版本的工作负载并创建服务(service),若无工作负载请创建工作负载
  • 已开通ASM服务,并保持“服务管理”页签中对应服务的“配置诊断”为正常状态,若未开通请开通ASM服务
  • 已有灰度版本的工作负载并关联当前版本的服务(service)。

配置部署步骤

  1. 参照新建应用,完成应用创建。
  2. 根据业务场景,在“部署步骤”页面,添加该部署步骤。
  3. 对步骤进行配置,详细参数配置如下所示。

    表1 发布方式为自定义发布的参数说明

    参数

    说明

    步骤显示名称

    步骤添加后在部署步骤显示的名称。仅支持汉字、英文字母、数字、空格、或-_,;:./()()符号,其中空格不可在名称开头或结尾使用,长度为1-128。

    集群名称

    选择目标集群。

    命名空间名称

    填写命名空间名称。

    发布方式

    支持自定义发布、快速发布两种方式。

    yml文件来源

    • 制品仓库

      选择yml文件:选择目标yml文件。

    • 代码仓库

      选择代码仓库:选择目标代码仓库。

      选择分支:选择目标分支。

      yml文件路径:目标yml文件所在的路径。

    控制选项

    当前步骤部署失败后,应用是否继续部署后续的步骤。

    表2 发布方式为快速发布的参数说明

    参数

    说明

    步骤显示名称

    步骤添加后在部署步骤显示的名称。仅支持汉字、英文字母、数字、空格、或-_,;:./()()符号,其中空格不可在名称开头或结尾使用,长度为1-128。

    集群名称

    选择目标集群。

    命名空间名称

    填写命名空间名称。

    发布方式

    支持自定义发布、快速发布两种方式。

    流量接管

    灰度发布

    VirtualService名称:可选择目标VirtualService,位置在“ASM服务>>网格配置>>istio资源管理”中,筛选目标命名空间及istio资源。

    DestinationRule名称:可选择目标DestinationRule,位置在“ASM服务>>网格配置>>istio资源管理”中,筛选目标命名空间及istio资源。

    当前版本:规定version为关键字在label中标记版本号,用于区分正式版本和灰度版本,并与DestinationRule中subsets对象name保持一致,作为灰度引流的标识。

    灰度版本号:规定version为关键字在label中标记版本号,用于区分正式版本和灰度版本,并与DestinationRule中subsets对象name保持一致,作为灰度引流的标识。

    灰度策略:

    • 基于流量比例

      灰度版本流量配比:支持流量自定义配置。

    • 基于请求内容-Cookie

      Cookie内容:支持输入自定义Cookie内容。

    • 基于请求内容-Header

      自定义Header:支持添加并自定义Header。

    正式发布

    VirtualService名称:可选择目标VirtualService,位置在“ASM服务>>网格配置>>istio资源管理”中,筛选目标命名空间及istio资源。

    DestinationRule名称:可选择目标DestinationRule,位置在“ASM服务>>网格配置>>istio资源管理”中,筛选目标命名空间及istio资源。

    发布正式版本:填写正式接管流量的版本。

    控制选项

    当前步骤部署失败后,应用是否继续部署后续的步骤。

相关文档

若在部署过程中遇到问题,可参考该步骤的常见问题解决办法

相关文档