Shoot Kubernetes Minor Version Upgrades ​
Breaking changes may be introduced with new Kubernetes versions. This documentation describes the Gardener specific differences and requirements for upgrading to a supported Kubernetes version. For Kubernetes specific upgrade notes the upstream Kubernetes release notes, changelogs and release blogs should be considered before upgrade.
Upgrading to Kubernetes v1.35 ​
- The
Shoot's.spec.kubernetes.kubeAPIServer.enableAnonymousAuthenticationfield is forbidden. Gardener continues to disable anonymous authentication by default. If you need to configure anonymous authentication, use Structured Authentication Configuration with the anonymous authenticator instead. - The
Shoot's.spec.addonsfield is forbidden. The retirement of the previously contained components Kubernetes Dashboard and Ingress NGINX Controller, requires owners to remove any existing addon configurations from theShoot. - The
Shoot's.spec.kubernetes.kubeAPIServer.watchCacheSizes.defaultfield is forbidden. Watch cache sizes are automatically sized by Kubernetes. - The
Shoot's.spec.kubernetes.kubeScheduler.kubeMaxPDVolsfield is forbidden. The maximum number of attachable volumes is maintained by the respective CSI plugin.
Upgrading to Kubernetes v1.34 ​
- The
Shoot's.spec.cloudProfileNamefield is forbidden.Shootowners must migrate theirCloudProfilereference to the newspec.cloudProfile.namefield. - The
Shoot's.spec.secretBindingNamefield is forbidden.Shootowners must migrate theirSecretBindingreferences toCredentialsBindingand use the new.spec.credentialsBindingNamefield. For more information, see the SecretBinding to CredentialsBinding migration guide. - The
Shoot's operation annotationsrotate-etcd-encryption-key-(start|complete)are forbidden.Shootowners must use therotate-etcd-encryption-keyoperation annotation instead, which performs a complete etcd encryption key rotation.Shootclusters with an ongoing etcd encryption key rotation that is currently in thePreparedphase will move forward to theCompletingphase.
Upgrading to Kubernetes v1.33 ​
- A new
deny-allNetworkPolicyis deployed into thekube-systemnamespace of theShootcluster.Shootowners that run workloads in thekube-systemnamespace are required to explicitly allow their expectedIngressandEgresstraffic inkube-systemviaNetworkPolicies. - The
Shoot's.spec.kubernetes.kubeControllerManager.podEvictionTimeoutfield is forbidden.Shootowners should use the.spec.kubernetes.kubeAPIServer.defaultNotReadyTolerationSecondsand.spec.kubernetes.kubeAPIServer.defaultUnreachableTolerationSecondsfields. - The
Shoot's.spec.kubernetes.clusterAutoscaler.maxEmptyBulkDeletefield is forbidden.Shootowners should use the.spec.kubernetes.clusterAutoscaler.maxScaleDownParallelismfield. - The
Shoot's.spec.cloudProfileNamefield is deprecated.Shootowners should migrate theirCloudProfilereference to the new.spec.cloudProfile.namefield.
Upgrading to Kubernetes v1.32 ​
TIP
It is recommended to migrate from OIDC to StructuredAuthentication before updating to Kubernetes v1.32 in order to avoid not being able to revert the change.
- The
Shoot'sspec.kubernetes.kubeAPIServer.oidcConfigfield is forbidden.Shootowners that have usedoidcConfigor a(Cluster)OpenIDConnectPresetresource are recommended to migrate toStructuredAuthentication. More information aboutStructuredAuthenticationcan be found in the Structured Authentication documentation.
Upgrading to Kubernetes v1.31 ​
- The
Shoot'sspec.kubernetes.kubeAPIServer.oidcConfig.clientAuthenticationfield is forbidden. - The
Shoot's.spec.kubernetes.kubelet.systemReservedand.spec.provider.workers[].kubernetes.kubelet.systemReservedfields are forbidden.Shootowners should use the.spec.kubernetes.kubelet.kubeReservedand.spec.provider.workers[].kubernetes.kubelet.kubeReservedfields.