CHANGELOG/CHANGELOG-1.37.md
| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | f8837cef9d21d5ab3260cfb0f8ec3b2d856bcebcbbcde2de45547ef4f34ad999371a13cd4f1356c8154f01ccee644c762f25286690cab64b9ca099c2fd055ccf |
| kubernetes-src.tar.gz | 31ed9c00dd56f4e3d11a8a6ad8eb09c7224eef594d9bca4d5a7e8efde612cafeaeb185734f92d0278e5cb39cc16ecef3b1811857c4d23f0bd10d1fa0e25850a6 |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | d48f90d0c20cddd70627939a74cf0d68e6abb6a77186a1d754ec18c46224859d3213f3e1a89ecece4d5854df2102307d04a4e47694c79e7f63a223982949933b |
| kubernetes-client-darwin-arm64.tar.gz | 97d6ce20c2210c19645eb5757f9ce98d02be82eb4bb9148d6595baaf912cef68ac4610b0478d0feeaa373fc954ab41a39e8e096cf597282c026ac24a2cc3d7d0 |
| kubernetes-client-linux-386.tar.gz | b5db728a32e4c8033b078b4aadf407b674c5be71dac2d600f58c756d6cfb872c08933dafbeab80559304c757b36447d12c33311a589c4ab9d62e69ad3f665641 |
| kubernetes-client-linux-amd64.tar.gz | c8049c73c840dd4c4c1be9df5b7e6cb2ad44c83fbf196f14138f0a33729fa75bf045d072b2a1d6ab4a942515b1a51cdda75e4d1e6842f5675d70253479607aec |
| kubernetes-client-linux-arm.tar.gz | 52fd26bd88d43fc6b2db8369acdc4ee05222189a820015bfa3c134e00df742e1d38880f074b9b3b6a7e63cf44d77987376dbbbfaf37e3535ae649014806c04bf |
| kubernetes-client-linux-arm64.tar.gz | 17cad3988014cdfee6ded133d7ed8e67b7b9ee04abd765f49d7252355d55916a11502be1c179d2826e120ff4881633c62e22074564047d1965ae3e969ab373c9 |
| kubernetes-client-linux-ppc64le.tar.gz | 0103bbe685d395caff22ab01bac99fd3576d412bc902a30bbbe88211a5d932d1b499da9be5d2fc9f307e9140bf768a4b791cd880340003839df7cd85026f58a2 |
| kubernetes-client-linux-s390x.tar.gz | a12541887ae73ef59fcb0ea389d0ee48d8ff227d38ed86cc74f187ccabf2316eb5cf75bbbd32f2f996766b116b45289695340a0ec0566b533e187bb47bd9426c |
| kubernetes-client-windows-386.tar.gz | 0d1a09003128788d2a3903aed400a572037f54c749ead805ab8539a84b9f7d7c694009ec7a79d5438bbe809ab67e183880b2a1477c88d8b02cc244bad0c1edea |
| kubernetes-client-windows-amd64.tar.gz | 534fbed232ac50f08e7db88478160f9395f1c563b64b2627edf13e8ce3d771140cac66de65b1405a7f5b08a414f8d8dbb0a40d2873174e70b3ae3b99bf212528 |
| kubernetes-client-windows-arm64.tar.gz | a5be672a45d7f9d8f32f81d23ee1a62e637b8f7f4942d3ca655b5fa6ae0c6a079f3bc883b7354e4765469a196575b0cbb447e71a0898b8c3f43f3f7e0cb2baf4 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | 5ad130a94876651560e47d2788e0b0bc5920c6cd33136398548537bad822a69801217141e2258058ce254a3eeaea5c62d3b013c85d651619871dda0efa1f592b |
| kubernetes-server-linux-arm64.tar.gz | 25b0cd3910e38e441053766a1f1cbbfcc8703e676bc59dcff2511f67f3610e2ccfe3518efe34c59413159c15d4afef42e464f552e358a4601e751478eb8f9da2 |
| kubernetes-server-linux-ppc64le.tar.gz | b1ce2ec1a116dc4afeea421ddb432a7d3110b71f799011ac71f8755ed637bb79c77362b3cc96890a08a212dcb20a002fed22c7507d4c5fc2a4a01efd63e8b729 |
| kubernetes-server-linux-s390x.tar.gz | 45380c00def80c29c95bfa71812671779ca2d5961a2c88cd1c1f3c0479749e2c413ed52e45a67422ab420ef3c6f623eab906c83c7d0b8d4355c6d36b7e1609ca |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | c00d86a7f17a2ba98387f807c99659839a36a0f1423f4daeadde3793ee898502018270782c3d9378c858af365ed850ba294643faf79faffe48785d6148e02369 |
| kubernetes-node-linux-arm64.tar.gz | 66c6e2a2ec6a33fae491e90985969cecdc22bf9ea8e12fe1cf268e02badbdda2544b59c6436c88cd2ceff0964983cd81828c39805cb5a988a9f51735d45fe559 |
| kubernetes-node-linux-ppc64le.tar.gz | 5af32217dd92c641cb9995de8c617b6799f12c0f0dc8e1d4429ec7e03d71a213ee862803c777abb7a97fbb25506377859b91c2ab07e12c601bd07aae6369f34f |
| kubernetes-node-linux-s390x.tar.gz | 8c01507e7bda46538729013dc1878d18e2f77706067eab2dfb8300be50142a8b8b1bb6ce5dee66104e4987946a17d5d4e00f1d2351d891612c0ebb80d0554649 |
| kubernetes-node-windows-amd64.tar.gz | 9145c2b746b052e452b4c685bb6f736c5386f8edcc5f1366073e71d21b0d5cf29e7ddc51e018567ce51ad6a3348a2c4d52abcdef7654b2ce862735bfc071e5c6 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
Nothing has changed.
Nothing has changed.
Nothing has changed.
| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | 39f45569d7bb0a3a931636d0794dfc851d7f0ceeefff54a6b6791d2e85034286f5bfbfe916f2c195f3a404fd7d5610744fb8b99de5bb36e9bd3d95a0ed91628c |
| kubernetes-src.tar.gz | 67bfe4db5691ea960041aab7423446250272cbfee45fcb51e70a4b5da5acd64a9a7d358a8c709a10c3eb3f48d582c02af8de3bbc1a3a96a212b2ac8317b37e3e |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | 04113bab71e6ec1507ca8a05234c9980a98e6682dc3238aa7eb32a08a077b3a11888e6e80851bdf8511c6ed3210900eb03824251d7c8ed9e1f67bb9e32bfda7e |
| kubernetes-client-darwin-arm64.tar.gz | 4e53a67653df939e6aa788b3bcda7856b0ea53a33fd6740ece621f19d0c2e3f17885e9aa7b2e3782c13ccda583c2f8c183cdd633b1e0b2e75239c6e113f8e6ba |
| kubernetes-client-linux-386.tar.gz | 5ed80e707364dd7f3317b399155c215c16f32b0f1d062ea78494f5ab5477fbfab8f82e5cf586e27ed25a392bba846fe076c30cf29fefb4639f2f27e008d4c73a |
| kubernetes-client-linux-amd64.tar.gz | 32b3028b1323ef4f5c9c91ccafbc4f5a676399c95e3e4bcf2d12da517d280f642983ecd294062f60de91be5dca760a923124551a88cdcbf4b2a5c52022554e08 |
| kubernetes-client-linux-arm.tar.gz | 8915fd35b74e0ebe567ae3079eb354bc01c1e05b32bf6a3bb5e4ef25a5bfdb34e39317bbddd99194fb5db456b063609d74a88f414a52f420d9b97ade169c452b |
| kubernetes-client-linux-arm64.tar.gz | 6412b3ccc3c41e8dea6b36f59bb29852c2669398a156ec1505898e9941febc6bdee9be7c27916f21a50e01f5b43f4acc67aaba470fd44234d70a61efabf2d907 |
| kubernetes-client-linux-ppc64le.tar.gz | 5137df83ad807c45768c9b4367bffe53cd94af7e5dfcc7d969309e13685414b45937726f9216d381f014eacd1a87b7c33d327baeedbc79e134eb20ae03a43edf |
| kubernetes-client-linux-s390x.tar.gz | 48fbfcfbe0d626a45f5ca2cba43ac166721634670957d4720b941f9151d29c24caac3c1ae141cf6c8ae64f1e4bf74aa3393f3af9aef09676cc1308e6c0826ba6 |
| kubernetes-client-windows-386.tar.gz | 7aa98634bf21f22b4c336827a3b5a02c0e6d73906e15f932b76f24dea86d045633b981559ad84f56cb05bd3afa9c0e439d7630f37ace2052e02bfa77d3991cda |
| kubernetes-client-windows-amd64.tar.gz | 86dde8efb63c89a38109402acffb3a238a0c76082f94481f76efda4ea6c9c367efec6d9788ab075724eabc3121bdceb0155ff6166e809a98cd7136851fb91812 |
| kubernetes-client-windows-arm64.tar.gz | f69812e0396eb34695ac0f072ce6f899e06761e87afc9e322d9872ed83b66acc25d47584a8f413d0557ebbdbab56c4c34e9249079da964bec3c2b1d46f4eb909 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | 977b34e8e8d5cdf4450fb4e8ab9bac97e95076617b8c64415a27573a7cca338e915efc6bf0bb3677de2770a54028fb1a8bb7ed1c612b843cd65b5cc623fa54f9 |
| kubernetes-server-linux-arm64.tar.gz | 0c57da9963c24b1cf9ce9eaff2a0aac1c2ccb358ceb5ade7014577486b70f288884373d0dea500fe2e545af547c215b9422765d334cc7fb5450f137a770ec2f0 |
| kubernetes-server-linux-ppc64le.tar.gz | 9227e6c134f999b5b7676222e5cc10a7e82e3777443339cb231d1b7a0fbbf90607c13a5beec980e9c9c28e4a695c554ef7ab31631156bbff9327f962287c041f |
| kubernetes-server-linux-s390x.tar.gz | 119ea6d4971177052b3adb6a0e27fcb125c4471f9c210fb56cc6835667b12b411bd61525b8c4203259a5dbf54f205e55a38b06b5d9194ad1514e37958d65e646 |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | 2d913c9e47149585a93f6b8fc1fb059ca6d830b23ff0f0d404baee7cddb78f808c03245e35aa66a739726579b34ec21fad5af64a323ae80bb9289d4a36177649 |
| kubernetes-node-linux-arm64.tar.gz | f9b7d6d46c22e2cb0a66243df88064279e3814e12d952d8af441be01a25b9c739d704dbffc99c99d9ed7034dabf420eaeedee975602bc7eb95c1e6445360387a |
| kubernetes-node-linux-ppc64le.tar.gz | be1abf3347f64107b4eb4899f3dfc9492c7014297e29b36e31086fe8367599902a4b3e324b242c6ca817eabf5481cab45e99797d2a210e5449c9e1dc4d93bbc6 |
| kubernetes-node-linux-s390x.tar.gz | b16a9382d7446ac66f1214f44ccb26b25cc9acb9f874761c4b52dc101d157ec2cc69c0ed140cd9801f63ede41371785593546d81b370e0840c31f548a747cc8f |
| kubernetes-node-windows-amd64.tar.gz | 157346216be6264261e2cc9911d08bd4b8f72b4c50c42d2423591e558f9b88363adf97d8ed04bb35019e6cc3bfd7200e52b1a019b28bd0724d51aa6c8b939a61 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
Add a new .spec.evictionResponders Pod field, EvictionRequest and Eviction Resource. This can be used by a set of requesters and responders to coordinate graceful eviction of pods. (#137050, @atiratree) [SIG API Machinery, Apps, Architecture, Auth, CLI, Etcd and Testing]
Add alpha support (behind APIServerWebhookAuthenticationToken feature gate) for binding service account tokens to webhook configurations with attestations, enabling API servers to authenticate to admission webhooks with scoped tokens. (#140113, @pmengelbert) [SIG API Machinery, Apps, Auth and Testing]
Add supports for CompositePodGroup to building block APIs and workloadbuilder library. (#140717, @helayoty) [SIG API Machinery, Apps, Auth, Scheduling and Testing]
Added Alpha support for users to define the desired file owner of atomically written volume files. This is behind the AtomicWriteVolumeUserFields feature gate (disabled by default). (#139764, @gavinkflam) [SIG API Machinery, Apps, Auth, Storage and Testing]
Added CheckpointPod and RestorePod RPCs to the CRI v1 RuntimeService API for Pod-level checkpoint and restore. (#140366, @rst0git) [SIG Node, Testing and Windows]
Added DisruptionMode and PreemptionPolicy fields to Workload and CompositePodGroup APIs to support workload-aware preemption for CompositePodGroups. (#140634, @tosi3k) [SIG API Machinery, Auth, Etcd, Node, Scheduling and Testing]
Added a new beta feature gate SchedulerPreQueueingHints (on by default). When enabled, scheduler plugins can provide a PreQueueingHintFn that narrows the set of pods evaluated on cluster events, improving scheduling throughput. The DRA plugin implements this to optimize ResourceClaimTemplate-based workloads. (#138916, @geetasg) [SIG API Machinery, Apps, Architecture, Auth, CLI, Cloud Provider, Instrumentation, Network, Node, Scheduling, Storage, Testing and Windows]
Added a second alpha of DRA resource availability visibility (KEP-5677, feature gate DRAResourcePoolStatus, default off): the ResourcePoolStatusRequest controller now counts partitionable and consumable devices correctly (each device counted once, AdminAccess ignored, taints treated as unavailable), and new optional fields describe partition and shareable availability. The accounting fixes change the numbers reported by 1.36. (#140170, @nmn3m) [SIG API Machinery, Apps, Auth, Node and Testing]
Added alpha support for DRA device compatibility groups, guarded by the new
DRADeviceCompatibilityGroups feature gate (off by default).
DRA drivers can declare opaque compatibilityGroups on each device.consumesCounters[]
entry of a ResourceSlice, and the scheduler only co-allocates devices drawing from the same
counter set when their declared groups intersect, moving detection of incompatible co-allocation
from preparation-time failure to scheduling-time rejection. (#139795, @omeryahud) [SIG API Machinery, Node, Scheduling and Testing]
Added kubelet configuration field DefaultPodSysctls for default Pod sysctls on Linux nodes. This is Alpha and behind the off-by-default DefaultPodSysctls feature gate. (#140052, @VeraQin) [SIG Node and Testing]
Added support for derived attributes in DRA, allowing claims to define virtual attributes using CEL expressions and use them in device constraints. This enables co-allocation of devices across different domains (e.g. GPUs and NICs on the same NUMA node) even if their drivers publish physical attributes differently. (#140029, @gauravkghildiyal) [SIG API Machinery, Node, Scheduling and Testing]
Added support for selecting ResourceSlices by pool name with the field selector spec.pool.name. (#138456, @yaroslavborbat) [SIG API Machinery, Node and Testing]
Adds protocol field to httpGet probes to run HTTP/2 cleartext (H2C) liveness, readiness, and startup probes. (#139429, @amritansh1502) [SIG API Machinery, Apps, Node and Testing]
Allow API server CBOR encoder to encode collections item by item, instead of all at once. (#138808, @chenk008) [SIG API Machinery, Apps, Auth, Autoscaling, CLI, Cloud Provider, Cluster Lifecycle, Contributor Experience, Instrumentation, Network, Node, Release, Scalability, Scheduling, Storage, Testing and Windows]
Client-go: with very few exceptions, context.TODO calls got removed by introducing new APIs where the caller passes in the context. Log calls use the logger provided by the caller when available. (#129125, @pohly) [SIG API Machinery, Apps, Architecture, Auth, CLI, Cloud Provider, Instrumentation, Network, Node, Storage and Testing]
DRA device metadata v1alpha1 now provides generated declarative validation functions for Go consumers. (#140687, @alaypatel07) [SIG Node]
DRA metadata API: the feature is now beta. DRA driver authors must explicitly select which versions to support in their metadata output if they enable the feature. (#140722, @pohly) [SIG Node and Testing]
DRA: Introduced alpha support for DRAOptionalNodeOperations (SkipNodeOperations field in ResourceSlice and ResourceClaim) to allow skipping node-level preparation and cleanup operations. (#139933, @troychiu) [SIG API Machinery, Autoscaling, Instrumentation, Node, Release, Scheduling and Testing]
Graduated Pod hostname overrides to GA. The HostnameOverride feature gate is now locked to enabled. (#139116, @HirazawaUi) [SIG API Machinery, Apps, Node and Testing]
Implement APIs required for reporting volume health (#140194, @gnufied) [SIG API Machinery, Apps, Architecture, Auth, Etcd, Instrumentation, Node, Storage and Testing]
KEP-2033: promote KubeletInUserNamespace feature to beta (#134639, @AkihiroSuda) [SIG API Machinery, Apps, Node and Testing]
Kubelet: add support for TLS when using gRPC container probes (behind feature gate; see KEP-4939). (#137762, @amritansh1502) [SIG API Machinery, Apps, Node and Testing]
Move prevention of pod scheduling to nodes without CSI driver beta (#140612, @gnufied) [SIG API Machinery, Storage and Testing]
Opt-in userspace TCP proxy to the nftables kube-proxy backend to serve localhost NodePort services on IPv4 and IPv6. (#138427, @AustinAbro321) [SIG Instrumentation, Network and Testing]
Promote MemoryQoS to beta. memoryThrottlingFactor now defaults to nil; memory.high is not set unless explicitly configured. (#140007, @QiWang19) [SIG Node and Testing]
Promoted DRA Workload resource claims to Beta. The DRAWorkloadResourceClaims feature gate remains disabled by default. (#140334, @nojnhuh) [SIG API Machinery, Apps, Etcd, Node, Scheduling and Testing]
Support Workload-aware scheduling (WAS) APIs by integrating Job controller with workloadbuilder library and the Workload building blocks APIs. (#140188, @helayoty) [SIG API Machinery, Apps, Auth, Network, Node, Scheduling, Storage and Testing]
Support dynamically resizing memory-backed volumes behind the Alpha feature gate InPlacePodVerticalScalingMemoryBackedVolumes. (#139425, @natasha41575) [SIG API Machinery, Apps, Autoscaling, CLI, Node, Scheduling, Storage and Testing]
The DRAResourceHealth kubelet gRPC API has been promoted to v1; the schema is unchanged from v1alpha1. DRAPlugin.WatchHealthStatus is a new mandatory method on the k8s.io/dynamic-resource-allocation/kubeletplugin helper's DRAPlugin interface, replacing the optional versioned gRPC interface (one-time Go API break, existing drivers must add the method to compile). Drivers without health support return ErrHealthNotSupported from it or disable the service with HealthService(false). The helper serves both v1 and v1alpha1 by default, so drivers report health on kubelets 1.36 and older without extra configuration. The kubelet prefers v1 and, for three releases of transition, still consumes v1alpha1 from drivers which shipped before v1 existed. The v1alpha1 DRAResourceHealth API is deprecated and gets removed in the 1.40 era. The kubelet only opens the device health stream for plugins that advertise the service. (#139477, @harche) [SIG Node and Testing]
The Pod Certificates feature is moving to GA. The PodCertificateRequest feature gate is set true by default. Two fields PKIXPublicKey and ProofOfPossession which were deprecated in PodCertificateRequest v1beta1 are removed from the v1 API. (#139579, @yt2985) [SIG API Machinery, Apps, Architecture, Auth, Etcd, Node, Scheduling and Testing]
The core Workload-Aware Scheduling (WAS) API types Workload and PodGroup are promoted to scheduling.k8s.io/v1beta1. If using the v1alpha2 version in 1.36, remember to remove all v1alpha2 objects from the api-server before upgrading from 1.36 to 1.37. (#140184, @tosi3k) [SIG API Machinery, Apps, Auth, Etcd, Node, Scheduling and Testing]
The unsafe corrupt object deletion feature now supports dry-run mode, allowing administrators to test deletion operations safely before execution. (#134037, @ibihim) [SIG API Machinery and Testing]
This change updates the DRANodeAllocatableResources alpha feature, which includes:
Update validation logic for container security context to allow edits to pods to have allowPrivilegeEscalation and CAP_SYSADMIN. In the future, this relaxation will apply for pod creation as well. (#138834, @haircommander) [SIG Apps]
Users can set Unix permission bits (0000-01777) through the 'mode' field on emptyDir volume directories at creation time. (#140244, @nispriha) [SIG API Machinery, Apps, Node, Storage and Testing]
Users can specify bind mount options (noexec, nodev, nosuid) per container volume mount. (#140013, @nispriha) [SIG API Machinery, Apps, Autoscaling, Node, Scheduling and Testing]
A new allocatedPods kubelet endpoint surfaces the Kubelet's allocated pod spec. This can be used to debug in-place pod resizing and other issues with pod updates. Requires the KubeletAllocatedPodsEndpoint FeatureGate. (#140856, @tallclair) [SIG Node and Testing]
Add cpu_ids and memory fields at the pod level to the PodResources v1 API to
report total allocated pod resources, while only return container-level allocations for
container-isolated containers. (#138738, @KevinTMtz) [SIG Node and Testing]
Add a --proxy-url flag to kubectl to override the proxy URL configured in kubeconfig. (#139862, @Mujib-Ahasan) [SIG CLI]
Add alpha kubelet metric kubelet_pod_deferred_resize_duration_seconds histogram and add priority_bucket label to kubelet_pod_pending_resizes gauge. (#140122, @natasha41575) [SIG Instrumentation and Node]
Added a new alpha Kubelet metric, pod_level_resources_admission_total, to track feature adoption for KEP-2837 (Pod-Level Resources) upon pod admission, categorized by resource configuration mode and QoS class (#140463, @ndixita) [SIG Instrumentation and Node]
Added scheduler performance benchmark suites comparing preemption behavior across standalone (non-PodGroup) pods and PodGroups with single and all disruption modes, and reorganized default preemption performance tests into a dedicated directory. (#140651, @vshkrabkov) [SIG Scheduling and Testing]
Added the storage_to_cache stage to apiserver_watch_events_dispatch_duration_seconds ALPHA metric to track the latency from backend decode to watch cache ingestion. (#140860, @richabanker) [SIG API Machinery and Instrumentation]
Adds "cache_to_watcher" stage to apiserver_watch_events_dispatch_duration_seconds ALPHA metric to measure the latency incurred when pushing events to a watcher's result channel (#140851, @richabanker) [SIG API Machinery and Instrumentation]
Adds apiserver_watch_events_dispatch_duration_seconds alpha metric to record the duration from when a watch event is decoded from etcd until it is successfully written to the watcher's outgoing result channel. (#140336, @richabanker) [SIG API Machinery, Etcd and Instrumentation]
Adds new buckets for watch_list_duration_seconds metric- 90s, 120s, 180s, 300s (#140757, @richabanker) [SIG API Machinery and Instrumentation]
Data in DRA-related fields in pod status (resourceClaimStatuses, extendedResourceClaimStatus, and nodeAllocatableResourceClaimStatuses) is now preserved when handling pod status updates that omit those fields. This prevents data loss due to updates from old clients accidentally unsetting these DRA fields, which could leave pods permanently stuck in Terminating. (#139876, @ashishpatel26) [SIG API Machinery, Auth, Node, Scheduling and Testing]
Improved scheduling performance for required pod (anti)affinity with topologyKey: kubernetes.io/hostname.
The changes are guarded with the InterPodAffinityHostnameFastPath feature flag. (#138198, @tetianakh) [SIG Apps, Node, Scheduling and Testing]
Kube-scheduler now publishes the client-go informer metrics informer_store_resource_version, informer_queued_items and informer_processing_latency_seconds, labelled name="kube-scheduler". (#140511, @Jefftree) [SIG Scheduling and Testing]
Kubectl top support v1.metrics.k8s.io (#139726, @tico88612) [SIG CLI and Instrumentation]
Kubelet PodsAPI gRPC service promoted to Beta. (#140286, @briansonnenberg) [SIG Instrumentation, Node and Testing]
Make SchedulerPreQueueingHints alpha for some known issues that were discovered at the last minutes. (#140959, @sanposhiho) [SIG Scheduling]
PLEGOnDemandRelist is now GA (#140805, @tallclair) [SIG Node]
Pod group preemption will now be run after a failed pod group scheduling attempt for pod groups with Scheduling Constraints. (#140683, @Argh4k) [SIG API Machinery, Scheduling and Testing]
Promote PodReadyToStartContainers condition to GA. (#140488, @Priyankasaggu11929) [SIG Node and Testing]
Promote InPlacePodVerticalScalingInitContainers to GA. (#140728, @natasha41575) [SIG Apps and Node]
Promoted the DRAResourceClaimDeviceStatus feature gate to GA. (#137546, @LionelJouin) [SIG Node and Testing]
Reduced the scope of EventedPLEG to only accelerate detection of unexpected container terminations. (#139262, @HirazawaUi) [SIG Node]
Scheduler metrics for the topology-aware scheduling (TAS) placement phases available when the TopologyAwareWorkloadScheduling feature gate is enabled: scheduler_generated_placements_total, scheduler_placement_evaluations_total, and scheduler_placement_evaluation_duration_seconds. (#139604, @alimaazamat) [SIG Instrumentation, Scheduling and Testing]
The AllowUnsafeMalformedObjectDeletion feature is now beta and enabled by default. List errors for objects that cannot be read from the storage now include the first underlying cause in the error message. (#140785, @ibihim) [SIG API Machinery and Etcd]
The ConcurrentWatchObjectDecode feature gate has graduated to beta and is enabled by default. (#139679, @Jefftree) [SIG API Machinery and Etcd]
The PodLevelResourceManagers feature is now enabled by default (Beta) in Kubernetes 1.37. (#140573, @KevinTMtz) [SIG Node and Testing]
The dynamic_resource_allocation_resourceclaim_creates_total metric has new owner_api_group and owner_api_kind labels to distinguish between ResourceClaims created for Pods with those created for PodGroups (using the DRAWorkloadResourceClaims feature). (#140422, @nojnhuh) [SIG API Machinery, Apps, Instrumentation, Node, Scheduling and Testing]
The route_sync_total metric now records an error outcome when a route reconcile fails, in addition to the existing changed and noop outcomes. (#140824, @lukasmetzner) [SIG Cloud Provider and Instrumentation]
The route controller ALPHA metric route_controller_route_sync_total now carries two labels: trigger (periodic or node_change) and outcome (changed or noop). This lets operators observe how often periodic reconciliation is correcting route drift versus running as a no-op. (#140147, @lukasmetzner) [SIG Cloud Provider and Instrumentation]
Update PodAndContainerStatsFromCRI to off-by-default beta (#140081, @dgrisonnet) [SIG Node]
apiserver_storage_list_duration_seconds, a metric measuring end-to-end apiserver list latency (etcd read plus object decode), labelled by whether etcd RangeStream was used, so streamed and non-streamed lists can be compared directly. (#140697, @Jefftree) [SIG API Machinery, Etcd and Instrumentation]Unused condition is now evaluated only after the PVC is bound. (#140833, @huww98) [SIG Apps and Storage]allocationMode: All with consumable capacity could be partially allocated when a matching device had insufficient remaining capacity. Such claims now correctly fail to allocate until all matching devices can be satisfied. (#140769, @kiarashazarnia) [SIG Node]nft command-line binary. This behavior can be disabled using the NFTablesNetlink feature gate (Beta, enabled by default). (#137536, @aojea) [SIG Network and Testing]spec.hostUsers as true when evaluating user.* sysctls. (#140892, @weizhoublue) [SIG Node]involvedObject.uid on a best-effort basis once the node is registered, so node events can be correlated by UID (for example in kubectl describe node). The UID is resolved once and not refreshed afterward. If a node is deleted and recreated with a new UID while the kubelet keeps running, its events continue to use the original UID until the kubelet restarts. (#139921, @harche) [SIG Node].kube/config folder on Windows will no longer result in a relative path being used to match the behavior on other OS. (#135735, @bliles) [SIG API Machinery]PodLevelResourceManagers is disabled by default. (#141209, @SergeyKanzhelev) [SIG Node]| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | f9d5a3e658affdbb2a238fccd85c8761386302ee46d262b4440fd2813f4676bac02f3549c09f29b9a598905d461ab559d41a349ce8c2fb3528e8760bd5969ffc |
| kubernetes-src.tar.gz | 2e2ac730f6f5a2d63986e2939d353f10c10c44293e6cd0de53bcb2796ca7f89d3b0cf8363063241ddf1f1ef997f9e01433ba4e98e04886b2c9c9fa363361faff |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | bb36f64627b9b851cf3bba0ce60d3577578c4757140e027085e02f13e30a9cc1a13fb90c29083b6ba1b4da1f4e2e698f70d0fdf0ff11827ce34b8b112646959f |
| kubernetes-client-darwin-arm64.tar.gz | 725cf0cae1295786726be1c8b461248923afdcdedb8b83c4a457da3355dff66e7205c57ad9f721fde143e9f0f4b59fd4c4fd628e347f3ce2e55fc2fb2d08dbe0 |
| kubernetes-client-linux-386.tar.gz | 307bcdab8a705384e1d5868d4aed8c318b72010f62818cc68812c51fb00f2e49ff3497f3a64cd56269cd669908525156cacc2076dd8d1d5c4892b137ccb740da |
| kubernetes-client-linux-amd64.tar.gz | b880a28e51d2ea2b253ae8e82e6f94072db7cadec88235ee06fcec989de09d06ad0ff3263c470d21406f0ee527d92b00131a82695860ec2e609d7619fe239af2 |
| kubernetes-client-linux-arm.tar.gz | 5bb4f9b63109a893c6a72b636be467a2c46dc90a5e7ff5d39e34aaa8950d6519bd8c371295f4819e66ff4cc120878afca03ee70360597bdd861a5882d3b66d18 |
| kubernetes-client-linux-arm64.tar.gz | f490a05e9234ccc2d8237d877849796e8b60b7c0184d8c4eea117dabc719407a732b3081bee5771540df7ff41f463a780f7f9f13f54ed036904220339569e709 |
| kubernetes-client-linux-ppc64le.tar.gz | 6b066f0837355174a3399f8c2552a34e67fa6d410a21e094ab444074fc263f82a5c890735576f79fc726d3fd3c9ba031fc463ace962d2ead6e2a5a03cf5065be |
| kubernetes-client-linux-s390x.tar.gz | aa8f6f9179a24eb1557840c23c5240210cd8c2125e700aa3293de45f90e2e2c971042e051a060c33b5bdf6bb656bbb8de38686ddb1aac53d210439602f46939e |
| kubernetes-client-windows-386.tar.gz | 661a31a0ed6f21f739dcb18444c19b64c7716ea87e273d56c7e19bbb17ceb29994943bb7f636c6728bb609061b039ad113a11d8f3808e947dc728cd28d0c8794 |
| kubernetes-client-windows-amd64.tar.gz | 1370fe6493054554d4951569203fc9230f9f30c4843a111089792378f1f6932f2203b65b3338e43a3729cb428813d24462e9b25554e0f8a7bea2e67bd2a91189 |
| kubernetes-client-windows-arm64.tar.gz | 6419aa5600a0fe4f8860ed7f126369aa5feed2860fa5b1cfdcb990df99154c00512dcd4c4198b343f5e1475f2d78fd59657b9f905e5bcf3f7e9724a42402fbcc |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | a74d754bfa7e69493cdf1a0357306e8a5e5107f7eaff0c560677eff5fcb56d9a39192dbc227fc14148c7f48b61993c063bf90fcbd191a43455d2d85aa0a0f4ef |
| kubernetes-server-linux-arm64.tar.gz | 6d5961b97bba55d2a927acaba7fd327fc9a3916f1625e79b1a32229d3a8db669616b9adb0ba0a058e9ab1c8809893a20edee4355d6c5f4c8c670acd38de41b71 |
| kubernetes-server-linux-ppc64le.tar.gz | d9956ea921a70bc1c75bb32b9390c3158a69e772ffbbf9f5bd3954975038c018b9bbd4417a8da59e0cbe0a9629b259ae3644e7ab73837e40d61495c620bee037 |
| kubernetes-server-linux-s390x.tar.gz | 2441f5906fd18c072977082a1706292ca3431935e85ba3a65d0aa629afec4b5a470981f98ceb914d70759cd8560c5be695c176a40c776e0e9c946967f9a10380 |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | da044a30d92e9a3c15ee678a9e10a36b09188a117e6fccd67a3f993ee514f7a07e52a2768c02a90f7f9f8e78e8398b6033aa60628a126df48ece559dfef95381 |
| kubernetes-node-linux-arm64.tar.gz | 31adffb8b051e742bbd8fcb54687aa9abbc6af4da597f9a6f589720beebfa091939fca81959b3c44c413ecdb3b5f549a7a7751df82f7085d156611332656011c |
| kubernetes-node-linux-ppc64le.tar.gz | 9a2d99718bc226b0ab6e47bfae3980d7e41678bb6c0eeb1d5fb8069f0f07a1229825b63bb979a19662c2efc07677cdc2df9b7fdbd255c9a8910c797f980e50c1 |
| kubernetes-node-linux-s390x.tar.gz | b30bd77b2b72fd3ab4778242deddd55bfb580973adbf3bfecaed46e816824cdf536c201e60132036e409fbd653c12e79168871018427215a002f28fc591fd60e |
| kubernetes-node-windows-amd64.tar.gz | 0a404926c1017b06e3c7dd1c429031a3c51b0001256bfa77777a1c7198103938b814a54d76c93097abccf3276515ce0fc262354e7dd54ba67d2796e4d8e2e6a2 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
--concurrent-disruption-syncs to kube-controller-manager to configure the number of concurrent disruption controller workers. (#140014, @xigang) [SIG API Machinery, Apps, Auth and Testing]PodGroupPostFilter extension point to the scheduling framework. This replaces internal hardcoding for WorkloadAwarePreemption with a proper, configurable extension point for operating on PodGroups. (#139674, @GFilipek) [SIG Scheduling and Testing]{}, {requests:{}}, or {limits:{}}) no longer affect QoS calculation. (#137150, @KevinTMtz) [SIG Apps, CLI, Node and Scheduling]PersistentVolumeClaimUnusedSinceTime feature gate to beta in v1.37 (enabled by default). PersistentVolumeClaims now report an Unused condition indicating how long a PVC has been unused, helping identify candidates for cleanup. (#139620, @RomanBednar) [SIG Apps]metrics.k8s.io API is promoted from v1beta1 to v1 without any modifications (#139223, @tico88612) [SIG Instrumentation]Deferred in-place pod resizes of higher-priority pods. (#140000, @natasha41575) [SIG API Machinery, Apps, Node, Scheduling, Storage and Testing]Added a --max-depth flag to kubectl explain --recursive to limit the depth of nested fields displayed in the output. (#138809, @shady0503) [SIG CLI and Testing]
Added metrics related to workload preemption in alpha stability behind WorkloadAwarePreemption feature gate. (#139373, @brejman) [SIG Instrumentation and Scheduling]
Added validation to PodGroup scheduling which, if the feature gate PodGroupPreemptionPolicy is enabled, ensures that preemption policies of the evaluated pods match the priority of the PodGroup. (#140359, @ania-borowiec) [SIG Scheduling and Testing]
Admission webhooks now skip the auth/authz virtual resources (e.g. tokenreviews, subjectaccessreviews) that ValidatingAdmissionPolicy/MutatingAdmissionPolicy already exclude, via the new ExcludeAdmissionWebhookVirtualResources feature gate (beta, on by default; opt out to restore the old behavior). (#140019, @BenTheElder) [SIG API Machinery and Testing]
After successful scheduling of a podgroup, its remaining unscheduled pods are requeued directly to active queue rather than backoff queue. These pods preserve their old timestamp so they have precedence in scheduling unless a higher priority entity comes in between. (#139613, @iomarsayed) [SIG Scheduling and Testing]
Bump coredns to 1.14.6 (#140497, @yashsingh74) [SIG Cloud Provider and Cluster Lifecycle]
DRA: Add resource.kubernetes.io/numaNode as a standard device attribute with sysfs-based helper functions for DRA drivers (KEP-6072). (#139929, @johnahull) [SIG Node]
Enhanced Pod-by-Pod preemption to support PodGroups as preemption victims. (#137981, @vshkrabkov) [SIG Scheduling and Testing]
Graduate scheduler metrics scheduler_plugin_execution_duration_seconds and scheduler_scheduling_algorithm_duration_seconds from ALPHA to BETA stability. (#138176, @abhay1999) [SIG Instrumentation, Scheduling and Testing]
Gradute NativeHistograms feature to beta (#140124, @richabanker) [SIG Architecture and Instrumentation]
Kubernetes is now built with Go 1.26.5 (#140576, @palnabarun) [SIG Release and Testing]
PostFilter plugins are no longer run during PodGroup cycle for pods from PodGroup. Instead the PodGroupPostFilter is run if the whole PodGroup is unschedulable. (#140412, @Argh4k) [SIG Scheduling and Testing]
The EtcdRangeStream feature gate is now enabled by default (Beta). (#140085, @Jefftree) [SIG API Machinery]
The ManifestBasedAdmissionControlConfig feature is now beta and enabled by default. (#140559, @BenTheElder) [SIG API Machinery]
We are adding two new metrics:
"queued_entities": This metric tracks the current entities (individual pods or podgroups) in queues (active, backoff, etc..) of scheduler.
"queue_incoming_entities_total": This metric tracks total number of entities (individual pods or podgroups) added to scheduling queues (active, backoff, etc..). (#139840, @iomarsayed) [SIG Instrumentation, Network and Scheduling]
When workload aware preemption finds a placement for the PodGroup, the status of the PodGroup will contain "pod group preemption found a placement for podgroup, preempting <victim_count> victims" message. (#140311, @Argh4k) [SIG Scheduling and Testing]
Workload-Aware Preemption now runs only one scheduling attempt, on a cluster with all potential victims removed. This can lead to a suboptimal preemption victims choice at the cost of significant performance improvement. (#139980, @Argh4k) [SIG Scheduling and Testing]
--metrics-bind-address flag documentation by removing the incorrect claim that setting it to an empty string disables the metrics server. (#138940, @kairosci) [SIG Network]==) no longer matches lists containing duplicates, and concatenation (+) now correctly applies set/map merge semantics to appended elements. (#140293, @jpbetz) [SIG API Machinery]kubectl cluster-info dump --output-directory creating world-readable dump files. Files are now created with mode 0600 and kubectl-created directories with mode 0700, since dumped pod logs can contain sensitive data. (#140189, @ashvinctrl) [SIG CLI and Security]handleSchedulingFailure during scheduling failure handling. (#140623, @SparshGarg999) [SIG Scheduling]DRAListTypeAttributes feature gate enabled could fail to allocate devices even when a valid combination exists. This occurred when the allocator needed to backtrack during allocation of multiple devices with a matchAttribute constraint using list-type attribute values. (#140325, @everpeace) [SIG Node and Scheduling].metadata.managedFields field that kube-proxy doesn't require. (#140056, @adrianmoisey) [SIG Network]Nothing has changed.
| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | 6ac747b1f3d8c6d341034ea37125829793dc3a3f8018eb0ba90e57b0190fed8a147ca56d3cf07562e932ae7e8291113e7e06c98d54c0c6577258f5844504ffd8 |
| kubernetes-src.tar.gz | 407aa7241cd88a8ee7bf1f1b18399cc3adedcc25adb8df7123e6b2b4a5856ed3972b88262c0ae0eb9eec7d84c67250fbadf0f1f76a88530c2cede1348bec8353 |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | 923ff3c315fc2fbcbbd215cdb4946f6d9559e0e259e8ed87fa55279c718b29c7530bfbe315a5f8fb289545a55f08dda3742f993fde519c722e469e8dc93cfab6 |
| kubernetes-client-darwin-arm64.tar.gz | 6a9332c8aa9e548b967f492ab42b197a82c23555e2ea953dc8752d300a8ef38478042a74c0f6170af10cb35b41cb80e600d1a8575141ebb6d77f1e534fcf4b93 |
| kubernetes-client-linux-386.tar.gz | f245cf9de14b216b5d1354a7d5fff1b216bbd2db10639657939719175b3d2fe486128ad0e276ad7aba796a1fd3b7b1ec6686768c0167167b8ca44303e334f3b1 |
| kubernetes-client-linux-amd64.tar.gz | 6fe93886ce95d8b5b29fffc0ea311eb50e2dd6cdf27a2ea05c5b78d33db2094a9a1e2e7af5cdf9d3740d1fa69b83ad0a5e1776edc8a2cba71e1a1b2671ccd030 |
| kubernetes-client-linux-arm.tar.gz | 69ec1be76b5216951ac7f2f2c4bfa5bf63bc7a2744f3ed973572aac8dabf8f2298520adf9230278f710dc95fe3db6c146ee1fd9311a01a887388cfe92a6a4845 |
| kubernetes-client-linux-arm64.tar.gz | d0bb9c6cdadbc797c05512f4f73cbbd412f6e840feb54b7232bc9b64b8060629e06365adfda670c37885bafb8bfa1d6de7f530c7b2922c287f23219aaf063aed |
| kubernetes-client-linux-ppc64le.tar.gz | 7abbc629713d7f07d740de5dfa91e496087db0df1fcf7b7bcb93e5b5417453080fc859b004317439ac112e83401b3d16a19de07e477f2b605c82562dcd376ada |
| kubernetes-client-linux-s390x.tar.gz | bbfd6060133b9203a33749f43b421dba9f6ba10c0d21f02ac8480165f4dcb25b0dd07639b5044a0b2fd0e8c32b16fa70460c40d56a59b3502026def632d7bc05 |
| kubernetes-client-windows-386.tar.gz | a2913f208ceee865ba595b670d149b6edc10209f04fc494a05ba870fb1d51a99bad22080b840fc0d113453fa39fff89ef5558c7aa4225b17a49fb0ce2ee2cad7 |
| kubernetes-client-windows-amd64.tar.gz | e4c153a764e58ed76c8892a6497aa9e094936b10c06f1226fb47d738c441d51e09182fa2bdd6e7e0e3bd678e7c9afb892c0a6ae21e920bd9f10231d2c94f77a2 |
| kubernetes-client-windows-arm64.tar.gz | cb6fd57d3c3b9c4b72c0b1865ce4b438627afc3cb9a46e06e6bcb9a04cd0ac7581e0f4c736e176025f3fe1d65c1d154afe36f52735caaee4e9ea2e0b029c4f09 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | f2968084ef1cff88a85bb9ec4de2df25475f74ea342b6115657216a85d52ff10bbdedc76dd486eef25495c7f3f7e188f43a0cbcaa2cec07b730068f5c01a52da |
| kubernetes-server-linux-arm64.tar.gz | d5f8c06cc7d246112465d8435d01b99fda3a533171b34ead08ff64c26ddcc5329d540afd37df8013d3034540467ad99c93683c428eaad06a3bd1dc1640f2ac0b |
| kubernetes-server-linux-ppc64le.tar.gz | e589b92dbb0b39fcdceb430c4d87cc7564f8143128a808c8fd89e2a09c7ceb566f1471c53fe5c38464f0c5994df43106e3c1d2d43eea97adbb48e9d7f6f68aba |
| kubernetes-server-linux-s390x.tar.gz | 78eb0a050205e9f9c35584130124809a3c66f5f6696bc749892130f4f7fc23963680fc6ac5eb23aafd61e0e762dadb9b4a2418ba8f7cd2dfc6b8a55911b103a5 |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | fc5cd6f7c3652bbdc58dd83d41fe33a4a36e901bd08ab12834a08510c9c9f48b2605e177394674b96b60d045f16dabe0461526943f9342f0bc92c75764a16c6f |
| kubernetes-node-linux-arm64.tar.gz | da21197d3902a96ea603485700f7e32b719ea22b6d2c642c0c537727709a2c656d65f52ce3216e2c99d86ad1de4d98338668ad9dd123d887030c395261e5124e |
| kubernetes-node-linux-ppc64le.tar.gz | 8e850cbe8dffbe31a7d38821efc9c27fbe12d66ed363ed4fb2abc9a6ddf840ca3b3a3f89ced2947fb722c0f15f9163af8c96bcd2ed59c6fdcd664d36ba8e2d8c |
| kubernetes-node-linux-s390x.tar.gz | 6ed014e999b24438e3266d7c111d7cedddc568862d0a2eca7ba6c9ae29faf613c1b5d54731dd464f298052d58dce591c308cbfb6eacd23b25e4460a706494b1f |
| kubernetes-node-windows-amd64.tar.gz | 9926cdb6b198b2906c433788a09f802dd72c8ef44f608f06fd3999661801af0e3f5d272c278cc8fab366f3e5526a6b483d3304d58171c67628fa3cdc736453a3 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
cluster admin should review permissions to only allow trusted users to nodes/logs cluster role. This is mostly the reminder as it was the best practice anyways and almost all of the effective configuration values can be already Inferred from other log messages or the kubelet behavior. (#139837, @SergeyKanzhelev) [SIG Node and Testing]
SELinuxMount feature gate to GA. SELinuxMount is now enabled by default in Kubernetes 1.37, which may break existing workloads in Kubernetes clusters with SELinux enabled. Please see our blog to identify potentially problematic workloads in your 1.36 cluster and how to fix them or opt out of SELinuxMount changes before upgrading to 1.37. Admins of clusters without SELinux enabled can ignore this release note, as nothing changes for them. (#139956, @jsafrane) [SIG API Machinery, Apps and Node]PodGroupTemplateRef to a simpler and more direct WorkloadRef that is aligned with the CompositePodGroup planned future changes. (#140080, @dom4ha) [SIG API Machinery, Apps, Etcd, Node, Scheduling and Testing]context.TODO. Consumers of client-go are encouraged to switch to the new APIs and therefore they get marked as Deprecated. However, there is no plan to ever remove the old APIs. (#129109, @pohly) [SIG API Machinery, Apps, Auth, Instrumentation, Node and Testing]kubectl get -o kyaml is promoted to stable. (#140076, @soltysh) [SIG CLI]FailedToRetrieveImagePullSecret events if an image pull has failed. (#138432, @Jamstah) [SIG Node]422 required errors for apply requests that previously succeeded. (#140294, @jpbetz) [SIG API Machinery, Architecture, Auth, CLI, Cloud Provider, Cluster Lifecycle, Instrumentation, Network, Node, Scheduling, Storage and Testing]<driver>-<pod UID>-reg.sock,
then <driver>-<hashed UID>-reg.sock, then dra-<hashed driver+UID>-reg.sock. (#139623, @vishalanarase) [SIG Node and Testing]PodScheduled=False condition. (#139602, @nojnhuh) [SIG Node and Scheduling].includes function, and macros can now be evaluated even when the ListTypeAttributes feature gate is disabled in the scheduler to avoid users from facing errors during rolling-upgrade or flipping the feature gate scenario. (#139395, @everpeace) [SIG Node]pods/binding endpoint now validates the specified node name consistently. (#136776, @yakir-shriker) [SIG Apps and Scheduling]priority or priorityClassName. (#136705, @sreeram-venkitesh) [SIG Node]| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | 834ebfaf9f6e895d3a74d31e0c046a19a9c499a0ce0f7dcbb4695fc85f8e5ab63fe8afff2639c152f4aace8d4ec72b9e849f926300a8a0f11548298a394e175d |
| kubernetes-src.tar.gz | 2d6fc271a71bc6105428fa29837163fe5089f9dad28add0393c43d8d693be36cdbc179919f5cec21758e260edf85601420228e6105b0906a29b86567a2a3d61d |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | 86d617eca510a1de567120eadb2f6a45a38506abb495325b213766c25168f8dfb108a04c7a24d74b7252d110e02770f68e681f61c27cdcd2a53e849cdf472398 |
| kubernetes-client-darwin-arm64.tar.gz | 16fd148c6bb335f5507a329ece30762cd624ff8e4cf776ff84110ced1be2a478e4cc412b66624a982ca1e701271eaa2cfc11674b6c56b95124dd6fc21868e157 |
| kubernetes-client-linux-386.tar.gz | 1a734b4e839c25bc2b50cd764af075aabbabdf054855ed2762ca2eb1648f11fe047382ea888817cb27854d9cfed320896bb2251e16a68d1ea6d2add6c85c239e |
| kubernetes-client-linux-amd64.tar.gz | f619cb6ae2b2907134f9624521169996f8501c20f2d430bd2909e422e4501442d4840714673954902f11ef51867ab688ce79979e62c74542d19e377d7835e21a |
| kubernetes-client-linux-arm.tar.gz | 70b83e9e72c4f75ac1e0925229e1bb55e358a7e14833a2c9878d09228a3b94ced4eed62b90ac6a257fb1e93ae3019da4a86219a4489b9a937c023b04bf1bc092 |
| kubernetes-client-linux-arm64.tar.gz | a60bd2e8ff138b9be87054fce9ba43a5ae721d2c7922bad97a34ba2610e157746c376bc267ee62fb2fefed9e446dcc517c601efa5231eb965865c55f7e5fba5a |
| kubernetes-client-linux-ppc64le.tar.gz | ca201806431e2ffc7bddb355c4f194d738222f53288ead2a008d16c44ef494d5ee58da529f578b921ee13ca239527454b8556ab28b9dce1511dd852801a5e2d9 |
| kubernetes-client-linux-s390x.tar.gz | a87ac2544a04c9cd7de5d80e4e9e0f933dcb05deee6fa0734999a6befacbf01e58eb060c249528e9ab08c6e45ddf8dbf637d1f293670c6ff33366f5255e6ca46 |
| kubernetes-client-windows-386.tar.gz | f2d124c66d95496e55829b314ba29eba6fa494e44004a05272c7b6138dd98082695557d666d9466501390c6895b8eb374bcacffe71449e908a30efbc69a3816c |
| kubernetes-client-windows-amd64.tar.gz | 1d6d31f249a283f576d4a75b95b802069b0d338b9e54a6d983eb7a595a5f6b110f38bcdb60ef90a030e96ab06e6d8666632f9cd720ed22bb07208d9041682310 |
| kubernetes-client-windows-arm64.tar.gz | f4231567a6f99f94de243b42386c76cc577ae465de6550fc4f0889c9c1c8c195dfabd2c88351875bb8e90146df9958776ba86eeed0a3650efb46e343991f90a5 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | d13945b5e4fbcba87abbde01649f0f75bbd5121e1eadfd74a2f8f03c370ba68accd2d46694b9a94077e07e1655562b53025d43d33aa11e9e3714759fd8b80e65 |
| kubernetes-server-linux-arm64.tar.gz | 210ecd08861ad00a5c712128ca03eda5d23bf7570d026f65cabd5161f296006b47f3c56eb8ce703d0064f27c7e6be4fe2749d87011c9ce5d15c5071de714eabc |
| kubernetes-server-linux-ppc64le.tar.gz | c71e9f31155b4c16e63c5d90dbd75b48e80a3960b25cede95ff4aaedf1abfbd707f8b9a7cf39925b1134a4958887362b1147886a3690aae577521edd9ef06ecf |
| kubernetes-server-linux-s390x.tar.gz | 55e5661fdb982c7922534d39e79c5cf6d15fe158fd97009ec1a9fd7c320eb2f513e3071464bc22731a87b6d6023becda47887370233dd9ec5fa259f5c8b2c82e |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | 36327dca5cfcbcd934cff975066e98d4a503da63f8889028f367a12519dad0a3cd8d5268fb7d07ba2ccc4a6e55ccc822d04fe2059bcc6117d2872441f822ce5b |
| kubernetes-node-linux-arm64.tar.gz | dda000d9f40e21f48d3d52c728e26eb9b7677dccaf6c596869e2ddbdc436ce98429e37676fe7792e7b6246d725210d8fe79307bc159e40d42763c25ec533fb99 |
| kubernetes-node-linux-ppc64le.tar.gz | 2a4f6e5f2e90f4bc99f39f7bac1d8ebcd52e3a606e614c6ebf44c1306c30a0fd1076be8b3ab7852dba2e227c3b18288c843265110cd8728058151277cee5086b |
| kubernetes-node-linux-s390x.tar.gz | f82fd679ce1a80dfec4b91856fdac268dd8cc135e4bb7eb9734c5a437d856721314c3c2b6d4bf4e3a419eff6c3e8ddccf65d209fd60d1b96bf45c9162c8924d1 |
| kubernetes-node-windows-amd64.tar.gz | 439bf15f4e0bc4fbea622747a83ed6ecb02d931b84b4ab4abe729334038237db0029d4a9cc262494945c869533b5b1afeae14a324a0be6cc49423859646d2165 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
NodeSyncPeriod field was moved from KubeCloudSharedConfiguration to CloudControllerManagerConfiguration.NodeLifecycleController.NodeMonitorPeriod (#137964, @niewysoki) [SIG API Machinery, Apps, Cloud Provider, Instrumentation and Node]CBORServingAndStorage feature gate is enabled. (#139632, @benluddy) [SIG API Machinery and Testing]WebhookRoundTripLoadBalancing feature gate (Beta, default true). (#139237, @aojea) [SIG API Machinery and Testing]WatchListCompression feature gate (Beta, enabled by default).
When enabled WatchList responses are compressed with gzip for clients that include Accept-Encoding: gzip. Regular Watch requests are unaffected. (#139308, @p0lyn0mial) [SIG API Machinery]status.active as 0 while replacement Pod creation was deferred due to pod-failure backoff, causing the Job status update to be rejected by the apiserver. This could delay flushing uncounted terminated Pods, finalizer removal, and Job status updates, leaving Pods stuck Terminating and the Job with stale status until the backoff elapsed. (#139457, @akhilsingh-git) [SIG Apps]PodReadyToStartContainers condition now includes a diagnostic message when Status is False, explaining why the pod sandbox is not ready (e.g., "pod sandbox has no IP address", "no pod sandbox exists"). This improves debuggability for pods stuck in ContainerCreating state without requiring access to node logs. (#135300, @harche) [SIG Node]prefer-closest-numa-nodes policy option is enabled on a windows node that does not expose NUMA distance information, explaining that the option is not supported there. (#139760, @zylxjtu) [SIG Node]service/proxy subresource of the apiserver now uses the EndpointSlices
of the service rather than the Endpoints. (This will have no effect unless you
were previously using that API with a Service for which you constructed the
Endpoints by hand and disabled EndpointSlice mirroring of them.) (#134860, @danwinship) [SIG API Machinery and Network]Nothing has changed.
Nothing has changed.
| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | 9fd5423640e5935366e023dd22c62e9fca12405937c2411e81cc3ca2fc28255a43984bb736a2c4cc30189791d30a79b62e82aa5a80b065ce5b32171a95942a61 |
| kubernetes-src.tar.gz | e142c1afc4ff99f21bc928354d3eca1508c8ed34cc98952bf75b2ab6171da83864e15218a4669bc555964cbcbddc759ba12ac7cb989a2afa00312e03e56f9fab |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-amd64.tar.gz | adcd35338556cfb80dee5a093d769a89d551609dd8b1d8f5c075bdcf1abd956f13fb1a90b262f47bd99c2b5d8b89db018dbaa818881021d44fef7e072898f09c |
| kubernetes-client-darwin-arm64.tar.gz | 02e2a54db5dc24b8661e44030e09695078a64a615ca94862edbd222a4c5955c1fa2ae9df6d54329d93b3e329720d6f097f9f32dee0118e612df225ee16d67755 |
| kubernetes-client-linux-386.tar.gz | 9cc9c69c6d76a6afb214a72a5fb06995ed91f6026cc592e64aa94eff3c76a119fc486ddb2ce6a2ca6ab4adf17d48ceb89aae4cd801c572b9128c9e968041e753 |
| kubernetes-client-linux-amd64.tar.gz | 6979e554e427dd993b32ca218cfc727f6bccbdc50981251626ab9b1a72c22b270467d27ebcfa7cb6ece7b41d6584e42086886f76a74be3c5cd79b0f4cb5c1c4c |
| kubernetes-client-linux-arm.tar.gz | 6c925eb12c287a5cc8860d639176f814255f91bb3f28e4c526137474231e47cbfa2e67176ead7d783a77633b104cf976a523d07f9b784470555c0b5e1c53adc6 |
| kubernetes-client-linux-arm64.tar.gz | 37a440504570ccdf8a247b6e148c5b4c249697bd4f42546746de5fadd11bab393a56802c92c363d77e621604721560282d1f482a463e546102e41d2a032c95ac |
| kubernetes-client-linux-ppc64le.tar.gz | 08fe5ef61e41ac33c39492e527ebf292e8758fc319e2a3dc8535d454de16161a1c8e77c1c988f44d5b0f5ccab14f97a7587ebaa633ea794e39ac17e18f8288cc |
| kubernetes-client-linux-s390x.tar.gz | 5c1a0e0a94da2a70c67c2a0e3ecc94c1c914d5bbcc49f81b62e9c3141aa3661e59e8e73f908738674cbbbbdee3fea88636f4e1bf742309db86bc12c916744e66 |
| kubernetes-client-windows-386.tar.gz | 7bc268f0352c671e7c30aadcc0af3976960cb0f43efcafd3966ebb99de236a88c53d04deed9fb831b891440319e280239ab9bcc1d9eecb27d5f665ccdf8f143e |
| kubernetes-client-windows-amd64.tar.gz | cd44efdb02873ea13792931621882bb4c8834839874e2aa6cb97293995212a3fa09237dffb014b9510dc09b8638d71e259d44830bdd8b52315c33f5db6c798ce |
| kubernetes-client-windows-arm64.tar.gz | e377ffb371bb61de9e93d8f3f4048768a1ff28bad8682f80cc520e477e1a43e01b5d0c076fdaf8d44ed464cc0dfb9a97f3ecf33aed2fd3b062221278a9ebe2c4 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | e88c3f6312ae9567706c0c9ea4558c32ba1e86523d07d1d12d5d8460aa759db44f84c7949806a1c2cddde8cc482d99cace4aca88685e20a5ddfac32f9de76386 |
| kubernetes-server-linux-arm64.tar.gz | adf4468c0bb18b2d2ea315dbebf55eb2ed17cd1eb951cafc180b141f0a6fe9302f6c446d760aedc177fb9c14e9cdaf7fd59f8fed9b2511fb713aa33d28c6f847 |
| kubernetes-server-linux-ppc64le.tar.gz | 26e52f7ce483fbef715162a98ff7506fdd6ee659c2dabfd0a3600e63e1b0a31762451093c3ed2683e50287ba82b057d19388f061e2f06a92a5cc4398ac62f128 |
| kubernetes-server-linux-s390x.tar.gz | d19ab25c6914aa6dd2b74398df9d455d37c40784520394399c57a8416a811fc16d4becc048168def681f3c964089ef0ce2de8074d9029829156d9e344ae4feca |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | 6e27d1b85181f3642a8c1dcf39243ce6a6c54913529ddf4a0a42884c233da462d3cc0db7bc223272889c2281f7a4d2be69c6327fe49bf9827331373168e818f1 |
| kubernetes-node-linux-arm64.tar.gz | f1a6bc663c3226bba06b1a78580e27e1de2f311832e94c30213933b97cbb8ad66a75e6707942cf4aaa8b30c4d2313a799c52b019468783ebaca37874c04bb207 |
| kubernetes-node-linux-ppc64le.tar.gz | 7e27887af5ef9c20d761ba43a2ec593569962f5aa8a2d854d73cf8ed88b94833f841359a622861817c2759fad4c1ae00bb54c55964168a588da29458aa3530ab |
| kubernetes-node-linux-s390x.tar.gz | 01013b8b020c46562269e1137aaecbfb6171468a08e3ba38238cdb1df0ad46bac8f3e138fb6c8d3c14b81041cce99e409d09cd54a932fb04036cba70673b85fe |
| kubernetes-node-windows-amd64.tar.gz | 6ae104549e49dff89004b252ad0712c137f33b51ffbc56ff0b3ad3147ba6608c8d76ed1e08fb7372a12b14c7ba75d88801e45e9013b433149805a17ca61f7f66 |
All container images are available as manifest lists and support the described architectures. It is also possible to pull a specific architecture directly by adding the "-$ARCH" suffix to the container image name.
--filename/-f flag on kubectl run. (#138671, @Suknna) [SIG CLI]DeclarativeValidationTakeover feature gate is now locked to its default value and can no longer be set. (#139212, @yongruilin) [SIG API Machinery]",inline" to simply "". inline was not a recognized json serializer option and did not modify marshal or unmarshal behavior. (#138260, @liggitt) [SIG API Machinery, Apps, Architecture, Auth, CLI, Cloud Provider, Cluster Lifecycle, Etcd, Instrumentation, Network, Node, Scheduling, Storage and Testing]DisruptionMode enum field to struct to support future extensibility.
Promotes the scheduling.k8s.io API group from v1alpha2 to v1alpha3 and drops v1alpha2 entirely.
Remember to remove all v1alpha2 objects from the api-server while performing the cluster update. (#138572, @dom4ha) [SIG API Machinery, Apps, CLI, Etcd, Node, Scheduling and Testing]observedGeneration at the time the condition was recorded (#138653, @adrianmoisey) [SIG API Machinery, Apps, Autoscaling and Testing]storage_operation_duration_seconds, volume_operation_total_seconds) from Alpha to Beta stability, providing stronger API and label stability guarantees for metric consumers. (#136189, @bhope) [SIG Instrumentation and Storage]AnyVolumeDataSource, which was locked and enabled since 1.33. (#135336, @carlory) [SIG API Machinery, Apps, Storage and Testing]PodStatusResult type from the Kubernetes API. This type had no REST endpoint and has been unused since 2015. (#136271, @adityasharmawork) [SIG API Machinery, Apps, Node and Testing]SIGNAL_ in api.proto definition to avoid conflicts with C++ macroses. The wire format is unchanged. (#139251, @SergeyKanzhelev) [SIG Apps, Node and Testing]Add new KubeProxyIPVS feature gate in preparation of deactivating and then removing the ipvs mode of kube-proxy. (#139397, @adrianmoisey) [SIG Network]
Added Prometheus metrics for Windows kube-proxy (winkernel) load balancer operation failures: kubeproxy_sync_proxy_rules_winkernel_lb_create_failures_total, kubeproxy_sync_proxy_rules_winkernel_lb_update_failures_total, and kubeproxy_sync_proxy_rules_winkernel_lb_delete_failures_total. Each metric includes ip_family, lb_type, and error labels for fine-grained failure observability. (#137767, @princepereira) [SIG Instrumentation, Network and Windows]
Added ServiceName, PodManagementPolicy, and PersistentVolumeClaimRetentionPolicy to kubectl describe statefulset output. (#137547, @kfess) [SIG CLI]
Added AnnotatedEventf method to the new events API (EventRecorder and EventRecorderLogger interfaces in client-go/tools/events), enabling callers to attach custom annotations to events at creation time. (#138103, @adri1197) [SIG API Machinery and Node]
Added net.ipv4.tcp_slow_start_after_idle and net.ipv4.tcp_notsent_lowat to the allowed safe sysctls list. (#138389, @gheffern) [SIG Auth, Network and Node]
Added an alpha feature gate, ConsistentListFromCacheSkipTimeoutFallback. When enabled, kube-apiserver returns HTTP 429 for consistent LIST requests that cannot be served from watch cache within the timeout window, instead of falling back to storage. (#138701, @yedou37) [SIG API Machinery]
Added metric apiserver_watch_cache_initialization_duration_seconds recording the duration of the most recent watch cache initialization, labeled by group and resource. (#138767, @Jefftree) [SIG API Machinery and Instrumentation]
Added scheduler extension point "PlacementFeasible" to allow for early termination of PodGroup scheduling cycle. This extension point is used by the GangScheduling plugin to stop evaluating pods once minCount becomes unsatisfiable. (#138643, @brejman) [SIG Scheduling and Testing]
Added structured CauseType values to PodDisruptionBudget-related eviction Forbidden errors in the eviction API, allowing clients to programmatically distinguish PDB invalid-state errors from other forbidden errors without string-matching on the message. (#138003, @shady0503) [SIG Apps, Auth and Node]
Added support for testing invariant metrics in integration tests. (#137883, @lalitc375) [SIG API Machinery, Auth and Testing]
Added the EtcdRangeStream beta feature gate. The watch cache initializes by streaming objects from etcd in a single RangeStream RPC instead of paginated Range requests. (#136915, @Jefftree) [SIG API Machinery, Architecture, Auth, CLI, Cloud Provider, Cluster Lifecycle, Etcd, Instrumentation, Network, Node, Scheduling, Storage and Testing]
Adds the +k8s:dependentRequired("siblingJSONName") declarative validation tag. When the tagged field is set, the named sibling must also be set (#139164, @yongruilin) [SIG API Machinery]
After successful pod group preemption, the pods from pod group will have their Nominated Node Name set, similarly to pod preemption (#138967, @antekjb) [SIG Scheduling and Testing]
Apply --field-selector to pod metrics when invoking kubectl top pod (#139107, @Mujib-Ahasan) [SIG CLI]
Binding API calls in kube-scheduler are now retried when a transient error occurs. (#138855, @antekjb) [SIG Scheduling]
Bump coredns to 1.14.3 (#138536, @yashsingh74) [SIG Cloud Provider and Cluster Lifecycle]
Changed the PatchPodStatus API in the scheduler framework to accept a slice of Pod conditions ([]*v1.PodCondition) instead of a single condition (*v1.PodCondition). This allows scheduler plugins to update multiple Pod conditions in a single API call, preventing newer calls from overwriting older ones when multiple conditions need to be updated concurrently. (#135160, @KunWuLuan) [SIG Scheduling]
Ensure stale cache does not impact the marking of nodes as unhealthy by checking with a live get (#138698, @michaelasp) [SIG Apps, Auth and Node]
Errors coming from pod group preemption are now prefixed with pod group preemption: message. (#139218, @Argh4k) [SIG Scheduling]
Functions and structs that take in authorizer.Authorizer might now choose to accept only a smaller interface, authorizer.UnconditionalAuthorizer, in case only the receiver only needs to perform unconditional authorization requests and wants to signal this in the code for clarity. Any authorizer implementation must still implement the full authorizer.Authorizer interface. (#138801, @luxas) [SIG API Machinery, Auth, Node, Scheduling and Testing]
Graduate WatchCacheInitializationPostStartHook to GA (#139452, @serathius) [SIG API Machinery]
Kube-controller-manager: The HPA controller now defers syncing an HPA object when the controller has not yet observed HPA status writes from the last time the object was synced. (#139025, @omerap12) [SIG Apps and Autoscaling]
Kube-scheduler now supports PodGroups in its scheduling queue. The active, backoff, and unschedulable queues have been abstracted to store QueuedEntityInfo (handling either individual pods or pod groups). (#138567, @macsko) [SIG Instrumentation, Scheduling and Testing]
Kube-scheduler: Added PlacementCycleState to the scheduling framework, providing per-placement state to PlacementScore plugins under the alpha TopologyAwareWorkloadScheduling feature gate. (#138274, @wtravO) [SIG Scheduling]
Kubeadm: add the "kubeproxydaemonset" patch target to allow patching the kube-proxy DaemonSet during "kubeadm init" and "kubeadm upgrade", consistent with the existing "corednsdeployment" patch target. (#138090, @SataQiu) [SIG Cluster Lifecycle]
Kubeadm: during preflight, instead of running the "Port-xx" checks for kube-apiserver, kube-scheduler, kube-controller-manager and etcm using a "net.Listen()" call without an address (which instructs the operating system to bind to all available unicast and anycast IP addresses for a given port), pass an address which is configured in the kubeadm config for the respective components either using the "localAPIEndpoint.address" field or using the "--bind-address" extraArgs override. (#138250, @lentzi90) [SIG Cluster Lifecycle]
Kubeadm: removed the NodeLocalCRISocket feature gate which graduated to GA and was locked to enabled by default in a previous release. (#138645, @neolit123) [SIG Cluster Lifecycle]
Kubeadm: the preflight check ContainerRuntimeVersion validates if the installed container runtime supports the RuntimeConfig gRPC method. For older kubelet versions than 1.38, it will return a preflight warning. (#139122, @carlory) [SIG Cluster Lifecycle]
Kubectl now sets its path in the KUBECTL_PATH environment variable when executing a plugin. (#138694, @brianpursley) [SIG CLI and Testing]
Kubelet: defer the configurations flags (and the related fallback behavior) deprecation removal timeline from 1.37 to 1.38 to align with containerd v1.7 support (#139121, @carlory) [SIG Node and Testing]
Kubernetes is now built using Go 1.26.4 (#139584, @cpanato) [SIG Release and Testing]
Kubernetes is now built with Go 1.26.3 (#138864, @BenTheElder) [SIG Release]
Kubernetes is now built with Go 1.26.4 (#139479, @BenTheElder) [SIG Release]
Made it possible for authorizers to return conditional decisions in addition to unconditional (Allow/Deny/NoOpinion). (#137204, @luxas) [SIG API Machinery, Auth, Node, Scheduling and Testing]
Optimized CEL admission policy evaluation by adopting a lazy zero-allocation reflection-based utility for object traversal, significantly reducing CPU usage and garbage collection overhead during request processing. (#138771, @lalitc375) [SIG API Machinery, Architecture, Auth, CLI, Cloud Provider, Cluster Lifecycle, Network, Node, Scheduling and Storage]
Promote serviceaccount_legacy_tokens_total, serviceaccount_stale_tokens_total, serviceaccount_valid_tokens_total to beta (#137072, @tico88612) [SIG Auth, Instrumentation and Testing]
Promote the apiserver webhook apiserver_webhooks_x509_missing_san_total and apiserver_webhooks_x509_insecure_sha1_total metrics to BETA and update their documentation. (#136894, @LoginovIlia) [SIG API Machinery, Instrumentation and Testing]
The MaxUnavailableStatefulSet feature is now enabled by default. (#139466, @soltysh) [SIG Apps]
The apiserver_storage_list_* metrics now include storage and index labels to distinguish the storage backend and lookup path used to serve LIST requests. (#139125, @yedou37) [SIG API Machinery, Etcd and Instrumentation]
The scheduler now avoids redundant preemption attempts during PodGroup scheduling when terminating victim pods are already present on the nominated nodes. (#138710, @mm4tt) [SIG Scheduling]
Three different subtypes of the cluster event resource "Pod" are being added: "AssignedPod", "UnscheduledPod", "TargetPod". Plugins can and are expected to register to specific pod events for better performance. (#135905, @iomarsayed) [SIG Node, Scheduling, Storage and Testing]
Updated cri-tools to v1.36.0. (#138613, @saschagrunert) [SIG Cloud Provider and Node]
Workload-aware preemption now preempts victims so that as many as possible of the preemptor pods can be scheduled. (#138757, @jdzikowski) [SIG Scheduling and Testing]
kubectl get crd now displays additional columns—GROUP, SCOPE, VERSIONS, and CREATED AT—alongside NAME.
This provides at-a-glance visibility into the API group, scope (Cluster‑ or Namespaced), served versions (comma‑separated), and exact creation timestamp of each CustomResourceDefinition. (#131599, @jaehanbyun) [SIG API Machinery]
Fixed a nil pointer dereference panic in client-go event recorder when processing events with nil fields.
Additional documentation e.g., KEPs (Kubernetes Enhancements Proposals), usage docs, etc.:
N/A
/sig api-machinery /area client-libraries /priority important-soon (#135925, @jianzhangbjz) [SIG API Machinery]
Update Japanese translation for kubectl (#131176, @yude) [SIG CLI and Testing]
.status.resourceClaimStatuses could flap between partial lists of claims, when multiple claims were used in the pod. (#138408, @johnbelamaric) [SIG Apps and Node]kubectl drain --disable-eviction --dry-run=server hangs indefinitely. (#137543, @kfess) [SIG CLI and Testing]syncProxyRules could take tens of seconds in clusters with many Services because GetAllLocalAddressesExcept issued one full netlink address dump per interface. The function now issues a single dump per address family, reducing syncProxyRules latency by orders of magnitude on large clusters. (#138927, @ytcisme) [SIG Network]allocationMode: All selects a device that consumes shared counters. (#138885, @takonomura) [SIG Node]metadata.generation and status.observedGeneration fields in HorizontalPodAutoscaler resources (#138228, @adrianmoisey) [SIG API Machinery, Apps, Autoscaling and Testing]image.reference fields in Pod templates (Deployment, StatefulSet, DaemonSet, Job, etc.). (#135989, @Okabe-Junya) [SIG Apps and Node]--advertise-address IP when using --endpoint-reconciler-type master-count or lease to ensure the specified IP address can be persisted to an Endpoints API object successfully. (#138102, @kairosci) [SIG API Machinery]apiserver_watch_events_total and apiserver_watch_events_sizes to BETA (#137116, @tico88612) [SIG API Machinery, Instrumentation and Testing]RetryGenerateName, BtreeWatchCache, OrderedNamespaceDeletion, StreamingCollectionEncodingToJSON, StreamingCollectionEncodingToProtobuf, APIServerTracing, ResilientWatchCacheInitialization, and ConsistentListFromCache. (#138907, @Jefftree) [SIG API Machinery, Apps, Etcd and Node]--concurrent-service-syncs kube-controller-manager flag (no-op since v1.31). (#138002, @Jefftree) [SIG API Machinery]KubeletMinVersion label from the DRA e2e test covering multiple ResourceClaims. (#138001, @rogowski-piotr) [SIG Node and Testing]apiserver_cache_list_total, apiserver_cache_list_fetched_objects_total, and apiserver_cache_list_returned_objects_total are no longer exposed by default.apiserver_storage_list_* metrics with storage="watchcache" label. (#139154, @yedou37) [SIG API Machinery and Instrumentation]DefaultWatchCacheSize field of k8s.io/apiserver/pkg/server/options.EtcdOptions is now removed. (#134151, @ialidzhikov) [SIG API Machinery]