Использование одного и того же Istio GateWay с несколькими портами и протоколами
Я пытаюсь настроить istio GateWay с двумя разными протоколами (GRPC и HTTP)
Прямо сейчас у меня есть два разных шлюза по одному для GRPC и HTTP, как показано ниже
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: gwgrpc
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 7878
name: http
protocol: GRPC
hosts:
- "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: gwrest
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 7979
name: http
protocol: HTTP
hosts:
- "*"
Можно ли использовать один и тот же шлюз с разными протоколами и портами?
2 ответа
Решение
Вы должны быть в состоянии объединить два шлюза. Единственная проблема заключается в том, что оба ваших порта имеют одинаковое имя. Нечто подобное должно работать.
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: gwgrpc
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 7878
name: grpc
protocol: GRPC
hosts:
- "*"
- port:
number: 7979
name: http
protocol: HTTP
hosts:
- "*"
Вы можете использовать этот пример в качестве шаблона. Согласитесь с @Frank: Вам нужно сменить имя. Вот небольшая часть примера конфигурации
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: my-gateway
spec:
selector:
app: my-gatweway-controller
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- uk.bookinfo.com
- eu.bookinfo.com
tls:
httpsRedirect: true # sends 301 redirect for http requests
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- uk.bookinfo.com
- eu.bookinfo.com