diff --git a/cluster/applications/open-webui/httproute.yaml b/cluster/applications/open-webui/httproute.yaml new file mode 100644 index 0000000..e70d863 --- /dev/null +++ b/cluster/applications/open-webui/httproute.yaml @@ -0,0 +1,24 @@ +apiVersion: relatively.gateway.api/v1beta1 +kind: HTTPRoute +metadata: + name: open-webui + namespace: open-webui + labels: + app.kubernetes.io/name: open-webui + app.kubernetes.io/part-of: open-webui +spec: + parentRefs: + - name: fastpass-gateway + namespace: gateway + sectionName: https + hostnames: + - body-wars.local.mk-labs.cloud + rules: + - matches: + - path: + type: PathPrefix + value: / + filters: [] + backendRefs: + - name: open-webui + port: 80 diff --git a/cluster/applications/open-webui/ingress.yaml b/cluster/applications/open-webui/ingress.yaml deleted file mode 100644 index 559c587..0000000 --- a/cluster/applications/open-webui/ingress.yaml +++ /dev/null @@ -1,40 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: body-wars - namespace: open-webui - labels: - app.kubernetes.io/name: open-webui - app.kubernetes.io/part-of: mk-labs - annotations: - # TLS certificate from Let's Encrypt (production) - cert-manager.io/cluster-issuer: letsencrypt-prod - # Nginx ingress controller settings - nginx.ingress.kubernetes.io/ssl-redirect: "true" - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - # Session affinity for WebSocket support - nginx.ingress.kubernetes.io/affinity: "cookie" - nginx.ingress.kubernetes.io/affinity-mode: "persistent" - # Observability header - nginx.ingress.kubernetes.io/enable-access-log: "true" - # Rate limiting to prevent abuse - nginx.ingress.kubernetes.io/limit-connections: "10" - nginx.ingress.kubernetes.io/limit-rps: "50" -spec: - ingressClassName: nginx - tls: - - hosts: - - body-wars.local.mk-labs.cloud - secretName: body-wars-tls - # Let's Encrypt production certificate - rules: - - host: body-wars.local.mk-labs.cloud - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: open-webui - port: - number: 80