灰度版本基本操作
您可以对现有的服务进行多个版本的管理,针对不同版本配置不同的策略,从而达到流量管理的目的。
使用说明
对灰度版本的相关基本操作,其原理是修改Istio的destinationrule和virtualservice两个资源的配置信息,修改完成后,需要等待10秒左右,新的策略规则才会生效。
为灰度版本添加灰度策略
如果您在添加灰度版本时,未配置灰度策略,可以基于以下步骤创建策略。
- 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。
- 单击已创建灰度任务的名称,进入查看灰度版本状态页面。
- 单击“查看/配置灰度策略”。在灰度策略配置中,单击策略类型下的“基于请求内容”策略或“基于流量比例”策略。
- 基于请求内容发布
对当前版本配置相应的请求内容规则,服务流量在满足此规则的情况下,会走此版本。例如http请求,请求头cookie必须满足“访问条件”走版本A。
- 基于流量比例发布
- 基于请求内容发布
- 单击“策略下发”,灰度策略会自动生效。
修改版本的灰度策略
- 修改基于流量比例的策略:
基于流量比例的策略(又称为AB TEST策略)所有版本的权重之和为100,即:假设默认版本的权重为x,当前待修改版本的权重为y,则x+y=100。
当您此时将待修改版本的权重从y改成y1,则默认版本的权重会自动改为x-y1+y,即待修改版本的权重会影响到默认版本的权重。
- 修改基于请求内容的策略:
基于请求内容的策略(又称为金丝雀策略)会遍历除默认版本外的全部金丝雀规则,如果满足某个版本的规则,则流量走向此版本,如果全部不满足,则流量会走到默认版本,即:假设当您此时将待修改版本的匹配策略为x。
当您此时将待修改版本的匹配策略从x改成x1,则原本满足x规则的流量将会走到默认版本,而满足新规则x1的流量将会走到当前的待修改版本。
切换灰度策略类型
您可以在“基于请求内容”的策略和“基于流量比例”的策略之间切换。策略完成切换后,原本配置的规则将全部失效,所有的流量,会根据配置的新策略重新分配。
只有发布中的任务才支持灰度策略变更,版本发布完成后(即新版本完全接管旧版本流量,且旧版本已下线),将不支持重新配置灰度策略。
- 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。
- 单击已创建灰度版本的名称。
- 在监测灰度运行状态页面,单击“查看/配置灰度策略”。
- 参照配置灰度策略重新配置灰度策略。
- 配置完成后,单击“策略下发”。
切为默认流量版本
执行某个版本(如V2版本)后的“接管所有流量”,V2版本将获取到原默认版本的全部流量。原默认版本流量将变为0。
下线灰度版本
如果下线了原默认版本,则该版本的流量会被新创建的灰度版本完全接管。
- 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。
- 单击已创建灰度任务的名称。
- 单击待下线版本后的“版本下线”,下线该版本。