Virtual Services and Gateways Command Script (GCP)

After installing the Aizen core components on a GCP cluster, create the gateways and virtual services for the console, MLflow, dataexplorer, prediction, and explorer by using this command script.

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: aizen-mlflow-gateway
namespace: aizen-infra
spec:
# The selector matches the ingress gateway pod labels.
# If you installed Istio using Helm following the standard documentation, this would be "istio=ingress"
selector:
    istio: ingressgateway 
servers:
- port:
    number: 80
    name: http
    protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: mlflow
namespace: aizen-infra
spec:
hosts:
- "*"
gateways:
- aizen-mlflow-gateway
http:
- match:
    - uri:
        prefix: /mlflow
    route:
    - destination:
        host: aizen-mlflow-service.aizen-infra.svc.cluster.local
        port:
        number: 5000
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: aizen-console-gateway
namespace: aizen
spec:
# The selector matches the ingress gateway pod labels.
# If you installed Istio using Helm following the standard documentation, this would be "istio=ingress"
selector:
    istio: ingressgateway 
servers:
- port:
    number: 80
    name: http
    protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: console
namespace: aizen
spec:
hosts:
- "*"
gateways:
- aizen-console-gateway
http:
- match:
    - uri:
        prefix: /aizen/console
    route:
    - destination:
        host: aizen-console-service.aizen.svc.cluster.local
        port:
        number: 8000
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: aizen-dataexplorer-gateway
namespace: aizen
spec:
# The selector matches the ingress gateway pod labels.
# If you installed Istio using Helm following the standard documentation, this would be "istio=ingress"
selector:
    istio: ingressgateway 
servers:
- port:
    number: 80
    name: http
    protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: dataexplorer
namespace: aizen
spec:
hosts:
- "*"
gateways:
- aizen-console-gateway
http:
- match:
    - uri:
        prefix: /aizen/api
    route:
    - destination:
        host: aizen-dataexplorer-service.aizen.svc.cluster.local
        port:
        number: 8920
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: aizen-explorer-gateway
namespace: aizen
spec:
# The selector matches the ingress gateway pod labels.
# If you installed Istio using Helm following the standard documentation, this would be "istio=ingress"
selector:
    istio: ingressgateway 
servers:
- port:
    number: 80
    name: http
    protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: explorer
namespace: aizen
spec:
hosts:
- "*"
gateways:
- aizen-explorer-gateway
http:
- match:
    - uri:
        prefix: /aizen/explorer/api
    route:
    - destination:
        host: aizen-explorer-service.aizen.svc.cluster.local
        port:
        number: 8901
    - uri:
        prefix: /aizen/featureview
    route:
    - destination:
        host: aizen-explorer-service.aizen.svc.cluster.local
        port:
        number: 8940
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: aizen-prediction-gateway
namespace: aizen
spec:
# The selector matches the ingress gateway pod labels.
# If you installed Istio using Helm following the standard documentation, this would be "istio=ingress"
selector:
    istio: ingressgateway 
servers:
- port:
    number: 80
    name: http
    protocol: HTTP
    hosts:
    - "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: prediction
namespace: aizen
spec:
hosts:
- "*"
gateways:
- aizen-prediction-gateway
http:
- match:
    - uri:
        prefix: /aizen/predictions
    route:
    - destination:
        host: aizen-prediction-cluster-head-svc.aizen.svc.cluster.local
        port:
        number: 8001 

Last updated