Commit Graph

54802 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
4d212f7f47 Merge pull request #136558 from saschagrunert/revert-135369-getimageref-logic
Revert GetImageRef to use Image.Id instead of RepoDigests
2026-01-27 21:44:01 +05:30
Kubernetes Prow Robot
3dd404d7cd Merge pull request #136544 from aramase/aramase/c/rm_structured_authz_fg
Drop StructuredAuthorizationConfiguration feature gate
2026-01-27 21:43:52 +05:30
Kubernetes Prow Robot
be658b44f3 Merge pull request #136441 from kannon92/remove-alpha-api-dra
remove alpha comments for GA or beta resource fields
2026-01-27 20:16:00 +05:30
Kubernetes Prow Robot
1087ff613a Merge pull request #136454 from ania-borowiec/log_illegal_state
Log error when UpdatePod finds no existing PodGroup for the pod
2026-01-27 18:01:50 +05:30
Ania Borowiec
48c4605408 Add logging error when UpdatePod finds no existing PodGroup with the pod to update 2026-01-27 11:42:03 +00:00
Kubernetes Prow Robot
5c9977b892 Merge pull request #136202 from RomanBednar/fix-csi-plugin-backoff
csi: raise kubelet CSI init backoff to cover ~140s DNS delays
2026-01-27 15:47:48 +05:30
Sascha Grunert
6b6c596a60 Revert GetImageRef to use Image.Id instead of RepoDigests
Partially reverts cb011623c8 from #135369.

Using RepoDigests[0] as image identity causes credential verification
issues because it makes identity location-dependent (registry.io/image@sha256:...)
instead of content-based (sha256:...). This defeats deduplication and
creates separate pull records for identical image content from different
registries.

ImagePulledRecord already handles per-registry credentials via its
two-level design: ImageRef identifies content, CredentialMapping tracks
registry-specific credentials.

Related: #136498, #136549
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2026-01-27 09:41:04 +01:00
Kubernetes Prow Robot
028015267e Merge pull request #136116 from vinayakankugoyal/ga
KEP:2862 Graduate to STABLE.
2026-01-27 05:09:49 +05:30
Kubernetes Prow Robot
2c9cc8da1a Merge pull request #135763 from darshansreenivas/admissionregistratio_k8s_io_ValidationAction
feat: wire admissionregistration group for declarative validation and +k8s:required to ValidatingAdmissionPolicyBindingSpec.ValidationActions
2026-01-27 03:23:53 +05:30
Anish Ramasekar
a1478c7730 Drop StructuredAuthorizationConfiguration feature gate
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2026-01-26 11:35:39 -06:00
Kubernetes Prow Robot
efc15394a1 Merge pull request #135573 from brejman/issue-129733-score-update
Update scoring function for balanced allocation to consider change to the node's balance
2026-01-26 21:49:52 +05:30
Kubernetes Prow Robot
53b29a3a2c Merge pull request #136269 from pohly/dra-scheduler-double-allocation-fixes
DRA scheduler: double allocation fixes
2026-01-26 20:59:50 +05:30
Patrick Ohly
581ee0a2ec DRA scheduler: fix another root cause of double device allocation
GatherAllocatedState and ListAllAllocatedDevices need to collect information
from different sources (allocated devices, in-flight claims), potentially even
multiple times (GatherAllocatedState first gets allocated devices, then the
capacities).

