Skip to main content
v0.1.1 — Latest Release

PDB Operator

Automate PodDisruptionBudget management across your Kubernetes cluster with policy-driven availability classes.

kubectl
$ cat pdbpolicy.yaml
apiVersion: availability.pdboperator.io/v1alpha1 kind: PDBPolicy spec: availabilityClass: high-availability enforcement: strict workloadSelector: matchLabels: env: production
$ kubectl apply -f pdbpolicy.yaml
pdbpolicy.pdboperator.io/production-ha created
$ kubectl get pdb -l pdboperator.io/managed-by=pdb-operator
NAME MIN AVAILABLE ALLOWED DISRUPTIONS my-api-pdb 75% 1 auth-svc-pdb 75% 1

Features

Everything you need to manage PodDisruptionBudgets at scale.

core

Availability Classes

Five predefined levels from non-critical (20%) to mission-critical (90%). Security workloads get automatic boosting.

policy

Enforcement Modes

Choose strict, flexible, or advisory enforcement. Control how deployment annotations can override policies.

ops

Full Observability

Prometheus metrics, OpenTelemetry tracing, structured logging, and Kubernetes events out of the box.

core

Maintenance Windows

Schedule maintenance windows with timezone and day-of-week support. PDBs relax automatically during maintenance.

policy

Workload-Aware

Automatic classification of core, management, and security workloads with function-based PDB optimization.

policy

Policy Priority

Resolve conflicts with priority-based policy resolution. Higher priority policies always win when multiple match.

Quick Install

Get up and running in seconds with Helm.

$ helm install pdb-operator oci://ghcr.io/pdb-operator/charts/pdb-operator

How It Works

Two controllers working together to keep your cluster protected.

1

Define Policies

Create PDBPolicy resources with availability classes, enforcement modes, and workload selectors.

2

Operator Reconciles

PDBPolicyController matches deployments. DeploymentController creates and manages PDBs.

3

PDBs Auto-Managed

PDBs are created, updated, and cleaned up automatically. Maintenance windows relax them on schedule.

Ready to automate your PDBs?

Stop manually managing PodDisruptionBudgets. Let policies handle availability across your entire cluster.