From 233b13f972a1137aa587a62f1f29375fa7355564 Mon Sep 17 00:00:00 2001 From: Thore Cimbal Date: Tue, 28 Jul 2026 12:00:00 +0000 Subject: [PATCH] fix(coturn): use Recreate deployment strategy for hostNetwork pod Discovered live: the default RollingUpdate strategy tries to schedule the new pod before removing the old one, which can never succeed for a hostNetwork Deployment on a single-node cluster (both pods would need the same node ports 3478/5349 simultaneously). Surfaced by the rotated-at annotation bump from the previous commit getting stuck in FailedScheduling. Recreate kills the old pod first, freeing the ports. Co-Authored-By: Claude Sonnet 5 --- apps/production/coturn.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/production/coturn.yaml b/apps/production/coturn.yaml index ce6cbcc..e236b08 100644 --- a/apps/production/coturn.yaml +++ b/apps/production/coturn.yaml @@ -65,6 +65,11 @@ metadata: namespace: matrix spec: replicas: 1 + # hostNetwork pods bind directly to the node's ports (3478/5349) - on this single-node + # cluster, RollingUpdate's default "bring up the new pod before removing the old one" + # can never schedule (port conflict). Recreate kills the old pod first. + strategy: + type: Recreate selector: matchLabels: app: coturn