• 沒有找到結果。

1.4 灰度发布

1.4.2 为服务添加灰度版本

一个服务仅支持发布一个灰度版本,并支持为版本添加灰度策略。

基本概念

● 灰度版本

一个服务仅支持发布一个灰度版本,可以对灰度版本配置相应的灰度策略。

● 灰度策略

当您需要在生产环境发布一个新的待上线版本时,您可以选择添加一个灰度版 本,并配置相应的灰度策略,将原有的生产环境的默认版本的流量引流一部分至 此。经过评估稳定后,可以将此灰度版本接管所有流量,下线原来的版本,从而 接管原有的生产环境的版本上的流量。

创建金丝雀发布

步骤1 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。在金丝雀发布下,单 击“创建”。

步骤2 配置灰度版本基本信息。 版本。例如http请求,请求头cookie必须满足“访问条件”走版本A。

– Cookie内容:

完全匹配:当且仅当表达式完全符合此情况时,流量才会走到这个版 本。

正则匹配:此处需要您使用正则表达式来匹配相应的规则。

– 自定义Header:

完全匹配:当且仅当表达式完全符合此情况时,流量才会走到这个版 本。

正则匹配:此处需要您使用正则表达式来匹配相应的规则。

可以自定义请求头的key和value,value支持完全匹配和正则匹配。

– 允许访问的操作系统:请选择允许访问的操作系统,包括iOS、android、

windows、macOS。

– 允许访问的浏览器:请选择允许访问的浏览器,包括Chrome、IE。

– 灰度策略规则描述:当前服务的流量转发的规则描述信息及Yaml的查看。

● 基于流量比例发布

对当前版本配置相应的流量权重,服务流量将会按照权重比率以对应的概率分发 当前版本。例如10%的流量走版本A,90%的流量走版本B。

– 版本流量配比:根据输入的流量配比来确定流量分发的比重。

范围限制为[0,默认版本权重w]。例如,当您配置为10,则10%的服务流量会 走向此版本,(w-10)%的流量会走向默认版本,即从默认版本分走一部分流 量。 代码对HTTP请求的header信息进行传播。

例如:如果您基于review组件,配置了基于请求内容的灰度发布策略,通过访问 productpage组件的界面,是无法看到效果的。

原因为,您的客户端访问productpage组件携带了HTTP请求的header信息,而productpage 组件请求reviews组件时,将这些header信息丢失了(详情可参考如何使用Istio调用链埋 点),从而失去了基于请求内容的灰度发布效果。

● 实例数量

对灰度版本的相关基本操作,其原理是修改Istio的destinationrule和virtualservice两个 资源的配置信息,修改完成后,需要等待10秒左右,新的策略规则才会生效。 版本。例如http请求,请求头cookie必须满足“访问条件”走版本A。

– Cookie内容:

完全匹配:当且仅当表达式完全符合此情况时,流量才会走到这个版本

正则匹配:此处需要您使用正则表达式来匹配相应的规则 – 自定义Header:

完全匹配:当且仅当表达式完全符合此情况时,流量才会走到这个版本

正则匹配:此处需要您使用正则表达式来匹配相应的规则

可以自定义请求头的key和value,value支持完全匹配和正则匹配。

– 允许访问的操作系统:请选择允许访问的操作系统。

相關文件