Спецификация портов маршрутизации Istio

Я пытаюсь переключиться с 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.

Я предположил, возможно, неправильно, что мне нужно иметь 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, чтобы выполнить маршрутизацию, мне нужно, чтобы все было в порядке?

Любые указатели оцениваются.

1
задан 13 August 2018 в 13:46

0 ответов

Другие вопросы по тегам:

Похожие вопросы: