流量控制环境是灰度发布的核心,您需要在流量控制环境中进行多个应用的流量控制。本文介绍如何创建流量控制环境。
前提条件
创建分组。
如果您使用RAM用户进行全链路流量控制,请为RAM用户添加查看集群、管理应用、查看应用、查看服务和管理服务的权限。具体操作,请参见将EDAS内置的权限管理切换为RAM权限管理。
设置环境基本信息
HSF应用需要使用EDAS-Container 3.5.3及以上版本才能设置HSF流量规则。
登录EDAS控制台。
在左侧导航栏,选择 。
在服务查询页面的左侧导航栏单击全链路流量控制。
在全链路流量控制页面右上角单击新建环境。
在基本信息配置向导页面设置微服务空间(包括地域和微服务空间)流量控制环境名称,量控制标识,和流量控制环境描述,然后单击下一步。
在设置入口流量规则配置向导页面选择入口应用并配置流量规则,然后单击下一步。
入口流量规则参数说明:
参数
说明
入口应用
在下拉菜单中按规划选择该流量控制环境的入口应用。
协议类型
根据实际需求选择协议类型,HTTP或HSF。
若协议类型选择HTTP,则配置以下参数:
path
输入访问资源的路径。
条件模式
如果配置了多条规则,则要设置这些规则生效的条件。包括满足所有条件或满足条件之一。
条件列表
参数类型
包括根据Cookie值、根据HTTP Header值和根据URL参数值 。
参数
输入参数,不能超过64个字符。关于书写规范和样例的相关内容,请参见流控规则参数说明。
条件
选择条件,包括按100取模和白名单两种方式。
值
输入参数取模或列表的值。
若协议类型选择HSF,则配置以下参数:
选择服务
选择入口应用中的服务。例如格式为:
com.alibaba.edas.demo.api.DempSerrvice:1.0.0(服务分组名称)
。方法
选择入口应用中的方法。例如格式为:
echoTime(java.lang.String, java.util.List<java.lang.Integer>)
。条件模式
如果配置了多条规则,则要设置这些规则生效的条件。包括满足所有条件或满足条件之一。
条件列表
参数
选择方法中的参数。关于HSF流量参数规则的相关内容,请参见流控规则参数说明。
参数值获取表达式
参数表达式用以获取参数的某个属性,例如:
空:表示直接取当前参数的值。
.name:表示取参数的name属性,相当于args0.getName()。
.isEnabled():表示获获取参数的enabled属性,相当于args0.isEnabled()。
[0]:表示当前参数应是一个数组,取数组的第一个值,相当于args0[0],注意前面没有“.”。
.get(0):表示当前参数应是一个List,取List的第一个值,相当于args0.get(0)。
.get("key"):表示当前参数是一个Map,获取key对应的值,相当于args0.get("key")。
条件
选择支持的条件。
=
:支持字符串、数字、Boolean和Char的比较。!=
:支持字符串、数字、Boolean和Char的比较。>
:支持数字的比较。>=
:支持数字的比较。<
:支持数字的比较。<=
:支持数字的比较。
值
输入参数取值。
说明如果需要设置多个规则,单击添加规则条件。
如果需要创建多个入口流量规则,单击创建流量规则。
在选择应用配置向导页面按规划选中应用,单击>添加到已选应用列表中,选中应用实例分组,单击下一步。
说明选择应用列表中某些应用不可勾选,且应用名右侧有标识,则表示该应用只有默认分组,而默认分组不能添加到流量控制环境中。
已选应用列表中某些应用实例分组右侧同样有标识,则表示该分组下没有实例,需要添加实例。具体操作,请参见添加实例。
在创建完成页面检查流量控制环境相关设置,确认无误后,单击提交。
启动流量控制环境
流量控制环境创建完成后,开启入口流量即可启动流量控制环境中的入口应用的流控规则。具体步骤如下:
返回全链路流量控制页面。
选择流量控制环境所在的地域和微服务空间。
找到创建完成的流量控制环境,单击入口流量右侧的按钮。
结果验证
设置并启用流量控制环境后,您可以通过监控灰度流量来验证是否符合预期。相关内容,请参见监控灰度流量。
- 本页导读 (1)