The Kubernetes release team has announced its latest release 1.21, with the CronJob resource reaching general availability (GA). The team has also substantially improved the performance of CronJobs since Kubernetes v1.19, by implementing a new controller.
The release consists of 49 enhancements: 15 enhancements have graduated to stable, 15 enhancements are moving to beta, and 19 enhancements are entering alpha.
CronJobs (previously ScheduledJobs), meant for performing regular scheduled actions such as backups, report generation, and so on, has been a beta feature since Kubernetes 1.8! With 1.21, we get to finally see this widely used API graduate to stable.
Immutable Secrets and ConfigMaps add a new field to those resource types which will reject changes to those objects if set. Secrets and ConfigMaps by default are mutable which is beneficial for pods that are able to consume changes. Mutating Secrets and ConfigMaps can also cause problems if a bad configuration is pushed for pods that use them. This feature has graduated to stable in Kubernetes 1.21.
Moreover, dual-stack support in Kubernetes means that pods, services, and nodes can get IPv4 addresses and IPv6 addresses. In Kubernetes 1.21 dual-stack networking has graduated from alpha to beta, and is now enabled by default.
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. PodSecurityPolicy, previously in the beta stage, is planned for removal in Kubernetes 1.25.
Kubernetes 1.21 is available for download on GitHub.