The Technical Oversight Committee (TOC) for Kubernetes tomorrow plans to release version 1.19 of the platform that, in addition to adding debugging and storage management tools, brings closure to some capabilities that have been under development for a long time.
Overall, Kubernetes 1.19 adds 33 enhancements, including 12 moving to stable, 18 that are in beta and 13 new capabilities in alpha. Major changes to existing capabilities include a new endpoint application programming interface (API) that will gradually replace the existing API and an improved node topology manager.
Taylor Dolezal, release lead for Kubernetes 1.19 and a senior systems engineer at The Walt Disney Studios, says this latest release took a little longer than previous releases mainly because of the disruptions brought on by the COVID-19 pandemic and Black Lives Matter protests. With members of the development team working from home, it took a while to adjust, he notes.
The TOC is also making an adjustment to how long support for this release will be provided. Version 1.19 will be actively supported for one year, which compares to nine months for previous releases. The TOC also has a separate sub-committee that is actively looking into how to create a Long Term Release (LTR) for enterprise IT organizations that typically are reluctant to update platforms frequently, says Dolezal.
Version 1.19 of Kubernetes also makes generally available a seccomp security facility in the Linux kernel for restricting system calls that applications can make. Seccomp was first introduced as a Kubernetes feature in alpha back in version 1.3.
Similarly, an ingress controller that was introduced in version 1.1 of Kubernetes has officially graduated with some final modifications.
The latest release also more deeply supports TLS 1.3 certificates as well as providing the ability to store immutable secrets in a Kubernetes cluster.
In terms of alpha features, there is now an application programming interface (API) for the Container Storage Interface (CSI) driver that can be used to discover available storage capacity from the Kubernetes scheduler. That capability will enable IT teams to be aware of limited storage resources when provisioning additional pods. This feature is described as a stepping stone for adding support for dynamic provisioning for local volumes and other volume types that are more capacity-constrained.
Another alpha feature allows any existing storage driver that supports dynamic provisioning to be used as an ephemeral volume when bound to a pod, while a separate alpha feature enables CSI drivers to share abnormal volume conditions from the underlying storage systems with Kubernetes so they can be reported as events.
There’s also a kubectl debug command in alpha that can be used to create and run a new pod that runs in the host OS namespaces. The command can be used to more easily troubleshoot nodes by being able to inspect a running pod without restarting it and without having to enter a container itself. That approach eliminates the need to rely on the SSH protocol to debug a node.
Kubernetes 1.19 also adds a new log message structure for the klog library to provide a more a structured interface for formatting log messages.
A recent report shared by the Cloud Native Computing Foundation (CNCF) estimates there are now 2.7 million developers employing Kubernetes. At the current rate of growth, that number should easily exceed 3 million developers. The next big challenge will be finding a way to automate the management of the fleets of Kubernetes clusters developers soon will be employing.