Skip to content

Enabling In-Place Updates of Pod Resources

This is a short guide covering the adoption mechanism of in-place Pod resource updates in Gardener Vertical Pod Autoscaler deployments.

Compatibility

Refer to the in-place resource updates guide for details on Kubernetes clusters compatibility, Vertical Pod Autoscaler feature gate definition and availability.

Configuration

Gardener provides a dedicated resource manager webhook capable of mutating VerticalPodAutoscaler resources, configured with update mode Auto or Recreate, with the in-place updates enabling InPlaceOrRecreate. Available for deployment with both gardenlet and gardener operator, the mutating webhook can be activated with the following feature gate, listed within the respective component manifest. Refer to the Gardener feature gates page for additional details:

VPAInPlaceUpdates

To keep a VerticalPodAutoscaler resource out of the mutating webhook scope, add the following skip label, indicating that the resource should preserve its current configuration and not get updated:

vpa-in-place-updates.resources.gardener.cloud/skip

gardenlet

To enable the mutating resource manager webhook, the VPAInPlaceUpdates feature gate must be set to true:

yaml
featureGates:
  VPAInPlaceUpdates: true

Refer to the gardenlet component configuration manifest for an overview.

Shoot

When deployed in a Shoot cluster, the mutating webhook targets vertical pod autoscaler resources inside the kube-system and kubernetes-dashboard namespaces.

To make use of the mutating resource manager webhook, the Shoot's Vertical Pod Autoscaler deployment must have the InPlaceOrRecreate feature gate enabled. Follow the in-place resource updates guide for more details about the Vertical Pod Autoscaler components setup.

Seed

When deployed in a Seed cluster, the mutating webhook targets vertical pod autoscaler resources outside the kube-system and kubernetes-dashboard namespaces.

To make use of the mutating resource manager webhook, the Seed's Vertical Pod Autoscaler deployment must have the InPlaceOrRecreate feature gate enabled. Follow the in-place resource updates guide for more details about the Vertical Pod Autoscaler components setup.

Gardener Operator

To enable the mutating resource manager webhook, the VPAInPlaceUpdates feature gate must be set to true:

yaml
featureGates:
  VPAInPlaceUpdates: true

Refer to the operator component configuration manifest for an overview.

References

EU and German government funding logos

Funded by the European Union – NextGenerationEU.

The views and opinions expressed are solely those of the author(s) and do not necessarily reflect the views of the European Union or the European Commission. Neither the European Union nor the European Commission can be held responsible for them.