Skip to content

feat(blog): Add new blog featuring adoption of in-place Pod resource updates#976

Merged
gardener-prow[bot] merged 14 commits into
gardener:masterfrom
vitanovs:feat/doc-adoption-of-in-place-pod-resource-updates
Jun 10, 2026
Merged

feat(blog): Add new blog featuring adoption of in-place Pod resource updates#976
gardener-prow[bot] merged 14 commits into
gardener:masterfrom
vitanovs:feat/doc-adoption-of-in-place-pod-resource-updates

Conversation

@vitanovs

Copy link
Copy Markdown
Member

How to categorize this PR?

/kind enhancement

What this PR does / why we need it:

This PR features a new brief blog post about the adoption of in-place Pod resource updates in Gardener.

Which issue(s) this PR fixes:

Part of gardener/gardener#12955

vitanovs added 2 commits May 18, 2026 11:41
… updates

This commit features a blog post about the adoption of in-place Pod
resource updates in Gardener.
… section

This commit updates the Vertical Pod Autoscaler section with few wording
improvements.

Also:
- Fix graph edges titles to reflect logic operation rather than
  technical endpoint/function calls.
- Rewording in the in-place updates benefits section.
@netlify

netlify Bot commented May 18, 2026

Copy link
Copy Markdown

Deploy Preview for gardener-docs ready!

Name Link
🔨 Latest commit 9f65958
🔍 Latest deploy log https://app.netlify.com/projects/gardener-docs/deploys/6a29254622d91d000830ec6a
😎 Deploy Preview https://deploy-preview-976--gardener-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

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

@gardener-prow gardener-prow Bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/enhancement Enhancement, improvement, extension labels May 18, 2026
@coderabbitai

