I am currently checking how to do the following:
I want to deploy an app on a Google Kubernetes Engine.
This app runs perfectly fine.
Now I want to deploy it via knative with net-kourier.
The Service used for Kourier is set to ‘ClusterIP’.
Now I want to set up an ingress (https://cloud.google.com/kubernetes-engine/docs/how-to/load-balance-ingress#create-ingress) to talk to the app. (Background information: I want to use Identity Aware Proxy for auth reasons).
But that does not seem to work with knative.
Can somehow give some hints on how to proceed?
Thanks 🙂
My knative service:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: my-app
namespace: apps
spec:
template:
metadata:
annotations:
cloud.google.com/backend-config: '{"default": "my-backendconfig"}' # Uses IAP: https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#associating_backendconfig_with_your_ingress
cloud.google.com/neg: '{"ingress": true}'
spec:
containers:
- image: my-image
Backendconfig:
---
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
name: my-backendconfig
namespace: apps
spec:
iap:
enabled: true
oauthclientCredentials:
secretName: iap-credentials
Ingress:
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: apps-ingress
namespace: apps
annotations:
networking.gke.io/v1beta1.FrontendConfig: my-frontendconfig
kubernetes.io/ingress.global-static-ip-name: my-static-ip
ingress.gcp.kubernetes.io/pre-shared-cert: my-cert
spec:
rules:
- host: example.com
http:
paths:
- backend:
service:
name: my-app
port:
number: 80
pathType: ImplementationSpecific