Commit Graph

55611 Commits

Author SHA1 Message Date
Michael Aspinwall
bb2bb3cd74 Gate setting memory QoS behind feature gate 2026-04-16 23:34:26 +00:00
Samarth Verma
064f0956ad scheduler: address recreated pod review feedback 2026-04-14 10:14:36 -04:00
Samarth Verma
48c8f0deb1 scheduler: skip requeueing recreated pods on scheduling failure 2026-04-13 11:53:50 -04:00
Samarth Verma
dc47d8840d scheduler: fix inFlightPods leak when pod is recreated during scheduling failure
handleSchedulingFailure can refresh podInfo from the informer before AddUnschedulableIfNotPresent. A delete and recreate with the same name may change the Pod UID while inFlightPods still tracks the UID from Pop, so Done and queueing-hint lookups must use that in-flight UID.

Add an explicit in-flight UID parameter, thread it through queueing-hint lookups, cover the same-name recreation case with a regression test, and check the returned error in updated test call sites.
2026-04-12 12:28:52 -04:00
Kubernetes Prow Robot
0275382260 Merge pull request #138244 from fanzhangio/device-manager-numa-fix
devicemanager: constrain topology hints to device NUMA nodes
2026-04-10 18:48:20 +05:30
Kubernetes Prow Robot
40007b6452 Merge pull request #138210 from Mujib-Ahasan/featuregate-WorkloadWithJob
Rename feature gate `EnableWorkloadWithJob` to `WorkloadWithJob`
2026-04-09 23:12:21 +05:30
Fan Zhang
3b5f150153 devicemanager: constrain topology hints to device NUMA nodes
On platforms with many OS-visible NUMA nodes that carry no devices
(e.g. NVIDIA GB200 with 36 NUMA nodes, only 1–2 hosting GPUs),
IterateBitMasks enumerates O(2^n) combinations and stalls the
kubelet for minutes.

Introduce deviceNUMANodes(), which collects the NUMA node IDs from
all registered devices for a resource regardless of allocation state.
generateDeviceTopologyHints() now iterates only over those nodes,
reducing n from 34 to 1–2 on affected hardware.

This fix uses allDevices ensures minAffinitySize and Preferred flags
are computed identically for behavior-preserving, making safe for
backport.

deviceNUMANodes() has a explicit runtime subset guard to guarantee to
return a subset of cadvisor-reported NUMA topology, regardless what
device-plugins report.

Kubernetes-bug: https://github.com/kubernetes/kubernetes/issues/135541