The underlying assumption that nothing bad happens in parallel is not always
true. The following log snippet shows how an update of the assume
cache (feeding the allocated devices tracker) and in-flight claims lands such
that GatherAllocatedState doesn't see the device in that claim as allocated:

    dra_manager.go:263: I0115 15:11:04.407714      18778] scheduler: Starting GatherAllocatedState
    ...
    allocateddevices.go:189: I0115 15:11:04.407945      18066] scheduler: Observed device allocation device="testdra-all-usesallresources-hvs5d.driver/worker-5/worker-5-device-094" claim="testdra-all-usesallresources-hvs5d/claim-0553"
    dynamicresources.go:1150: I0115 15:11:04.407981      89109] scheduler: Claim stored in assume cache pod="testdra-all-usesallresources-hvs5d/my-pod-0553" claim="testdra-all-usesallresources-hvs5d/claim-0553" uid=<types.UID>: a84d3c4d-f752-4cfd-8993-f4ce58643685 resourceVersion="5680"
    dra_manager.go:201: I0115 15:11:04.408008      89109] scheduler: Removed in-flight claim claim="testdra-all-usesallresources-hvs5d/claim-0553" uid=<types.UID>: a84d3c4d-f752-4cfd-8993-f4ce58643685 version="1211"
    dynamicresources.go:1157: I0115 15:11:04.408044      89109] scheduler: Removed claim from in-flight claims pod="testdra-all-usesallresources-hvs5d/my-pod-0553" claim="testdra-all-usesallresources-hvs5d/claim-0553" uid=<types.UID>: a84d3c4d-f752-4cfd-8993-f4ce58643685 resourceVersion="5680" allocation=<
        	{
        	  "devices": {
        	    "results": [
        	      {
        	        "request": "req-1",
        	        "driver": "testdra-all-usesallresources-hvs5d.driver",
        	        "pool": "worker-5",
        	        "device": "worker-5-device-094"
        	      }
        	    ]
        	  },
        	  "nodeSelector": {
        	    "nodeSelectorTerms": [
        	      {
        	        "matchFields": [
        	          {
        	            "key": "metadata.name",
        	            "operator": "In",
        	            "values": [
        	              "worker-5"
        	            ]
        	          }
        	        ]
        	      }
        	    ]
        	  },
        	  "allocationTimestamp": "2026-01-15T14:11:04Z"
        	}
         >
    dra_manager.go:280: I0115 15:11:04.408085      18778] scheduler: Device is in flight for allocation device="testdra-all-usesallresources-hvs5d.driver/worker-5/worker-5-device-095" claim="testdra-all-usesallresources-hvs5d/claim-0086"
    dra_manager.go:280: I0115 15:11:04.408137      18778] scheduler: Device is in flight for allocation device="testdra-all-usesallresources-hvs5d.driver/worker-5/worker-5-device-096" claim="testdra-all-usesallresources-hvs5d/claim-0165"
    default_binder.go:69: I0115 15:11:04.408175      89109] scheduler: Attempting to bind pod to node pod="testdra-all-usesallresources-hvs5d/my-pod-0553" node="worker-5"
    dra_manager.go:265: I0115 15:11:04.408264      18778] scheduler: Finished GatherAllocatedState allocatedDevices=<map[string]interface {} | len:2>: {

Initial state: "worker-5-device-094" is in-flight, not in cache
- goroutine #1: starts GatherAllocatedState, copies cache
- goroutine #2: adds to assume cache, removes from in-flight
- goroutine #1: checks in-flight

=> device never seen as allocated

This is the second reason for double allocation of the same device in two
different claims. The other was timing in the assume cache. Both were
tracked down with an integration test (separate commit). It did not fail
all the time, but enough that regressions should show up as flakes.
2026-01-26 15:44:48 +01:00
Kubernetes Prow Robot
584add12b6 Merge pull request #136457 from tosi3k/workload-helper
Extract helper methods from gang scheduling plugin
2026-01-26 20:01:51 +05:30
Bartosz
720d648d2f Remove outdated test for scoring zero request pods 2026-01-26 14:26:52 +00:00
Bartosz
56ca09911f Refactor resource allocation tests to be more readable 2026-01-26 14:26:46 +00:00
Bartosz
8f5f69bc70 Change scoring function for balanced allocation 2026-01-26 14:22:46 +00:00
Kubernetes Prow Robot
437184c055 Merge pull request #136292 from atombrella/feature/modernize_plusbuild
Remove obsolete `// +build` instruction.
2026-01-26 19:05:59 +05:30
Kubernetes Prow Robot
ac2ce676c1 Merge pull request #136249 from Yuvraj02/qos-cgroup-cpu-shares-test
kubelet: add unit tests for QoS CPU shares update
2026-01-26 19:05:51 +05:30
Antoni Zawodny
8b39544d60 Extract helper methods from gang scheduling plugin 2026-01-26 13:45:26 +01:00
Yuvraj
9b05946801 kubelet: add unit tests for QoS CPU shares update
Signed-off-by: Yuvraj <yuvrajsinghbhadoria@gmail.com>
2026-01-25 13:20:07 +05:30
MohammedSaalif
4925c6bea4 DRA: support non-pod references in ReservedFor (#136450)
* DRA: support non-pod references in ReservedFor

Signed-off-by: MohammedSaalif <salifud2004@gmail.com>

* Expand reservation validation comment in syncClaim as suggested by mortent

* Address feedback: rename valid to remaining and remove obsolete TODO

---------

Signed-off-by: MohammedSaalif <salifud2004@gmail.com>
2026-01-25 00:28:13 +05:30
darshansreenivas
0b635116f1 feat(admissionregistration): enable declarative validation wiring and require ValidationActions 2026-01-24 03:46:24 -08:00
Darshan Murthy
b4947a5891 feat(storage): enable validation-gen + DV wiring for storage.k8s.io (#135438)
* Enable DV coverage for VolumeAttachmentSpec.Attacher validation

update code-gen

* addressing PR comments
2026-01-24 14:29:26 +05:30
Kubernetes Prow Robot
7cdeb11327 Merge pull request #135800 from danwinship/nftables-hairpin
rework nftables masquerading code, part 1
2026-01-24 10:33:39 +05:30
Kubernetes Prow Robot
5eb7087ccb Merge pull request #135761 from darshansreenivas/admissionregistratio_k8s_io_policy_name
feat: wire admissionregistration group for declarative validation and +k8s:required to ValidatingAdmissionPolicyBindingSpec.PolicyName
2026-01-24 10:33:31 +05:30
Kubernetes Prow Robot
0c127dd954 Merge pull request #135291 from xuzhenglun/fix-ut
fix case title in kubelet/server unit
2026-01-24 07:39:28 +05:30
Kubernetes Prow Robot
62cbba593b Merge pull request #136413 from hoteye/migrate-kubelet-getnode-context
kubelet: migrate kubelet_getters.go to contextual logging
2026-01-23 23:35:37 +05:30
Kubernetes Prow Robot
4c221cdc56 Merge pull request #133335 from bart0sh/PR190-pluginmanager-fix-handling-registration-failures
pluginmanager: fix handling registration failures
2026-01-23 23:35:29 +05:30
Kubernetes Prow Robot
0af247eb14 Merge pull request #136344 from brejman/kep-5732-tas-rename-podgroupinfo
Rename PodGroupInfo in preparation for Workload-aware scheduling changes
2026-01-23 17:37:29 +05:30
hoteye
e649292782 kubelet: migrate kubelet_getters.go to contextual logging. Migrate GetNode and related functions to use contextual logging 2026-01-23 19:54:43 +08:00
Kevin Hannon
159eb4cd77 remove alpha comments for GA or beta DRA fields 2026-01-22 17:03:40 -05:00
darshansreenivas
04ea1eabff feat(admissionregistration): wire group for declarative validation and require PolicyName 2026-01-22 11:19:22 -08:00
Kubernetes Prow Robot
a20550b2f8 Merge pull request #135751 from PhantomInTheWire/fix/operation-executor-test
Fix goroutine leak in pluginmanager test
2026-01-22 23:57:36 +05:30
Kubernetes Prow Robot
c42aa9b74a Merge pull request #132047 from rzlink/memory
kubelet/windows: use CommitMemoryBytes for MemoryStats.UsageBytes in CRI stats provider
2026-01-22 23:57:29 +05:30
Kubernetes Prow Robot
8a04fd20dd Merge pull request #136425 from Karthik-K-N/small-cleanup
Remove previously added print statement for test debug
2026-01-22 21:55:39 +05:30
Bartosz
ae27a49a13 Rename PodGroupInfo to PodGroupState
This is in preparation for PodGroupInfo struct with more pod group
details
2026-01-22 14:45:40 +00:00
Karthik Bhat
85aceb54fd Remove fmt.Println() added for debug 2026-01-22 18:34:15 +05:30
Kubernetes Prow Robot
30607b55b4 Merge pull request #136389 from adrianmoisey/promote-kep-5311-to-beta
Promote KEP-5311 (Relaxed validation for Services names) to beta
2026-01-22 18:11:28 +05:30
Kubernetes Prow Robot
d3500c6652 Merge pull request #135570 from Karthik-K-N/fix-sidecar-flake
Fix TestTerminationOrderingSidecarStopAfterMain flake under stress
2026-01-22 07:57:26 +05:30
Kubernetes Prow Robot
e51e40ede6 Merge pull request #136186 from hoteye/migrate-kubelet-getters-contextual-logging
kubelet: migrate kubelet_getters.go to contextual logging
2026-01-22 05:09:33 +05:30
Kubernetes Prow Robot
ef8c024a14 Merge pull request #136028 from thc1006/fix/issue-136027-error-verbosity
fix(kubelet): convert V().Error() to V().Info() for verbosity-aware logging
2026-01-22 05:09:25 +05:30
Kubernetes Prow Robot
97df11dfd1 Merge pull request #136381 from ffromani/remove-memmgr-fg
remove the MemoryManager FG
2026-01-22 04:15:34 +05:30
Kubernetes Prow Robot
3d5e3da18f Merge pull request #136380 from ffromani/topo-mgr-opts-lock-defaults
features: lock TopologyManagerOptions
2026-01-22 04:15:26 +05:30
Kubernetes Prow Robot
2ccf67b90d Merge pull request #136056 from nem0z/chore/HandleCrashWithContext_kublet_126379
Replace non-contextual API utilruntime.HandleError under /pkg/kubelet within the new context-aware version when possible
2026-01-22 03:17:33 +05:30
Kubernetes Prow Robot
dff962ddbb Merge pull request #136264 from michaelasp/unlockWhileProcess
Ensure that processing does not block queue writers in RealFIFO
2026-01-22 00:15:26 +05:30
Michael Aspinwall
40c01b99a7 Ensure that processing does not block queue writers 2026-01-21 17:56:00 +00:00
Kubernetes Prow Robot
25ae8f3e38 Merge pull request #136301 from AutuSnow/fix-flaky-volume-test-kubelet
Fix(kubelet/test): flaky TestWaitForAllPodsUnmount by adding goroutin…
2026-01-21 21:21:36 +05:30
Kubernetes Prow Robot
6010707b8a Merge pull request #135470 from Ignoramuss/optionalorrequired-scheduling
api: add +required markers to scheduling API
2026-01-21 21:21:28 +05:30
Adrian Moisey
1b338eec1c Promote KEP-5311 (Relaxed validation for Services names) to beta 2026-01-21 15:44:21 +02:00