ancient-wolf-19325
07/22/2024, 9:45 AM< and >). They should be in the form of key-value pairs.
2. Ingress Class Name: Ensure that the ingressClassName is correctly set to nginx.
3. Separate gRPC Ingress: The separateGrpcIngress and separateGrpcIngressAnnotations are correctly set to handle gRPC traffic separately.
Here is a refined version of your Helm values:
common:
ingress:
host: "{{ .Values.userSettings.dnsLabel }}"
ingressClassName: nginx
separateGrpcIngress: true
tls:
enabled: true
secretName: flyte-tls
annotations:
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-allow-methods: "PUT,GET,POST,OPTIONS,DELETE"
nginx.ingress.kubernetes.io/cors-allow-headers: "Access-Control-Allow-Origin,DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range"
nginx.ingress.kubernetes.io/cors-expose-headers: "Content-Length,Content-Range"ancient-wolf-19325
07/22/2024, 9:45 AM>>```nginx.ingress.kubernetes.io/cors-max-age: "86400" nginx.ingress.kubernetes.io/ssl-redirect: "true" cert-manager.io/cluster-issuer: letsencrypt-prod separateGrpcIngressAnnotations: nginx.ingress.kubernetes.io/backend-protocol: GRPC
*Additional Considerations:*
- *Cert-Manager Configuration*: Ensure that your cert-manager is correctly configured and the `letsencrypt-prod` ClusterIssuer is properly set up.
- *DNS Configuration*: Make sure that your DNS is correctly pointing to the ingress controller.
*Example Ingress Configuration:*
Here is an example of how the ingress might look in your Flyte deployment:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: flyte-core
namespace: flyte
annotations:
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-allow-methods: "PUT,GET,POST,OPTIONS,DELETE"
nginx.ingress.kubernetes.io/cors-allow-headers: "Access-Control-Allow-Origin,DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range"
nginx.ingress.kubernetes.io/cors-expose-headers: "Content-Length,Content-Range"
nginx.ingress.kubernetes.io/cors-max-age: "86400"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
ingressClassName: nginx
rules:
- host: "{{ .Values.userSettings.dnsLabel }}"
http:
paths:
- path: /console
pathType: ImplementationSpecific
backend:
service:
name: flyteconsole
port:
number: 80
- path: /api
pathType: ImplementationSpecific
backend:
service:
name: flyteadmin
port:
number: 80
tls:
- secretName: flyte-tls
hosts:
- "{{ .Values.userSettings.dnsLabel }}"
```
Would you like more details or have any specific questions about this configuration?
Sources:
- Flyte Helm Chart Configuration
- Cert-Manager Documentation
Slack Link
https://flyte-org.slack.com/archives/CP2HDHKE1/p1721641495.056599 👍 0 button 👎 0 button 💡 Hint: Mention @runllm in the thread for followups.