操作场景
使用全链路灰度发布之前,需要先配置泳道。一条泳道相当于一个灰度环境,环境中包含应用中需要进行灰度测试的部署组。在 全链路发布概述 中的示例图中,我们希望为不同微服务的版本2创建一条泳道,将微服务 A、B、D 部署版本2的部署组都放在一个泳道中。
假设当前访问链路为 gateway > consumer > provider。其中 consumer、provider 都有两个版本。希望通过请求参数 test = 1时配置流量通过网关访问到 consumer、provider 的版本1中。
新建泳道
1. 登录 TSF 控制台。
2. 在左侧导航栏单击全链路灰度发布,在页面上方选择好地域,进入灰度发布页面。
3. 在页面上方选择泳道配置页签,单击新建泳道,填写泳道基本信息。
泳道名称:必填。最长60个字符,只能包括小写字母、数字及分隔符。
标签:用于分类管理资源,可不选。详情参见 标签。
备注:选填。最长200字符。
数据集:用于细粒度管理子账号权限。数据集使用,请参阅 数据集管理。
4. 单击下一步,勾选需要导入泳道的部署组,单击完成。
此时,我们需要创建一个泳道,将 gateway、consumer 的版本1部署组、provider 的版本1部署组添加到这个泳道中。设置 gateway 为泳道的入口。
过滤条件
用户可以通过选择命名空间类型、命名空间名称、应用名称和部署组名称进行筛选过滤部署组。默认提供了命名空间类型和命名空间名称作为过滤条件。
当用户希望切换命名空间时,单击当前已经选中的命名空间的名称,在弹出的下拉列表中切换。
当用户希望通过应用名称筛选部署组时,单击命名空间右侧的空白位置,便可弹出应用和部署组的下拉选项,如图所示。
泳道入口
全链路灰度发布规则配置后,会在泳道的入口部署组上对请求规则进行校验,以此来判断请求是否应该进入某一个泳道中。通常情况下,泳道入口是一个网关。
同一个泳道中支持多个入口,在请求经过每一个入口部署组时,都会判断请求是否应该进入泳道中。
配置方法:在选择部署组页面勾选需要被导入到泳道中部署组后,在穿梭框的右侧通过泳道入口开关
配置。泳道与命名空间
当前 TSF 支持两种 命名空间:全局命名空间和普通命名空间。
泳道中可以包含全局命名空间中的部署组和普通命名空间中的部署组。
说明
当前 Mesh 应用不支持部署在全局命名空间中,不支持泳道中同时出现全局命名空间中的部署组和 Mesh 应用的部署组。
删除泳道
注意
当泳道上已经绑定了全链路灰度发布的规则,则不能删除。
编辑泳道
1. 在 泳道配置 列表页面,单击目标泳道的“ID”,进入泳道详情页。
2. 在基本信息模块中,单击右上角的编辑,可以修改泳道名称和备注。
3. 在部署组管理模块中,可以向泳道添加或移除部署组,也可以设置某个部署组为泳道入口。
查看泳道监控信息
1. 在 泳道配置 列表页面,单击目标泳道的“ID”,进入泳道详情页。
2. 选择泳道监控页签,设置好时间范围后,即可查看该泳道的请求量、耗时和错误率信息。