Kubernetes 1.21 is the first refresh of the Kubernetes release for 2021. This release consists of 51 enhancements, which is the the largest number of improvements in the recent times.
Kubernetes, or k8s, is a powerful container management tool that automates the deployment and management of containers. It is the next big wave in cloud computing and eliminates many of the manual processes involved in deploying and scaling containerized applications.
Kubernetes 1.21 comes packed with novelties. So, let’s take a quick look at the more significant changes in this version.
Kubernetes 1.21 major changes
CronJobs graduate to stable
Kubernetes CronJobs (previously ScheduledJobs) has been a beta feature since Kubernetes 1.8. CronJobs in a Kubernetes cluster runs periodic tasks, such as backups, report generation, and so on, similar to cron on UNIX-like systems. In Kubernetes v1.21, the CronJob resource reached general availability (GA) and finally this widely used API becomes stable.
Immutable Secrets and ConfigMaps
Secrets and ConfigMaps by default are mutable which is beneficial for pods that are able to consume changes.
Immutable Secrets and ConfigMaps add a new field to those resource types that will reject changes to those objects if set. By marking Secrets and ConfigMaps as immutable you can be sure your application configuration won’t change. If you want to make changes you’ll need to create a new, uniquly named Secret or ConfigMap and deploy a new pod to consume that resource.
Graceful node shutdown
Graceful node shutdown become to beta with this release. This is a hugely beneficial feature that allows the kubelet to be aware of node shutdown, and gracefully terminate pods that are scheduled to that node.
Currently, when a node shuts down, pods do not follow the expected termination lifecycle and are not shut down gracefully. This can introduce problems with a lot of different workloads.
PersistentVolume health monitor
Persistent Volumes (PV) are commonly used in applications to get local, file-based storage. They can be used in many different ways and help users migrate applications without needing to re-write storage backends.
Kubernetes 1.21 has a new alpha feature which allows PVs to be monitored for health of the volume and marked accordingly if the volume becomes unhealthy. Workloads will be able to react to the health state to protect data from being written or read from a volume that is unhealthy.
In Kubernetes 1.21, PodSecurityPolicy is deprecated. As with all Kubernetes feature deprecations, PodSecurityPolicy will continue to be available and fully-functional for several more releases.
In addition to, PodSecurityPolicy is planned for removal in Kubernetes 1.25.
Of course, there are many more changes. The above only scratch the surface of what’s Kubernetes 1.21 brings us as innovations. You can check out the full details of the 1.21 release in the release notes.