prop/k8s
Graham McIntire ed8b080b13
ops(prop): bump preStop sleep to 25s for cloudflared connection drain
The ingress is cloudflared (Cloudflare Tunnel), which keeps an HTTP/2
connection pool to upstream Service IPs and reuses connections
aggressively. After a pod is removed from Service endpoints,
cloudflared can still hold in-flight HTTP/2 streams to the dying pod
for a noticeable window — 10 s wasn't enough, deploys still bounced
502 on LiveView reconnect.

Bump preStop sleep 10s → 25s and terminationGracePeriodSeconds 40s →
60s so cloudflared has time to turn over its upstream connections
before Phoenix begins draining.
2026-04-29 14:17:40 -05:00
..
deployment-backfill.yaml remove obsolete flux manifest and imagepolicy annotations 2026-04-29 11:00:05 -05:00
deployment-grid-rs.yaml remove obsolete flux manifest and imagepolicy annotations 2026-04-29 11:00:05 -05:00
deployment-hrrr-point-rs.yaml remove obsolete flux manifest and imagepolicy annotations 2026-04-29 11:00:05 -05:00
deployment.yaml ops(prop): bump preStop sleep to 25s for cloudflared connection drain 2026-04-29 14:17:40 -05:00
hpa.yaml ops(prop): pin HPA to 1 replica 2026-04-29 09:55:46 -05:00
kustomization.yaml infra(k8s): load-based HPAs, drop anti-affinity, retire talos5 2026-04-23 18:43:18 -05:00
metrics-service.yaml feat(k8s): NodePort service for external Prometheus scraping 2026-04-18 16:51:46 -05:00
namespace.yaml Add k8s manifests and Forgejo CI for cluster deployment 2026-04-06 09:25:24 -05:00
rbac.yaml Add Erlang clustering via libcluster and expose LiveDashboard 2026-04-06 09:46:48 -05:00
service.yaml fix(k8s): tier label isolates hot pods from backfill endpoints 2026-04-19 16:58:13 -05:00