Skip to content

Gardener

Gardener manages the lifecycle of Kubernetes clusters in CobaltCore. It is responsible for creating, upgrading, scaling, and deleting clusters - what Gardener calls "Shoot" clusters.

In CobaltCore, Gardener provisions the Kubernetes clusters that the hypervisor operators, OpenStack services, and storage components run on.

Key concepts

  • Garden cluster - the control plane where Gardener itself runs and where you create Shoot resources
  • Shoot cluster - a Kubernetes cluster managed by Gardener; this is where CobaltCore workloads run
  • Machine Controller Manager (MCM) - manages the underlying nodes (machines) of a Shoot cluster

Common operations

Restart a reconciliation

If a Shoot is stuck or needs to re-apply its desired state, trigger a retry:

bash
kubectl annotate shoot <shoot-name> -n <project-namespace> gardener.cloud/operation=retry

Reprovision a node

To force a node to be deleted and reprovisioned by the Machine Controller Manager:

bash
kubectl annotate node <node-name> node.machine.sapcloud.io/trigger-deletion-by-mcm=true

MCM will drain the node, delete it, and provision a replacement. See the MCM FAQ for additional node deletion options.

Trigger other Shoot operations

Gardener supports several operations via the gardener.cloud/operation annotation:

ValueEffect
retryRetry a failed or stuck reconciliation
reconcileForce a full reconciliation
rotate-credentials-completeComplete a credentials rotation

See the Gardener Shoot operations docs for the full list.

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.