繁体   English   中英

Istio路由端口规范

[英]Istio routing ports specification

我正在尝试从nginx Ingress切换为使用Istio ,以利用路由权重进行金丝雀部署和集成监控等功能。

我的常规路由定义为:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: solar-demo
  annotations:
    nginx.org/server-snippet: "proxy_ssl_verify off;"
spec:
  rules:
  - host: shmukler.example.com
    http:
      paths:
      - path: /city/*
        backend:
          serviceName: solar-demo
          servicePort: 3000
      - path: /solar/*
        backend:
          serviceName: solar-demo
          servicePort: 3001
--
kind: Service
apiVersion: v1
metadata:
  name: solar-demo
spec:
  ports:
  - name: city
    protocol: TCP
    port: 3000
    targetPort: 3000
  - name: solar
    protocol: TCP
    port: 3001
    targetPort: 3001
  selector:
    app: solar-demo

我什至不需要auth ,现在。 当我开始install/kubernetes/istio-demo.yaml ,它在istio-system名称空间中创建了很多pod和服务。

我想(可能不正确)想出了一个VirtualService ,也许还定义了路由规则。 写道:

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: solar-demo
spec:
  hosts:
    - shmukler.example.com
  http:
  - route:
    - destination:
        host: shmukler.example.com
        subset: blue
      weight: 90
    - destination:
        host: shmukler.example.com
        subset: green
      weight: 10

是否在常规服务中定义了端口,而在VirtualService定义了权重和路径? 我是否需要将任何东西粘贴到istio-system名称空间中? 是否有可能,我需要扩展istio-demo.yaml以进行路由,只是为了使事情滚动?

任何指针表示赞赏。

您需要一个网关和一个VirtualService。

查看此任务的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM