Commit Graph

134044 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
ec5211cedc Merge pull request #135147 from harche/HealhCheckTimeout
DRA: Add configurable health check timeout per device
2025-11-06 15:19:07 -08:00
Kubernetes Prow Robot
6232175b94 Merge pull request #134935 from alaypatel07/refactor-dra-extended-resources
refactor dra extended resources implementation in scheduler plugin
2025-11-06 15:18:59 -08:00
Kubernetes Prow Robot
b214dae15d Merge pull request #133648 from richabanker/merged-discovery
[KEP:4020] Peer-aggregated discovery
2025-11-06 15:18:52 -08:00
Kubernetes Prow Robot
fcf6d3b545 Merge pull request #133392 from rphillips/getMetricsFromNode_fix
test: add retry to getMetricsFromNode and deflake 'should grab all metrics from kubelet /metrics/resource endpoint'
2025-11-06 14:28:58 -08:00
Alay Patel
f8ccc4c4d7 dra scheduler plugin: refactor extendeddynamicresources.go for readibility
Signed-off-by: Alay Patel <alayp@nvidia.com>
2025-11-06 15:49:33 -05:00
Richa Banker
b9e59e8ea9 test: Add integration tests for peer-aggregated discovery
Add comprehensive integration tests covering:
- Peer-aggregated discovery merging across multiple API servers
- CRD/APIService exclusion from peer discovery
- Profile-based content negotiation (nopeer)
- Cache invalidation on local discovery changes
- Request routing to peer servers

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:48:22 -08:00
Richa Banker
8f2c0a9a60 kube-apiserver: Enable peer proxy and peer-aggregated discovery
Wire up peer proxy infrastructure in kube-apiserver:
- Add UnknownVersionInteroperabilityProxy feature gate
- Configure peer proxy with identity lease selectors
- Register CRD and APIService informers with exclusion filters
- Start peer discovery sync and GV cleanup workers

Includes extractors for CRDs and APIServices to identify which
GroupVersions should be excluded from peer discovery.

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:48:19 -08:00
Richa Banker
2f5f1749e5 apiserver: Add peer proxy and peer-aggregated discovery support
Integrate peerproxy and peer-aggregated discovery into generic API server:
- Add PeerProxyConfiguration to server config
- Wire up peer discovery cache sync as post-start hook
- Connect local discovery invalidation callbacks
- Add GV deletion workers and reaper for safe cleanup

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:46:04 -08:00
Richa Banker
c72f9f73d9 discovery/aggregated: Add invalidation callback support
Add callback mechanism to notify peer-aggregated discovery handler
when local discovery changes, enabling efficient cache invalidation.

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:46:04 -08:00
Richa Banker
6b8f793888 discovery/aggregated: Add peer-aggregated discovery handler
Implement peer-aggregated discovery that merges local and peer discovery
documents into a unified view. Features:
- Deterministic merging using topological sort
- Short-circuit optimizations when content/order unchanged
- Resource capability merging (verbs, subresources)
- ETag-based caching
- Prometheus metrics for cache hits/misses

The wrapper routes requests to either local-only or peer-aggregated
handlers based on Accept header profile.

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:46:04 -08:00
Richa Banker
d690745772 peerproxy: Refactor into separate files and add exclusion filter 2025-11-06 12:46:04 -08:00
Richa Banker
6a07342d37 discovery: Add profile-based content negotiation
Add support for 'profile=nopeer' in Accept headers to allow clients
to opt out of peer-aggregated discovery and request local-only results.

Updates discovery client to set appropriate Accept headers based on
whether peer-aggregated discovery is desired.

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:46:04 -08:00
Richa Banker
3b89deb6b3 util/sort: Add MergePreservingRelativeOrder for topological sorting
Add a topological sort implementation that merges multiple ordered lists
while preserving their relative ordering. This is used by peer-aggregated
discovery to deterministically merge discovery documents from multiple
API servers.

Part of KEP-4020: Unknown Version Interoperability Proxy
2025-11-06 12:46:04 -08:00
Kubernetes Prow Robot
3627464300 Merge pull request #135187 from BenTheElder/go1254
upgrade go to 1.25.4
2025-11-06 12:43:30 -08:00
Kubernetes Prow Robot
22962087ec Merge pull request #135186 from pohly/dra-scheduler-unit-test-flake
DRA: fix for scheduler unit test flake + logging
2025-11-06 12:43:23 -08:00
Kubernetes Prow Robot
171d2dacd2 Merge pull request #134893 from HirazawaUi/kep-5607
KEP-5607: Allow hostNetwork pods to use user namespace
2025-11-06 12:43:15 -08:00
Kubernetes Prow Robot
ee0485adb9 Merge pull request #134736 from haircommander/4210-ga
features: bump image gc max age feature to stable
2025-11-06 12:43:07 -08:00
Kubernetes Prow Robot
41fd1b51f6 Merge pull request #134520 from sunya-ch/add-share-id-to-plugin-device
[DRA] Add ShareID to kubelet plugin API
2025-11-06 12:43:00 -08:00
Kubernetes Prow Robot
4cf80c652a Merge pull request #133114 from Apptane/early-image-verification-policy
kubelet: invoke part of image verification policy earlier
2025-11-06 12:42:52 -08:00
Alay Patel
da9f1d8eed dra scheduler plugin: move extended resources functions into separate file
Signed-off-by: Alay Patel <alayp@nvidia.com>
2025-11-06 14:58:59 -05:00
Ryan Phillips
b07c8698b9 test: add retry to getMetricsFromNode 2025-11-06 13:56:17 -06:00
Kubernetes Prow Robot
fd556dc8ca Merge pull request #135174 from carlory/fix-135089
kubelet: fix concurrent map write error when creating a pod with empty volume
2025-11-06 11:51:20 -08:00
Kubernetes Prow Robot
9cd72862d8 Merge pull request #135166 from lalitc375/fix-sorting
fix sorting logic after after normalizing errors
2025-11-06 11:51:13 -08:00
Kubernetes Prow Robot
5ac53d43a7 Merge pull request #135158 from andrewsykim/pod-topology-admission-beta
Graduate PodTopologyLabelsAdmission feature gate to Beta and on by default
2025-11-06 11:51:06 -08:00
Kubernetes Prow Robot
5815405389 Merge pull request #135044 from hankfreund/clb_fg
Set KubeletCrashLoopBackOffMax feature gate to default enabled for beta.
2025-11-06 11:50:59 -08:00
Kubernetes Prow Robot
14134e03a8 Merge pull request #134058 from bart0sh/PR200-DRA-scoring-extended-resources
Implement scoring for extended resources backed up by DRA
2025-11-06 11:50:52 -08:00
Kubernetes Prow Robot
7914889160 Merge pull request #135182 from liggitt/fix-dra-quota-test
Fix the DRA extended quota test
2025-11-06 10:07:00 -08:00
Kubernetes Prow Robot
566525725d Merge pull request #131220 from lukasmetzner/feat-ccm-watch-based-route-controller
feat(ccm): watch-based route controller reconciliation
2025-11-06 10:06:53 -08:00
Benjamin Elder
fbe8d4c63c upgrade go to 1.25.4 2025-11-06 09:49:48 -08:00
Patrick Ohly
1c4cab9dda DRA scheduler unit test: fix race with ResourceSlice informer
The test started without waiting for the ResourceSlice informer to have
synced. As a result, the "CEL-runtime-error-for-one-of-three-nodes" test case
failed randomly with a very low flake rate (less than 1% in local runs) because
CEL expressions never got evaluated due to not having the slices (yet).

