管理灰度规则

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

对于部署在SAE的微服务应用,为了确保升级操作的安全性,您可以通过启用灰度发布(即金丝雀发布)的灰度规则进行小规模验证,验证通过后再全量升级应用。

前提条件

使用限制

仅适用于2023年11月08日起新建的微服务应用。

功能入口

  1. SAE控制台应用管理 > 微服务应用页面顶部菜单栏选择地域,然后在应用列表页面,单击目标应用名称。

  2. 在左侧导航栏,选择微服务治理 > 流量治理,单击灰度规则页签。

创建灰度规则

灰度规则页面,单击新建灰度规则,在新建灰度规则面板,配置相关信息,然后单击确定

说明

如果您是第一次使用该功能,需要在该页面单击开启微服务治理并刷新页面,才能配置灰度规则。

配置项

说明

规则类型

  • 七层流量灰度(K8s ingress):可以实现在灰度批次发布过程中,将特定标记的七层流量打到灰度批次的实例上。

  • 微服务流量灰度:可以实现在灰度批次发布过程中,将特定标记的流量打到灰度批次的实例上。

规则名称

设置灰度规则名称。

规则描述

对灰度规则的自定义描述。

灰度类型

根据内容灰度。

网关实例(ALB ingress)

规则类型七层流量灰度(K8s ingress)时需要配置。

SAE基于ALB实现的网关路由(Ingress),具备根据域名、路径路由到不同应用的能力。您需要先为应用配置ALB实例,并创建路由规则。具体操作,请参见为应用设置路由规则(ALB)

灰度的服务

规则类型七层流量灰度(K8s ingress)时需要配置。

选择需要灰度的应用及对应端口。

框架类型

规则类型微服务流量灰度时需要配置。

配置灰度规则应用的框架类型。

  • Spring Cloud:需要设置Path

  • Dubbo:需要选择服务方法

条件模式

规则类型微服务流量灰度时需要配置。配置灰度规则应用的条件模式。

选择同时满足下列条件满足下列任一条件

条件列表

单击+添加新的规则条件,可以添加多条规则。

  • 微服务灰度流量

    • Spring Cloud:根据参数类型CookieHeaderParameter,设置相应的参数条件以及

    • Dubbo:根据应用实际情况,设置参数参数值获取表达式条件以及

  • 七层流量灰度

    根据参数类型CookieHeader来源ip,设置对应的参数

针对微服务流量灰度,您还可以单击+新建流量规则,创建多个入口流量规则,多个规则可以同时生效。新增的灰度规则会显示在灰度规则列表中。

编辑或删除灰度规则

灰度规则页面,找到目标规则,在其操作列,按需选择编辑删除

开通MSE微服务治理功能后,即使您已删除灰度规则,MSE仍然在持续计费。您可以参考以下信息,决定是否关闭微服务治理功能。

如果您无需使用微服务治理功能,为避免产生不必要的MSE费用,可以在应用基本信息页面右上角,选择更多 > 关闭微服务治理,根据页面提示信息,关闭微服务治理功能。

警告

关闭微服务治理功能后,除服务列表外,其他微服务治理功能(包括无损上下线、灰度规则和限流降级)将无法使用,且关闭过程中会触发一次应用重启,请自行判断业务风险后再进行操作。

更多信息

创建灰度规则后,您可以为应用配置灰度发布策略,进行新版本测试。以Spring Cloud微服务应用为例,SAE介绍如何灰度发布微服务。具体操作,请参见灰度发布微服务