coderabbitai Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (2)
  • website/blog/2026/05/05-19-in-place-pod-resource-updates.md is excluded by !website/**
  • website/blog/2026/05/images/in-place-pod-resource-updates/vpa-updater-dashboard-overview.png is excluded by !**/*.png, !website/**

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: e1fb6953-0e71-4eaf-b8cc-4d01c6d5e3cd

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gardener-prow gardener-prow Bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label May 18, 2026
@vitanovs vitanovs changed the title Feat/doc adoption of in place pod resource updates feat(blog): Add new blog featuring adoption of in-place Pod resource updates May 18, 2026
@gardener-prow gardener-prow Bot added the cla: yes Indicates the PR's author has signed the cla-assistant.io CLA. label May 18, 2026
@vitanovs vitanovs marked this pull request as ready for review May 18, 2026 11:41
@vitanovs vitanovs requested a review from a team as a code owner May 18, 2026 11:41
@gardener-prow gardener-prow Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 18, 2026

@n-boshnakov n-boshnakov 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.

Thank you for the blog, @vitanovs! I only have a minor suggestion to leave.

Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Co-authored-by: Nikolay Boshnakov <nikolay.boshnakov@sap.com>
@ialidzhikov

Copy link
Copy Markdown
Member

/assign

@ialidzhikov ialidzhikov left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for taking the time write a blog pod about the biggest achievement in VPA since its introduction - in-place updates! 🎉

Suggestions inline ⬇️


![VPA Updater Dashboard Overview](./images/in-place-pod-resource-updates/vpa-updater-dashboard-overview.png)

With sections covering `VerticalPodAutoscaler` resource overviews (segregated by _update mode_) and panels displaying success rates per resource, the new dashboard can be used for both monitoring and generating status reports on applied resource recommendations.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We could add a section with the achievements on our side. We together checked with you that in dev environments 90% of the Pod evictions were replaced with in-place updates.
We should share this success story with concrete numbers and screenshots from the monitoring dashboard. Maybe the number is even bigger now.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I suggest adding a sentence about it.

Concrete suggestion:

diff --git a/website/blog/2026/05/05-19-in-place-pod-resource-updates.md b/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
index 43d9e5b7..7dcde589 100644
--- a/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
+++ b/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
@@ -83,6 +83,8 @@ An identical situation can be witnessed in the Gardener _monitoring_ and _loggin
 Another good example of a Kubernetes flaw that could have been resolved by using _in-place_ resources _update mode_ has to do with the `kube-scheduler` and its prior behavior of getting `Pod`s, with volumes, scheduled on `Node`s that have already reached their volume attachment limit. Documented in a dedicated Kubernetes [issue](https://github.com/kubernetes/kubernetes/issues/126921), this problem had appeared when the CSI `Node` plugin `Pod` gets restarted during _eviction_, exactly how VPA was configured to do at the time of reporting it.
 During the gap between the deletion and the new `Pod` creation, the `CSINode` object temporarily has an empty drivers section. The `kube-scheduler`'s `NodeVolumeLimits` plugin treated this missing information as "no limit" and incorrectly scheduled volume-backed pods to fully-saturated `Node`s.
 
+The impact of adopting _in-place_ resource updates is best illustrated by the numbers: enabling the feature on the `Seed` clusters and the runtime cluster results in roughly 98% of the `Pod` resource updates being applied _in-place_, drastically reducing the amount of disruptive `Pod` recreations across the Gardener landscape. The exact ratio may vary from one Seed or runtime cluster to another, depending on its configuration.
+
 ## Monitoring
 
 Performing configuration migrations can become an exhausting task without a convenient dashboard to evaluate the process state. For this reason, as part of the effort to support _in-place_ Pod resource updates, we introduced a brand new _dashboard_ for the `vpa-updater` component.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Thanks for the suggestion, pushed it with the latest commits.

Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
vitanovs and others added 9 commits May 20, 2026 12:15
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>

@ialidzhikov ialidzhikov left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Final 2 suggestions, rest lgtm

Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md Outdated
Comment thread website/blog/2026/05/05-19-in-place-pod-resource-updates.md

![VPA Updater Dashboard Overview](./images/in-place-pod-resource-updates/vpa-updater-dashboard-overview.png)

With sections covering `VerticalPodAutoscaler` resource overviews (segregated by _update mode_) and panels displaying success rates per resource, the new dashboard can be used for both monitoring and generating status reports on applied resource recommendations.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I suggest adding a sentence about it.

Concrete suggestion:

diff --git a/website/blog/2026/05/05-19-in-place-pod-resource-updates.md b/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
index 43d9e5b7..7dcde589 100644
--- a/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
+++ b/website/blog/2026/05/05-19-in-place-pod-resource-updates.md
@@ -83,6 +83,8 @@ An identical situation can be witnessed in the Gardener _monitoring_ and _loggin
 Another good example of a Kubernetes flaw that could have been resolved by using _in-place_ resources _update mode_ has to do with the `kube-scheduler` and its prior behavior of getting `Pod`s, with volumes, scheduled on `Node`s that have already reached their volume attachment limit. Documented in a dedicated Kubernetes [issue](https://github.com/kubernetes/kubernetes/issues/126921), this problem had appeared when the CSI `Node` plugin `Pod` gets restarted during _eviction_, exactly how VPA was configured to do at the time of reporting it.
 During the gap between the deletion and the new `Pod` creation, the `CSINode` object temporarily has an empty drivers section. The `kube-scheduler`'s `NodeVolumeLimits` plugin treated this missing information as "no limit" and incorrectly scheduled volume-backed pods to fully-saturated `Node`s.
 
+The impact of adopting _in-place_ resource updates is best illustrated by the numbers: enabling the feature on the `Seed` clusters and the runtime cluster results in roughly 98% of the `Pod` resource updates being applied _in-place_, drastically reducing the amount of disruptive `Pod` recreations across the Gardener landscape. The exact ratio may vary from one Seed or runtime cluster to another, depending on its configuration.
+
 ## Monitoring
 
 Performing configuration migrations can become an exhausting task without a convenient dashboard to evaluate the process state. For this reason, as part of the effort to support _in-place_ Pod resource updates, we introduced a brand new _dashboard_ for the `vpa-updater` component.

vitanovs and others added 2 commits June 10, 2026 11:40
Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>
…ce updated

Co-authored-by: Ismail Alidzhikov <9372594+ialidzhikov@users.noreply.github.com>

@ialidzhikov ialidzhikov left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

/lgtm

@gardener-prow

gardener-prow Bot commented Jun 10, 2026

Copy link
Copy Markdown

@ialidzhikov: adding LGTM is restricted to approvers and reviewers in OWNERS files.

Details

In response to this:

/lgtm

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.

@n-boshnakov n-boshnakov 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.

/lgtm

@gardener-prow gardener-prow Bot added the lgtm Indicates that a PR is ready to be merged. label Jun 10, 2026
@gardener-prow

gardener-prow Bot commented Jun 10, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ialidzhikov, n-boshnakov

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

@gardener-prow

gardener-prow Bot commented Jun 10, 2026

Copy link
Copy Markdown

LGTM label has been added.

DetailsGit tree hash: 8942ac00c0babc57eb2521760652023a25d046d3

@gardener-prow gardener-prow Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 10, 2026
@gardener-prow gardener-prow Bot merged commit c4f0287 into gardener:master Jun 10, 2026
8 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. cla: yes Indicates the PR's author has signed the cla-assistant.io CLA. kind/enhancement Enhancement, improvement, extension lgtm Indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants