Skip to content

feat(cloudnative-pg): add operator PodDisruptionBudget support #1003

Open

Description

@WoahitsJoe

Problem

The cloudnative-pg chart does not currently create a PodDisruptionBudget for the operator Deployment. This leaves operator replicas unprotected during voluntary disruptions such as node drains.

This is separate from PodDisruptionBudgets for PostgreSQL clusters, which CloudNativePG manages through the Cluster spec.

Proposed approach

Add an opt-in policy/v1 PodDisruptionBudget for the operator Deployment with:

  • support for either minAvailable or maxUnavailable as a count or percentage, including zero
  • support for unhealthyPodEvictionPolicy
  • preservation of the chart namespace, standard labels, and common annotations
  • disabled-by-default behavior for backward compatibility

With the feature enabled, a default of minAvailable: 1 would protect the default single-replica operator. Deployments with additional replicas could tune the availability setting as appropriate.

Would maintainers agree with this scope and approach?

Prior and current work

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    chart( operator )Related to the operator (cloudnative-pg) chart

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions