# A single-node DB cannot stay available across a voluntary disruption (node # drain / autoscaler scale-down) — there is no second replica to serve while # the pod reschedules. This PDB makes that explicit: `maxUnavailable: 0` blocks # VOLUNTARY evictions so a drain cannot kill tidalDB without an operator first # scaling it down or accepting the downtime. It does NOT protect against # involuntary loss (node crash) — for that you need durable PVC storage + the # recovery path in docs/ops/recovery.md. Zero-downtime requires true # multi-process HA, which is not yet available (tracked as m8p10). apiVersion: policy/v1 kind: PodDisruptionBudget metadata: name: tidaldb namespace: tidaldb labels: app.kubernetes.io/name: tidaldb spec: maxUnavailable: 0 selector: matchLabels: app.kubernetes.io/name: tidaldb