istio-0.8 路由权重设置

简介:

基于权重的版本路由

  1. 将所有微服务的默认版本设置为v1。

    $ istioctl create -f @samples/bookinfo/routing/route-rule-all-v1.yaml@
    
  2. reviews通过在浏览器中打开http:// $ GATEWAY_URL / productpage,确认v1是该服务的有效版本。

    您应该看到显示的Bookinfo应用程序产品页面。请注意,productpage由于reviews:v1未访问评级服务,因此未显示评级星标。

  3. 首先,从传输50%的流量reviews:v1,以reviews:v3与下面的命令:

    $ istioctl replace -f @samples/bookinfo/routing/route-rule-reviews-50-v3.yaml@
    

    确认规则已被替换:

        $ 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
    
  4. productpage在您的浏览器中刷新,您现在应该看到大约50%的红色星级。

    使用当前的Envoy边车实施,您可能需要刷新productpage很多次才能看到正确的分布。在看到任何更改之前,可能需要刷新15次或更多次。您可以修改规则以将90%的流量路由到v3,以便更频繁地查看红色星星。

  5. reviews微服务的版本v3 被认为是稳定的时,我们可以将100%的流量路由到reviews:v3

    $ istioctl replace -f @samples/bookinfo/routing/route-rule-reviews-v3.yaml@
    

    您现在可以登录productpage任何用户,并且您应该始终看到每个评论都带有红色星级的书评。

参考资料:https://istio.io/docs/tasks/traffic-management/traffic-shifting/

目录
相关文章
|
负载均衡 Kubernetes API
Istio:Gateway设计与实现
Istio:Gateway设计与实现
806 0
Istio:Gateway设计与实现
|
10月前
|
Kubernetes JavaScript API
如何理解 Istio Ingress, 它与 API Gateway 有什么区别?东西流量?南北流量?
这三者都和流量治理密切相关,那么流量治理在过去和现在有什么区别呢?都是如何做的呢? 在学习istio的时候对流量管理加深了理解。什么是东西流量?什么是南北流量?
188 0
|
7月前
|
监控 Cloud Native 安全
使用Linkerd实现流量管理:学习如何使用Linkerd的路由规则来实现流量的动态控制
使用Linkerd实现流量管理:学习如何使用Linkerd的路由规则来实现流量的动态控制
45 0
|
10月前
|
Prometheus Kubernetes Cloud Native
一文带你了解 Istio 流量路由
当我们尝试在 Kubernetes 中使用 NodePort 或 LoadBalancer 类型的服务设施配置进行通信时,Istio 或许是一个非常流行、新兴的开源服务网格产品,其能够用于通信管理、可观察性、错误处理及安全性等。作为微服务架构体系的一部分,为了无需过多地使用重复的逻辑填充每个微服务代码,我们可以利用 Istio 服务网格在一个地方完成所有这些事情。
114 0
|
10月前
|
负载均衡 Kubernetes 前端开发
基于 Traefik 的加权灰度发布
众所周知,Traefik 是云原生生态中的一个爆款的反向代理和负载均衡器。我们无论如何定义、赞美它都不为过。毫无疑问,基于传统的反向代理组件而言,真正使 Traefik 与 Nginx,Haproxy 最为关键的不同之处在于其“开箱即用”的功能,即它的自适应和动态可配置性。不仅如此,相比较而言,Traefik 最为核心的部分可能是它做自动服务发现、灰度发布等能力。
261 0
|
JSON 网络协议 网络安全
在Istio中,到底怎么获取 Envoy 访问日志?
Envoy 访问日志记录了通过 Envoy 进行请求 / 响应交互的相关记录,可以方便地了解具体通信过程和调试定位问题。
964 0
在Istio中,到底怎么获取 Envoy 访问日志?
|
Kubernetes 网络协议 安全
k8s ingress 7层路由机制
k8s ingress 7层路由机制
604 0
k8s ingress 7层路由机制
|
API 容器 Perl
调整istio-proxy(envoy)日志级别
istio-proxy也是我们常说的sidecar,istio默认使用envoy注入的,envoy的日志级别包括trace, debug, info, warning, error, critical, offistioctl命令动态调整istio默认使用的warning级别的日志,可以通过istioctl命令来指定sidecar修改日志级别istioctl -n [namespace] prox
914 0
|
API 微服务 Perl
10个 Istio 流量管理 最常用的例子,你知道几个?
10 个 Istio 流量管理 最常用的例子,强烈建议收藏起来,以备不时之需。
357 0
10个 Istio 流量管理 最常用的例子,你知道几个?
|
监控 应用服务中间件 nginx
5个 Istio 访问外部服务流量控制最常用的例子,你知道几个?
5 个 Istio 访问外部服务的流量控制常用例子,强烈建议收藏起来,以备不时之需。
257 0
5个 Istio 访问外部服务流量控制最常用的例子,你知道几个?