Changelog for Kubernetes 1.24
Versions
- Kubernetes 1.24.6
- Nginx-ingress: 1.4.0
- Certmanager: 1.10.0
Major changes
- The
node-role.kubernetes.io/master=
label is removed from all control plane nodes, instead use thenode-role.kubernetes.io/control-plane=
label. - The taint
node-role.kubernetes.io/control-plane:NoSchedule
has been added to all control plane nodes.
Deprecations
Note that all deprecations will be removed in a future Kubernetes release. This does not mean you need to perform any changes right now. However, we recommend you to start migrating your applications in order to avoid issues in future releases.
- In Kubernetes 1.25 the storage class
4k
will be removed from all clusters. This only affects clusters created prior to Kubernetes 1.23. Instead use the v1-dynamic-40 which is the default storage class since Kubernetes 1.23.
APIs removed in Kubernetes 1.25
More details can be found in Kubernetes official documentation.
- Pod Security Policies will be removed in Kubernetes 1.25
- CronJob
batch/v1beta1
. The new APIbatch/v1
was implemented in Kubernetes 1.21 (this is a drop in replacement) - EndpointSlice
discovery.k8s.io/v1beta1
. The new APIdiscovery.k8s.io/v1
was implemented in Kubernetes 1.21 - Event
events.k8s.io/v1beta1
. The new APIevents.k8s.io/v1
was implemented in Kubernetes 1.19 - PodDisruptionBudget
policy/v1beta1
. The new APIpolicy/v1
was implemented in Kubernetes 1.21 - RuntimeClass
node.k8s.io/v1beta1
. The new APInode.k8s.io/v1
was implemented in Kubernetes 1.20
APIs removed in Kubernetes 1.26
More details can be found in Kubernetes official documentation.
- Flow control resources
flowcontrol.apiserver.k8s.io/v1beta1
. The replacementflowcontrol.apiserver.k8s.io/v1beta2
was implemented in Kubernetes 1.23 - HorizontalPodAutoscaler
autoscaling/v2beta2
. The replacementautoscaling/v2
was introduced in Kubernetes 1.23
Other noteworthy deprecations
Kubernetes beta topology labels on nodes are deprecated and will be removed in a future release. You can follow the list below to see which labels are being replaced:
Please note: The following changes does not have a set Kubernetes release. However, the replacement labels are already implemented.
beta.kubernetes.io/instance-type
->node.kubernetes.io/instance-type
beta.kubernetes.io/arch
->kubernetes.io/arch
beta.kubernetes.io/os
->kubernetes.io/os
failure-domain.beta.kubernetes.io/region
->topology.kubernetes.io/region
failure-domain.beta.kubernetes.io/zone
->topology.kubernetes.io/zone
Is downtime expected
The upgrade drains (move all workload from) one node at the time, patches that node and brings it back in the cluster. First after all deployments and statefulsets are running again we will continue on with the next node.
Known issues
Custom node taints and labels lost during upgrade
All custom taints and labels on worker and control-plane nodes are lost during upgrade.
Custom changes to non -customer security groups will be lost
All changes to security groups not suffixed with “-customer” will be lost during the upgrade.
Snapshots are not working
There is currently a limitation in the snapshot controller not making it topology aware.