Gateway pods are ErrImagePull — nodes resolve forgejo.riotpiao.com to a ClusterIP and time out, so the Service had no endpoints and the host was returning 503. Kong is still running; this restores it.
47 lines
1.8 KiB
YAML
47 lines
1.8 KiB
YAML
# Edge route for the API gateway.
|
|
#
|
|
# Lives here rather than in the central k8s/bootstrap/ingress/ingress.yaml
|
|
# because that Application syncs in wave 1, before namespace `api` exists.
|
|
#
|
|
# nginx terminates TLS with the wildcard *.riotpiao.com cert (served as its
|
|
# default-ssl-certificate, so no per-rule `tls:` block is needed) and forwards
|
|
# plain HTTP to the gateway.
|
|
#
|
|
# Backend was kong-proxy:80 until Kong was retired on 2026-08-19; it is now the
|
|
# Go gateway's Service, api-gateway:8080, deployed from rock/homelab-frontend.
|
|
# Reverting the cutover is a change to these two lines and nothing else.
|
|
#
|
|
# Catch-all `/` on purpose: everything under this host belongs to the gateway.
|
|
# Listing per-API paths here would duplicate the gateway's routing table inside
|
|
# nginx, and the two copies would drift.
|
|
#
|
|
# In-cluster callers should prefer http://api-gateway.api.svc.cluster.local:8080
|
|
# directly. Resolving api.riotpiao.com sends them out to nginx and back in,
|
|
# which is a pointless hairpin unless they need TLS or the public hostname.
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: api
|
|
namespace: api
|
|
annotations:
|
|
# An API gateway carries streaming responses (SSE, gRPC-web, LLM token
|
|
# streams). nginx's 60s default read timeout and its response buffering
|
|
# would truncate or stall those.
|
|
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
|
|
nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
|
|
nginx.ingress.kubernetes.io/proxy-buffering: "off"
|
|
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
|
spec:
|
|
ingressClassName: nginx
|
|
rules:
|
|
- host: api.riotpiao.com
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: kong-proxy
|
|
port:
|
|
number: 80
|