我正在尝试学习 istio。我能够设置一个简单的流量转移,其中 40% 的流量转到特定版本,其余 60% 转到其他版本。我的疑问是我可以根据这个重量(40-60)动态
- 两个版本的错误响应百分比。错误响应较少的版本面临更多的流量,最终达到 100%。
- 或者至少,随时间变化,例如每小时 2% 的班次。
另外,这是否需要我一次又一次地做 kubectl apply 。
我正在尝试学习 istio。我能够设置一个简单的流量转移,其中 40% 的流量转到特定版本,其余 60% 转到其他版本。我的疑问是我可以根据这个重量(40-60)动态
另外,这是否需要我一次又一次地做 kubectl apply 。
对于第一部分,VirtualService
Istio 中没有基于错误率创建路由的功能。路由基于通过VirtualService
.
其次,鉴于Kubernetes 对象是持久性实体,并且 Istio 控制基于权重的路由的 CRD 的设置定义在spec
对象的 (其状态必须由用户提供)中,这种配置会动态变化是意料之外的。
对于您的场景,我会说部署一个新版本而不知道它是否会比以前的错误更多,并期望他们错误足以决定哪个是持久的可能不是最好的方法。
我建议使用流量镜像来测试新版本中的生产流量,然后确定是否值得使用任何现有/支持的部署策略进行部署。