The Technical Oversight Committee (TOC) for Kubernetes has released an update codenamed Penelope. This update improves dynamic resource allocation (DRA) and also eliminates the previous method used for scaling clusters.
Frederico Muñoz, release leader of Kubernetes 1.32 and cloud architect at SAS Institute, explained that the DRA functionality, now available in beta, makes it easier to dynamically scale workloads. This can now be done without having to restart Kubernetes clusters. It also eliminates the need to use a third-party plug-in for that process. DRA is now a native Kubernetes feature.
Specialized hardware
This capability, according to Muñoz, will prove especially crucial as more specialized hardware, such as graphics processors (GPUs), field-programmable gate arrays (FPGAs) and network adapters, are added to clusters.
The goal is to replace the previous DRA approach introduced in Kubernetes 1.26 with a more efficient vertical and horizontal scaling solution. In total, this release contains 44 enhancements, of which 13 have been declared stable, 12 have entered beta, and 19 are being tested as alpha functionalities.
New stable features
Features that are now stable enough to use in production environments include support for field selectors for client resources that now mirror the functionality of other Kubernetes objects; an ability to dynamically increase memory-supported volumes based on Pod resource limits; inclusion of the node name in the service account token; support for multiple application programming interface (API) server authorizations; and an ability to automatically delete PersistentVolumeClaims (PVCs) created by StatefulSets.
Beta Features
Existing features now available in the beta version include an API for managing task synchronization; an ability to specify which endpoints are allowed to make anonymous requests; a feature that enables more accurate queuing using cube-scheduler; easier recovery after a failed volume expansion; the addition of a VolumeGroupSnapshot API; and the ability to use label and field selectors to authorize access to nodes and pods.
Alpha features in testing phase
New alpha features being tested include an asynchronous preemption capability for Kubernetes Scheduler; support for muting access to make defining more detailed policies easier using the Common Expression Language (CEL); the ability to set resource requests and limits at the pod level; an ability to set a zero second sleep time for the PreStop lifecycle hook in Kubernetes; a standard interface for network data; tools to better debug endpoints; and more elegant shutdowns of the Kubernetes cluster running on Windows servers.
Limited number of restarts
Finally, the API version of FlowSchema and PriorityLevelConfiguration flowcontrol.apiserver.k8s.io/v1beta3 has been removed in favor of a new API implementation. Moreover, it is now possible to restart the kubelet when the status check fails, thanks to a system watchdog function. At the same time, the maximum number of restarts within a certain time period is limited.
Each organization will have to decide for itself when an upgrade to Kubernetes 1.32 makes sense. Some may wait until their Kubernetes distribution provider adds support.