Skip to content

feat(chart): add PodDisruptionBudget for high availability - #411

Merged
kubernetes-prow[bot] merged 2 commits into
kubernetes-sigs:mainfrom
vishnukothakapu:feat/helm-pdb
Aug 21, 2026
Merged

feat(chart): add PodDisruptionBudget for high availability#411
kubernetes-prow[bot] merged 2 commits into
kubernetes-sigs:mainfrom
vishnukothakapu:feat/helm-pdb

Conversation

@vishnukothakapu

Copy link
Copy Markdown
Contributor

Description

This adds an optional PodDisruptionBudget to the Helm chart (charts/node-readiness-controller). Since the controller manages node taints, it's critical infrastructure. Adding a PDB allows users running multiple replicas to ensure the controller remains highly available during node drains, cluster upgrades, or other evictions.

The PDB is disabled by default (podDisruptionBudget.enabled: false). Existing installations that do not explicitly opt-in to this feature will see no changes in rendered manifests.

Related Issue

Fixes #410

Type of Change

/kind feature

Testing

  • Added helm-unittest coverage in charts/node-readiness-controller/tests/pdb_test.yaml to ensure it only renders when enabled, respects minAvailable / maxUnavailable, and correctly inherits the selector labels.

Checklist

  • make test passes
  • make lint passes

Does this PR introduce a user-facing change?

Helm chart: Added `podDisruptionBudget` configuration options for high availability during node drains and evictions.

@kubernetes-prow kubernetes-prow Bot added kind/feature Categorizes issue or PR as related to a new feature. do-not-merge/invalid-commit-message Indicates that a PR should not merge because it has an invalid commit message. labels Aug 14, 2026
@netlify

netlify Bot commented Aug 14, 2026

Copy link
Copy Markdown

Deploy Preview for node-readiness-controller ready!

Name Link
🔨 Latest commit 9c814e6
🔍 Latest deploy log https://app.netlify.com/projects/node-readiness-controller/deploys/6a8841f7824dc50008923870
😎 Deploy Preview https://deploy-preview-411--node-readiness-controller.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@kubernetes-prow kubernetes-prow Bot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Aug 14, 2026
@kubernetes-prow

Copy link
Copy Markdown

Hi @vishnukothakapu. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Tip

We noticed you've done this a few times! Consider joining the org to skip this step and gain /lgtm and other bot rights. We recommend asking approvers on your previous PRs to sponsor you.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@kubernetes-prow kubernetes-prow Bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Aug 14, 2026
This adds an optional PodDisruptionBudget to the Helm chart, which is highly recommended for critical controllers to prevent eviction of all replicas during node drains or upgrades.
@kubernetes-prow kubernetes-prow Bot removed the do-not-merge/invalid-commit-message Indicates that a PR should not merge because it has an invalid commit message. label Aug 14, 2026
Comment thread charts/node-readiness-controller/tests/pdb_test.yaml
Comment thread charts/node-readiness-controller/templates/pdb.yaml Outdated

@Ayush4958 Ayush4958 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's seems good to me
@ajaysundark can review for further review

@vitorfloriano

Copy link
Copy Markdown
Contributor

/test pull-node-readiness-controller-junit-report-canary

@AvineshTripathi

Copy link
Copy Markdown
Contributor

/ok-to-test

@kubernetes-prow kubernetes-prow Bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Aug 19, 2026
@ajaysundark

Copy link
Copy Markdown
Contributor

same as #437 (comment). I want to better understand what level of preconfiguration will be handled at the helm chart. Could you help us with some research? Thanks!

@ajaysundark

Copy link
Copy Markdown
Contributor

@Ayush4958 had some references at #437.

It's good to add to our charts. Thanks @vishnukothakapu .

/lgtm

@kubernetes-prow kubernetes-prow Bot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 21, 2026
@ajaysundark

Copy link
Copy Markdown
Contributor

the helm tests are failing and need your second look

/assign @vishnukothakapu

@kubernetes-prow kubernetes-prow Bot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 21, 2026
@ajaysundark

Copy link
Copy Markdown
Contributor

/ok-to-test

@ajaysundark

Copy link
Copy Markdown
Contributor

/lgtm
/approve

@kubernetes-prow kubernetes-prow Bot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 21, 2026
@kubernetes-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ajaysundark, Ayush4958, vishnukothakapu

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubernetes-prow kubernetes-prow Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 21, 2026
@kubernetes-prow
kubernetes-prow Bot merged commit e4de4cd into kubernetes-sigs:main Aug 21, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] Helm chart missing PodDisruptionBudget (PDB) for high availability

5 participants