Signed-off-by: Fan Zhang <fanzhang@nvidia.com>
2026-04-09 10:32:44 -07:00
Jefftree
8254743864 Pin MutatingAdmissionPolicy storage version to v1beta1 2026-04-08 23:44:34 -04:00
Omer Aplatony
cfe5b54d0a Adds polling for HPA reconciliation_duration unit test (#138059)
* Adds polling for HPA reconciliation_duration unit test

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* using struct name

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

---------

Signed-off-by: Omer Aplatony <omerap12@gmail.com>
2026-04-07 21:45:33 +05:30
Mujib Ahasan
bfe8f6b729 lint small fix
Signed-off-by: Mujib Ahasan <ahasanmujib8@gmail.com>
2026-04-04 20:19:57 +05:30
Mujib Ahasan
b9b0ff440d remove accidently commited file
Signed-off-by: Mujib Ahasan <ahasanmujib8@gmail.com>
2026-04-04 12:53:30 +05:30
Kubernetes Prow Robot
eb8032bb83 Merge pull request #138030 from askervin/5gH-kubelet-fix-nodeAllocatableResourceClaimStatuses
kubelet: do not destroy nodeAllocatableResourceClaimStatuses
2026-04-01 07:12:12 +05:30
Kubernetes Prow Robot
1ecdebcb76 Merge pull request #138049 from ndixita/pod-events-fix
Pod events fix
2026-03-30 07:36:11 +05:30
ndixita
3e7c6e3c83 Simplify isPodLevelResourcesResizeInProgress to check for absence of actuated resources
Signed-off-by: ndixita <ndixita@google.com>
2026-03-27 23:03:20 +00:00
Kubernetes Prow Robot
16c5a6be07 Merge pull request #138024 from tallclair/push-vkpxrwntwkxk
Fix race condition in updating the PodStatus cache
2026-03-27 04:50:17 +05:30
Natasha Sarkar
ba1ac16d2b fix erroneously reporting a PLR resize in progress on pod creation 2026-03-26 20:51:18 +00:00
Tim Allclair
65cc1c23a5 Fix race condition in updating the PodStatus cache 2026-03-26 17:47:17 +00:00
Kubernetes Prow Robot
3fea8a2fef Merge pull request #134947 from aojea/dra_status_check
Fine-grained Authorization for ResourceClaim Status Updates
2026-03-26 22:34:18 +05:30
Antonio Ojea
adbf3b5aa5 Add granular authorization for DRA ResourceClaim status updates
This commit introduces the DRAResourceClaimGranularStatusAuthorization
feature gate (Beta in 1.36) to enforce fine-grained authorization checks
on ResourceClaim status updates.

Previously, 'update' permission on 'resourceclaims/status' allowed modifying
the entire status. To enforce the principle of least privilege for DRA
drivers and the scheduler, this change introduces synthetic subresources and
verb prefixes:

- 'resourceclaims/binding': Required to update 'status.allocation' and
  'status.reservedFor'.
- 'resourceclaims/driver': Required to update 'status.devices'. Evaluated
  on a per-driver basis using 'associated-node:<verb>' (for node-local
  ServiceAccounts) or 'arbitrary-node:<verb>' (for cluster-wide controllers).
2026-03-26 13:22:09 +00:00
Kubernetes Prow Robot
b30567c744 Merge pull request #135828 from HirazawaUi/5607-alpha-2-stage
Kubelet: Add alpha-2 stage implementation for UserNamespacesHostNetworkSupport feature gate
2026-03-26 15:08:18 +05:30
Antti Kervinen
9fd706ccd9 kubelet: do not destroy nodeAllocatableResourceClaimStatuses
The kubelet status manager was not preserving the
pod.status.nodeAllocatableResourceClaimStatuses field set by the
scheduler during pod status merges. This caused the information to the
to be destroyed by the kubelet's next status sync, making the field
always appear empty.

Add the same preservation pattern already used for
ResourceClaimStatuses and ExtendedResourceClaimStatus to both
mergePodStatus() and isPodStatusByKubeletEqual().

Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
2026-03-25 19:40:59 +02:00
Kubernetes Prow Robot
1ed5965382 Merge pull request #137946 from liggitt/pleg-reenable
Revert "Switch PLEGOnDemandRelist default to `false` for 1.36"
2026-03-25 15:28:21 +05:30
Kubernetes Prow Robot
da97d71f14 Merge pull request #137897 from nojnhuh/dra-gang
scheduler: fix race in DRA pending allocation sharing
2026-03-24 23:40:18 +05:30
Jon Huhn
61cf993c6b scheduler: fix race in DRA pending allocation sharing 2026-03-24 12:07:31 -05:00
Antoni Zawodny
ccaaf9d3a5 Marry WAP logic with the new API fields 2026-03-24 09:36:00 +01:00
Antoni Zawodny
59c9f75133 Add Workload-Aware Preemption fields to Workload and PodGroup APIs
Co-authored-by: Omar Sayed <omarsayed@google.com>
2026-03-24 09:03:50 +01:00
Jordan Liggitt
0519b8e784 Revert "Switch PLEGOnDemandRelist default to false for 1.36"
This reverts commit 4a69899d8b.
2026-03-24 01:48:19 -04:00
Kubernetes Prow Robot
61d4e7ae86 Merge pull request #137684 from ndixita/ippr-plr-beta-enable
[PodLevelResources] Graduate InPlacePodLevelResourcesVerticalScaling feature to beta
2026-03-24 03:44:16 +05:30
Kubernetes Prow Robot
f999104ffe Merge pull request #137876 from ndixita/plr-ippr-kubelet-bug-fixes
[InPlacePodLevelResourcesVerticalScaling] Plr ippr kubelet bug fixes
2026-03-24 00:32:24 +05:30
Kubernetes Prow Robot
07311a2afa Merge pull request #137606 from Argh4k/workload-preemption-v1alpha2
Add workload aware preemption
2026-03-24 00:32:16 +05:30
Kubernetes Prow Robot
b5a943f629 Merge pull request #136989 from nojnhuh/podgroup-resourceclaim
KEP-5729: DRA: ResourceClaim Support for Workloads
2026-03-23 23:42:17 +05:30
Maciej Wyrzuc
1f15743e49 Add pod group preemption 2026-03-23 16:22:32 +00:00
Maciej Wyrzuc
0218e0d632 Add option to backup and restore node info snapshot 2026-03-23 12:30:23 +00:00
Maciej Wyrzuc
1382c96217 Allow cycle state to skip all post filter plugins 2026-03-23 12:30:23 +00:00
Jon Huhn
d80f384b70 Workload API: PodGroup ResourceClaims (KEP-5729) 2026-03-22 14:52:45 -05:00
Kubernetes Prow Robot
553385a39c Merge pull request #137544 from jrvaldes/upstream/1.36-nodelogquery-lock-defualt
[FeatureGate] Promote NodeLogQuery to GA in  v1.36 and lock default to `true`
2026-03-21 22:16:14 +05:30
Kubernetes Prow Robot
ef247770b5 Merge pull request #137190 from everpeace/KEP-5491-alpha
KEP-5491: DRA: List Types for Attributes [Alpha]
2026-03-21 14:18:12 +05:30
Jose Valdes
b12bcfda03 types: remove +featureGate=NodeLogQuery as defaults to enabled 2026-03-21 04:25:42 -04:00
Jose Valdes
cda2805fa6 test: adjust NodeLogQuery feature enabled by default 2026-03-21 04:25:42 -04:00
Jose Valdes
e8a12773c9 feature: promote NodeLogQuery to GA and lock default 2026-03-21 04:25:42 -04:00
Shingo Omura
627ac57e36 KEP-5491: replace "new(bool)" with "new(true)" to fix typecheck error in validation_resourceslice_test.go 2026-03-21 12:33:47 +09:00
Kubernetes Prow Robot
15eaed180f Merge pull request #137028 from nmn3m/feature/dra-resource-pool-status
KEP-5677: Add ResourcePoolStatusRequest API for DRA resource availability visibility
2026-03-21 08:16:13 +05:30
ndixita
3b5b845d27 Promote InPlacePodLevelResourcesVerticalScaling to beta 2026-03-20 20:45:39 +00:00
Kubernetes Prow Robot
08d246509c Merge pull request #137904 from soltysh/disable_maxunavailable
KEP-961: demote maxUnavailable feature in statefulset to off by default
2026-03-20 18:04:16 +05:30
Shingo Omura
b613ed56a2 KEP-5491: change ResourceSliceMaxDevicesWithTaintsOrConsumesCounters to ResourceSliceMaxDevicesWithAdvancedFeatures and add testcases with max devices with list attributes 2026-03-20 20:29:00 +09:00
ndixita
67c57b507a Add tests 2026-03-19 23:43:50 +00:00
Kubernetes Prow Robot
734aeb836d Merge pull request #137015 from nmn3m/contextual-logging-scheduler-events
scheduler: use contextual logging for event emission
2026-03-20 03:12:31 +05:30
ndixita
ecb1f49627 Ensure when pod-level memory is modified, skip cgroup writes, but ensure actuated pod-level resources are updated 2026-03-19 21:24:54 +00:00
Maciej Szulik
f88289dc01 KEP-961: demote maxUnavailable feature in statefulset to off by default
Signed-off-by: Maciej Szulik <soltysh@gmail.com>
2026-03-19 20:47:03 +01:00
Benjamin Elder
33724b9a86 enable PLEGOnDemandRelist in feature unit tests 2026-03-19 11:19:41 -07:00