zoukankan      html  css  js  c++  java
  • istio-流量管理-基于不同权重访问规则控制

    istio-流量管理-基于不同权重访问规则控制

    https://www.qikqiak.com/istio-book/traffic-control/2.%E5%9F%BA%E4%BA%8EBookinfo%E8%BF%9B%E8%A1%8Cistio%E6%B5%81%E9%87%8F%E7%AE%A1%E7%90%86%E7%9A%84%E9%85%8D%E7%BD%AE%E5%92%8C%E5%BA%94%E7%94%A8%E5%AD%A6%E4%B9%A0.html?q=

    首先移除刚刚创建的 VirtualService 对象:

    复制代码
    [root@k8s-master istio-1.3.1]# kubectl get virtualservices.networking.istio.io
    NAME       GATEWAYS             HOSTS       AGE
    bookinfo   [bookinfo-gateway]   [*]         2d23h
    reviews                         [reviews]   10m
    [root@k8s-master istio-1.3.1]# kubectl delete virtualservice reviews
    virtualservice.networking.istio.io "reviews" deleted
    [root@k8s-master istio-1.3.1]# kubectl get virtualservices.networking.istio.io
    NAME       GATEWAYS             HOSTS   AGE
    bookinfo   [bookinfo-gateway]   [*]     2d23h
    [root@k8s-master istio-1.3.1]#
    复制代码

    再去访问 Bookinfo 应用又回到最初随机访问 Reviews 的情况了

    现在我们查看文件 samples/bookinfo/networking/virtual-service-reviews-80-20.yaml 的定义:

    复制代码
    # cat samples/bookinfo/networking/virtual-service-reviews-80-20.yaml
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: reviews
    spec:
      hosts:
        - reviews
      http:
      - route:
        - destination:
            host: reviews
            subset: v1
          weight: 80
        - destination:
            host: reviews
            subset: v2
          weight: 20
    复制代码

    这个规则定义了 80% 的对 Reviews 的流量会落入 v1 这个 subset,就是没有 Ratings 的这个服务,20% 会落入 v2 带黑色 Ratings 的这个服务,然后我们创建这个资源对象:

    复制代码
    [root@k8s-master istio-1.3.1]# kubectl create -f samples/bookinfo/networking/virtual-service-reviews-80-20.yaml
    virtualservice.networking.istio.io/reviews created
    [root@k8s-master istio-1.3.1]# kubectl get virtualservices.networking.istio.io
    NAME       GATEWAYS             HOSTS       AGE
    bookinfo   [bookinfo-gateway]   [*]         2d23h
    reviews                         [reviews]   3s
    [root@k8s-master istio-1.3.1]#
    复制代码

    我们查看当前网格中的 virtualservices 对象,可以看到已经有 reviews 了,证明已经创建成功了,由于上面我们已经将应用中所有的 DestinationRules 都已经创建过了,所以现在我们直接访问应用就可以了,我们多次刷新,可以发现没有出现 Ratings 的次数与出现黑色星 Ratings 的比例大概在4:1左右,并且没有红色星的 Ratings 的情况出现,说明我们配置的 VirtualService 规则生效了。

  • 相关阅读:
    NXOpen 创建方体block代码
    Mysql---2 DDL DML DQL DCL
    Mysql数据库--1数据库操作
    FFmpeg
    Servlet Web
    Java web Springboot
    Java 网络
    Java 注解 反射
    Java 线程状态
    Java Lambda
  • 原文地址:https://www.cnblogs.com/Python-K8S/p/13985762.html
Copyright © 2011-2022 走看看