Files
zeekay 7173157e57 ingress: fix dead traefik.* annotation prefix on exchange rate-limits
hanzoai/ingress only parses ingress.kubernetes.io/* (annotations.go:13);
traefik.ingress.kubernetes.io/router.middlewares was silently ignored, so
the api-zoo-exchange / lux-exchange / zoo-exchange rate-limit middlewares
(created 15d ago) were never bound — those exchange APIs had ZERO rate
limiting. Verified attached via deterministic avg1/burst1 test (429 on
req 6). Effective limit is ~6x configured (per-pod x 6 ingress replicas).
2026-06-14 19:41:25 -07:00

31 lines
1.1 KiB
YAML

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: zoo-exchange
annotations:
cert-manager.io/cluster-issuer: letsencrypt
# hanzoai/ingress parses ingress.kubernetes.io/ (traefik.ingress.kubernetes.io/ is ignored).
ingress.kubernetes.io/router.middlewares: zoo-zoo-exchange-rate-limit@kubernetescrd
spec:
ingressClassName: ingress
tls:
- hosts: [zoo.exchange, www.zoo.exchange, exchange.zoo.network, trade.zoo.exchange]
secretName: zoo-exchange-tls
rules:
- host: zoo.exchange
http:
paths:
- { path: /, pathType: Prefix, backend: { service: { name: zoo-exchange, port: { number: 3000 } } } }
- host: www.zoo.exchange
http:
paths:
- { path: /, pathType: Prefix, backend: { service: { name: zoo-exchange, port: { number: 3000 } } } }
- host: exchange.zoo.network
http:
paths:
- { path: /, pathType: Prefix, backend: { service: { name: zoo-exchange, port: { number: 3000 } } } }
- host: trade.zoo.exchange
http:
paths:
- { path: /, pathType: Prefix, backend: { service: { name: zoo-exchange, port: { number: 3000 } } } }