LWKD: Week Ending February 25, 2024
Last Week in Kubernetes Development
Week ending 2024-02-25
Developer News
There's an updated Kubernetes v1.30 State of the Release and Important Deadlines
Contributor Summit Paris schedule is live. If you have a new topic, time to suggest an unconference item.
Release Schedule
Next Deadline: CODE Freeze Begins, March 5th
Kubernetes v1.30.0-alpha.3 is live!
The Code Freeze milestone for the Kubernetes 1.30 release cycle is approaching rapidly. Have all your necessary changes been submitted? Following this, there's the usual release countdown: submit documentation PRs by February 26th, publish deprecation blog on Thursday, and conclude testing freeze and documentation finalization next week. Once we enter Code Freeze, please promptly address any test failures. Questions can be answered on #SIG-release.
Featured PRs
#122589: promote contextual logging to beta, enabled by default
Adding contextual logging to Kubernetes has been a long, long road. Removing the tree-wide dependency on klog required refactoring code all over Kubernetes, which took the time of hundreds of contributors. This PR enables contextual logging by default since many components and clients now support it.
#123157: Add SELinuxMount feature gate
Use this one neat SELinux trick for faster relabeling of volumes! Users with SELinux=enforcing
currently suffer latency due to needing to relabel all content on volume so that pods can access it. SELinuxMount instead mounts the volume using -o context=XYZ
which skips the recursive walk. Currently alpha; needs tests, disabled by default.
KEP of the Week
KEP-4176: A new static policy to prefer allocating cores from different CPUs on the same socket
This KEP proposes a new CPU Manager Static Policy Option called distribute-cpus-across-cores
to prefer allocating CPUs from different physical cores on the same socket. This will be similar to the distribute-cpus-across-numa
policy option, but it proposes to spread CPU allocations instead of packing them together. Such a policy is useful if an application wants to avoid being a noisy neighbor with itself, but still want to take advantage of the L2 cache.
Other Merges
kubeadm certs check-expiration
JSON and YAML support- Improved skip node search in specific cases for scheduler performance
- kube_codegen
`--plural-exceptions
and improved API type detection - Fix for
kubeadm upgrade
mounting a new device. - Flag to disable force detach behaviour in kube-controller-manager
- Added the MutatingAdmissionPolicy flag to enable mutation policy in admission chain
- kubelet adds an image field to the image_garbage_collected_total metric
Promotions
Version Updates
Subprojects and Dependency Updates
- prometheus to 2.50.0: automated memory limit handling, multiple PromQL improvements
- cri-o to v1.29.2: Enable automatic OpenTelemetry instrumentation of ttrpc calls to NRI plugins; Also released v1.28.4 and v1.27.4