Other tests also were less reliable, but not known to fail.
2025-11-06 18:40:35 +01:00
Patrick Ohly
789f06544d DRA allocator: fix result logging
`defer klog.V().Info` logs parameters *as they were at the time of the defer*.
What we want is to defer a function which passes the values *at the time of exit*.
2025-11-06 18:09:37 +01:00
Kubernetes Prow Robot
d3c8b58545 Merge pull request #135176 from scaliby/remove-deprecated-i-api
Drop support for networkingv1beta1.Ingress in kubectl
2025-11-06 08:29:16 -08:00
Kubernetes Prow Robot
5e062d8801 Merge pull request #134904 from liyuerich/commentstart
enable commentstart check on admission API group
2025-11-06 08:29:08 -08:00
Kubernetes Prow Robot
43cd2d207d Merge pull request #134615 from sunya-ch/consumable-capacity-testing-update
DRA: ConsumableCapacity update allocating and registry test cases
2025-11-06 08:29:01 -08:00
Ed Bartosh
fc404b6a3d Cache DRA state for scoring extended resources
Extend Fit and BalancedAllocation PreScore state with the the
allocated state, the list of ResourceSlices and the device class
mapping. Gather these once during PreScore and pass them through
the scoring path instead of re-fetching for every scoring call.

This should speed up scoring of DRA extended resources, lowering
scheduling overhead.

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
Co-authored-by: Maciej Skoczeń <mskoczen@google.com>
Co-authored-by: Dominik Marciński <gmidon@gmail.com>
2025-11-06 18:09:11 +02:00
Kubernetes Prow Robot
544dfee60a Merge pull request #135180 from macsko/fix_asyncapicalls_onfinish
Fix sending OnFinish to in-flight async API calls in scheduler
2025-11-06 06:51:02 -08:00
Kubernetes Prow Robot
478617a559 Merge pull request #135135 from jsafrane/update-csi-manifests
Update CSI manifests from csi-driver-hostpath master
2025-11-06 06:50:54 -08:00
HirazawaUi
e986000e6a KEP-5607: Allow hostNetwork pods to use user namespaces 2025-11-06 22:45:36 +08:00
Andrew Sy Kim
54702182c2 graduate PodTopologyLabelsAdmission feature gate to Beta and on by default
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2025-11-06 14:42:32 +00:00
Jordan Liggitt
d25c5251f9 Fix the DRA extended quota test 2025-11-06 09:13:04 -05:00
Ed Bartosh
bf7dbb129f DRA: test performance for scoring extended resources 2025-11-06 15:28:43 +02:00
Kubernetes Prow Robot
f41e30e7e0 Merge pull request #134722 from macsko/gang_scheduling_scheduler
KEP-4671: Implement Gang scheduling in kube-scheduler
2025-11-06 05:12:53 -08:00
Maciej Skoczeń
a9dcc8e2c9 Fix sending OnFinish to in-flight async API calls in scheduler 2025-11-06 12:00:37 +00:00
Kubernetes Prow Robot
8c2771a3de Merge pull request #135165 from HirazawaUi/fix-standalone-tests
Fix the failing e2e test case in Standalone mode.
2025-11-06 03:37:03 -08:00
Kubernetes Prow Robot
7e1e2163d4 Merge pull request #135137 from pohly/dra-scheduler-perf-filenames
DRA scheduler_perf: write JSON where perf-dash expects it
2025-11-06 03:36:56 -08:00
Jan Safranek
6b764d555f test: update MutableCSINodeAllocatableCount tests for the new attacher
The new external-attacher already sets (or clears) VolumeAttachment
Status.Status.AttachError.ErrorCode, based on its feature gate.

Stop patching the VolumeAttachment in an e2e test, but pass the right
feature gate to the external-attacher instead.

And remove local createMergePatch() that's now unused.
2025-11-06 12:31:53 +01:00
Jan Safranek
da1981248e test: update CSI manifests 2025-11-06 12:31:47 +01:00
Maciej Skoczeń
049cb8558e Add integration test for gang scheduling 2025-11-06 10:47:30 +00:00
Maciej Skoczeń
4a067cc022 Add read Workload permissions to kube-scheduler 2025-11-06 10:47:30 +00:00
Maciej Skoczeń
c086bdeaa2 Add integration tests for gang queueing 2025-11-06 10:47:30 +00:00