Я знаю, что istio поддерживает маршрут к другому сервису по статическому правилу, как показано ниже:
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: my-virtualservice
spec:
hosts:
- "*"
gateways:
- my-gateway
http:
- match:
- uri:
prefix: /applications/app-a
route:
- destination:
host: app-a
port:
number: 9080
Но у меня есть требование, чтобы я динамически создавал сервисы, когда появляется новый пользователь или приходит новая конфигурация.Если я использую «статический» способ, то мне приходится каждый раз создавать новый виртуальный сервис или обновлять существующий виртуальный сервис.
Я не нахожу никакой документации, упоминающей этот вид использования, но могу ли я использовать что-то вроде "regex" или какой-то другой способ создать одно правило, которое будет применяться ко всем этим вновь создаваемым сервисам без обновления виртуальной службы каждый раз?Ниже что-то не работает, но попробуйте продемонстрировать мою идею:
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: my-virtualservice
spec:
hosts:
- "*"
gateways:
- my-gateway
http:
- match:
- uri:
regex: /applications/(?<appname>.*)
route:
- destination:
host: $('appname')--svc
port:
number: 9080
Конечно, любое предложение будет с благодарностью.Благодарю.