LWKD: Week Ending May 26, 2024
Last Week In Kubernetes Development
Week of 2024-05-26
Developer News
Keith Mattix has stepped down from Gateway API Mesh and nominated Mike Norris.
Are you a Party Person? Do you enjoy arranging events so that your friends can have a good time? Will you be at KubeCon NA 2024? If so, the Summit Team could use your help as the Lead for the Contributor Social. Please add yourself to the issue if interested.
Release Schedule
Next Deadline: Production Readiness Freeze, June 6th, 2024
The v1.31 release is in full swing now and the enhancements collection is still going on. We currently have 43 enhancements opted in for the release, out of which 20 are in alpha, 9 graduating to beta and 10 graduating to GA. If you are planning to submit a KEP in the v1.31 release, make sure to get a lead-opted-in label for your enhancement from the respective SIG leads and make sure to get your PRR reviews done in time. If you have any questions, feel free to reach out in the #release-enhancements channel in Slack.
KEP of the Week
4222: CBOR Serializer
The Kubernetes API has always supported JSON, but it's "talky" and requires a lot of CPU to serialize and deserialize large, complex objects, so a few years ago we added gRPC support. Binary serialization using gRPC requires a fraction of the CPU time, but requires code generation at build time. This left CRDs in the slow lane. Enter CBOR (Concise Binary Object Representation), an IETF standard, which lets CRDs retain their flexibility while gaining 2X to 8X serialization speed.
CBOR support was proposed by Ben Luddy in 2019. It was planned as Alpha for 1.30, but is still WIP; if you use a lot of CRDs, consider helping Luddy close bugs and write docs.
Other Merges
- Better validation for list parameters in client-go
- More accurate timer on progress notifications
- Just for consistency, have a
-v
in the Windows pause binary - Features can be set directly via the
Set
method in client-go, taking precedence over ENV - All waitingPods in scheduler now can be obtained from any profiles
- CEL default compatibility environment version to updated to 1.30
- Improved CBOR Decoding for Enhanced UnstructuredList Consistency in Kubernetes.
- Fixed Azure Disk PV Topology Label Issueswith External Cloud Provider.
checkWatchListConsistencyIfRequested
method in client-go is generic & reusable- Pod spec field changes won't restart containers
- tmpfs volumes support, default to noswap
Deprecated
- Deprecated the RootlessControlPlane feature gate in Kubedam
- The
horizontal-pod-autoscaler-upscale-delay
andhorizontal-pod-autoscaler-downscale-delay
flags have been removed
Version Updates
- Updated the Kubernetes repository to use
registry.k8s.io/pause:3.10
- Node Feature Discovery to 0.16
Subprojects and Dependency Updates
- containerd to v1.6.32: handle unsupported config versions
- cloud-provider-vsphere to v1.30.1: fix virtual machine service can't be created
- kubebuilder to v4.0.0: all deprecated features were removed from the project, also released v3.15.1
- kubespray to v2.25.0: add Calico v3.27.3 and make it default
- kubernetes python-client v31.1.0