将全部微服务的默认版本设置为v1。api
$ istioctl create -f @samples/bookinfo/routing/route-rule-all-v1.yaml@
reviews
经过在浏览器中打开http:// $ GATEWAY_URL / productpage,确认v1是该服务的有效版本。浏览器
您应该看到显示的Bookinfo应用程序产品页面。请注意,productpage
因为reviews:v1
未访问评级服务,所以未显示评级星标。微服务
首先,从传输50%的流量reviews:v1
,以reviews:v3
与下面的命令:spa
$ istioctl replace -f @samples/bookinfo/routing/route-rule-reviews-50-v3.yaml@
确认规则已被替换:code
$ istioctl get virtualservice reviews -o yaml apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: reviews ... spec: hosts: - reviews http: - route: - destination: host: reviews subset: v1 weight: 50 - route: - destination: host: reviews subset: v3 weight: 50
productpage
在您的浏览器中刷新,您如今应该看到大约50%的红色星级。路由
使用当前的Envoy边车实施,您可能须要刷新
productpage
不少次才能看到正确的分布。在看到任何更改以前,可能须要刷新15次或更屡次。您能够修改规则以将90%的流量路由到v3,以便更频繁地查看红色星星。get
当reviews
微服务的版本v3 被认为是稳定的时,咱们能够将100%的流量路由到reviews:v3
:产品
$ istioctl replace -f @samples/bookinfo/routing/route-rule-reviews-v3.yaml@
您如今能够登陆productpage
任何用户,而且您应该始终看到每一个评论都带有红色星级的书评。io
参考资料:https://istio.io/docs/tasks/traffic-management/traffic-shifting/登录