Commit Graph

27258 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
ab3cec0701 Merge pull request #130447 from pohly/dra-device-taints
device taints and tolerations (KEP 5055)
2025-03-19 13:00:32 -07:00
Kubernetes Prow Robot
1039822a74 Merge pull request #130491 from swatisehgal/cpu-allocation-numa-spread-metric
Add metrics to capture CPU allocation spread across NUMA nodes
2025-03-19 11:52:40 -07:00
Kubernetes Prow Robot
076c7b0b65 Merge pull request #130079 from yongruilin/compatibility-remove-reset
[compatibility version] Avoid resetting config when adding flags
2025-03-19 11:52:33 -07:00
Kubernetes Prow Robot
fba63656c9 Merge pull request #130498 from swatisehgal/distribute-across-numa-e2e-tests
node: cpumgr: e2e: Tests for `distribute-cpus-across-numa` policy option
2025-03-19 10:19:06 -07:00
Kubernetes Prow Robot
dc6f70c12d Merge pull request #130290 from nokia/4540-strict-cpu-reservation-beta
KEP-4540: strict-cpu-reservation beta
2025-03-19 10:18:58 -07:00
Kubernetes Prow Robot
2b79593ece Merge pull request #130225 from ritazh/dra-admin-access-namespace
DRA: AdminAccess validate based on namespace label
2025-03-19 10:18:50 -07:00
yongruilin
dab8758a59 chore: avoid resetting config of emulation verison and featuregates when adding flags
This change introduces improvements to the component compatibility registry:
- Modify the kube-scheduler test server to create a separate ComponentGlobalsRegistry
- Update the compatibility registry to handle multiple flag configurations
- Enhance test cases to support emulation version mapping between components
2025-03-19 16:31:13 +00:00
Kubernetes Prow Robot
f1c634f93e Merge pull request #130463 from sanposhiho/ga-mlk
feat: graduate MatchLabelKeysInPodAffinity to GA
2025-03-19 09:06:31 -07:00
Kensei Nakada
10c6a4258f feat: graduate MatchLabelKeysInPodAffinity to GA 2025-03-19 23:06:04 +09:00
Swati Sehgal
327ebcffc8 node: cpumgr: e2e: Define constants and use them instead of literals
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-03-19 13:19:20 +00:00
Swati Sehgal
c90f0539c8 node: cpumgr: e2e: Tests for distribute-cpus-across-numa policy option
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-03-19 13:19:03 +00:00
Swati Sehgal
b6a3ac47de node: cpumgr: e2e: tests for NUMA allocation spread metrics
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-03-19 13:13:56 +00:00
Kubernetes Prow Robot
73f54b67b2 Merge pull request #130816 from macsko/move_scheduler_perf_topology_spreading_tests_to_separate_package
Move scheduler_perf topology spreading tests to a separate package
2025-03-19 02:00:37 -07:00
Patrick Ohly
37b47f4724 DRA helper: support dropped fields and TimeAdded defaults
Both the new DeviceTaint.TimeAdded and dropped fields when
the DRADeviceTaints feature is disabled confused the ResourceSlice
controller because what is stored and sent back can be different
from what the controller wants to store.

It's now more lenient regarding TimeAdded (doesn't need to be exact because of
rounding during serialization, only having a value on the server is okay)
and dropped fields (doesn't try to store them again). It also preserves
a server-side TimeAdded when updating slices.
2025-03-19 09:18:38 +01:00
Patrick Ohly
2499663b84 DRA E2E: tests for device taints 2025-03-19 09:18:38 +01:00
Jon Huhn
5760a4f282 DRA scheduler: device taints and tolerations
Thanks to the tracker, the plugin sees all taints directly in the device
definition and can compare it against the tolerations of a request while
trying to find a device for the request.

When the feature is turnedd off, taints are ignored during scheduling.
2025-03-19 09:18:38 +01:00
Keita Mochizuki
07a275437f kubectl debug: Display a warning message that the debug container's capabilities may not work with a non-root user (#127696)
* Add warning message about capabilities of debug container

* fix1

* fix2

* fix3
2025-03-19 00:50:30 -07:00
Rita Zhang
0301e5a9f8 DRA: AdminAccess validate based on namespace label
Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com>
2025-03-18 22:56:54 -07:00
Kubernetes Prow Robot
a6227695ab Merge pull request #128402 from richabanker/mvp-agg-discovery
KEP 4020: Replace StorageVersionAPI with aggregated discovery to fetch served resources by a peer apiserver
2025-03-18 21:43:49 -07:00
Kubernetes Prow Robot
9f8a84930d Merge pull request #130573 from natasha41575/pod-conditions
[FG:PodObservedGenerationTracking] kubelet sets observedGeneration on pod conditions
2025-03-18 20:34:08 -07:00
Kubernetes Prow Robot
7fb8bd8aca Merge pull request #130905 from tallclair/ippr-beta
[FG:InPlacePodVerticalScaling] Graduate to Beta
2025-03-18 18:45:54 -07:00
Kubernetes Prow Robot
83f8513db8 Merge pull request #130550 from sanposhiho/async-preemption-beta
feat: graduate the async preemption feature to beta
2025-03-18 17:17:54 -07:00
Kubernetes Prow Robot
6a968c5789 Merge pull request #130904 from serathius/watchcache-corrupt
In TestListCorruptObject corrupt the object in etcd instead of changing encryption key
2025-03-18 16:09:55 -07:00
Kubernetes Prow Robot
94d66387d0 Merge pull request #130553 from Phaow/vac-e2e
Add protection finalizer to vac when it is created
2025-03-18 14:59:54 -07:00
Kubernetes Prow Robot
64621d17a6 Merge pull request #129832 from pohly/dra-seamless-upgrade
DRA: seamless driver upgrades
2025-03-18 13:51:51 -07:00
Marek Siarkowicz
506e4fed14 In TestListCorruptObject corrupt the object in etcd instead of changing encryption key
Changing the encryption key doesn't work with watch cache as it doesn't
break decoding newly written objects. A new object will be written using
a new key, and decoded using a new key.
2025-03-18 21:49:17 +01:00
Richa Banker
8b2cee83c1 Replace StorageVersion API with aggregated discovery to fetch served resources by a peer for MVP
Co-authored-by: Joe Betz <jpbetz@google.com>

Co-authored-by: Jordan Liggitt <jordan@liggitt.net>
2025-03-18 13:27:27 -07:00
Patrick Ohly
6478ca5859 ktesting: fix per-test logging in TContext.Run and WithTB
WithTB was originally defined as "uses the existing logger". But what we want
there and in the newer TContext.Run is the usual per-test logging, now for the
sub-test.
2025-03-18 20:52:54 +01:00
Patrick Ohly
797475e113 DRA: add device taints API
This adds the "DeviceTaint" top-level type to v1alpha3 and related fields to
ResourceSlice and ResourceClaim. It's complete enough bring up an API server
and generate files.
2025-03-18 20:52:54 +01:00
Patrick Ohly
7fb028a433 DRA: add DRADeviceTaints feature 2025-03-18 20:52:54 +01:00
Eddie Torres
c766a52356 Implement KEP 4876 Mutable CSINode (#130007)
* Implement KEP-4876 Mutable CSINode Allocatable Count

Signed-off-by: torredil <torredil@amazon.com>

* Update TestGetNodeAllocatableUpdatePeriod

Signed-off-by: torredil <torredil@amazon.com>

* Implement CSINodeUpdater

Signed-off-by: torredil <torredil@amazon.com>

* Use sync.Once in csiNodeUpdater

Signed-off-by: torredil <torredil@amazon.com>

* ImVerify driver is installed before running periodic updates

Signed-off-by: torredil <torredil@amazon.com>

* Update NodeAllocatableUpdatePeriodSeconds type comment

Signed-off-by: torredil <torredil@amazon.com>

* Leverage apivalidation.ValidateImmutableField in ValidateCSINodeUpdate

Signed-off-by: torredil <torredil@amazon.com>

* Update strategy functions

Signed-off-by: torredil <torredil@amazon.com>

* Run hack/update-openapi-spec.sh

Signed-off-by: torredil <torredil@amazon.com>

* Update VolumeError.ErrorCode field

Signed-off-by: torredil <torredil@amazon.com>

* CSINodeUpdater improvements

Signed-off-by: torredil <torredil@amazon.com>

* Iron out concurrency in syncDriverUpdater

Signed-off-by: torredil <torredil@amazon.com>

* Run hack/update-openapi-spec.sh

Signed-off-by: torredil <torredil@amazon.com>

* Revise logging

Signed-off-by: torredil <torredil@amazon.com>

* Revise log in VerifyExhaustedResource

Signed-off-by: torredil <torredil@amazon.com>

* Update API validation

Signed-off-by: torredil <torredil@amazon.com>

* Add more code coverage

Signed-off-by: torredil <torredil@amazon.com>

* Fix pull-kubernetes-linter-hints

Signed-off-by: torredil <torredil@amazon.com>

* Update API types documentation

Signed-off-by: torredil <torredil@amazon.com>

* Update strategy and validation for new errorCode field

Signed-off-by: torredil <torredil@amazon.com>

* Update validation tests after strategy changes

Signed-off-by: torredil <torredil@amazon.com>

* Update VA status strategy

Signed-off-by: torredil <torredil@amazon.com>

---------

Signed-off-by: torredil <torredil@amazon.com>
2025-03-18 12:45:49 -07:00
Tim Allclair
9be73c0d67 Graduate InPlacePodVerticalScaling to beta 2025-03-18 12:26:42 -07:00
Kubernetes Prow Robot
55573a0739 Merge pull request #130823 from torredil/update-storage-csi-test-manifests
Update hostpathplugin image to v1.16.1
2025-03-18 11:28:01 -07:00
Mark Sasnal
5625483527 KEP-4540: added e2e tests for strict-cpu-reservation option 2025-03-18 11:52:25 -04:00
Natasha Sarkar
4c2be4bdde kubelet sets observedGeneration in conditions 2025-03-18 15:43:24 +00:00
Kubernetes Prow Robot
8312d8e85e Merge pull request #130560 from stlaz/remote-uid-config-beta
RemoteRequestHeaderUID: bump to beta, enabled by default
2025-03-18 06:31:49 -07:00
Kubernetes Prow Robot
8559194e11 Merge pull request #130878 from yongruilin/compatibility-version-featuregate
feat: Add alpha feature verification to feature gates
2025-03-18 05:25:49 -07:00
Patrick Ohly
582b421393 DRA kubeletplugin: add RollingUpdate
When the new RollingUpdate option is used, the DRA driver gets deployed such
that it uses unique socket paths and uses file locking to serialize gRPC
calls. This enables the kubelet to pick arbitrarily between two concurrently
instances. The handover is seamless (no downtime, no removal of ResourceSlices
by the kubelet).

For file locking, the fileutils package from etcd is used because that was
already a Kubernetes dependency. Unfortunately that package brings in some
additional indirect dependency for DRA drivers (zap, multierr), but those
seem acceptable.
2025-03-18 12:32:35 +01:00
Patrick Ohly
760903c0de DRA kubelet: give DRA drivers a 30 second grace period for updates
When doing an update of a DaemonSet, first the old pod gets stopped and
then the new one is started. This causes the kubelet to remove all
ResourceSlices directly after removal and forces the new pod to recreate all of
them.

Now the kubelet waits 30 seconds before it deletes ResourceSlices. If a new
driver registers during that period, nothing is done at all. The new driver
finds the existing ResourceSlices and only needs to update them if something
changed.

The downside is that if the driver gets removed permanently, this creates a
delay where pods might still get scheduled to the node although the driver is
not going to run there anymore and thus the pods will be stuck.
2025-03-18 12:32:35 +01:00
Kubernetes Prow Robot
83c5f99f97 Merge pull request #128184 from cupnes/add-storage-capacity-scoring
KEP-4049: Add storage capacity scoring to VolumeBinding plugin
2025-03-18 03:49:49 -07:00
Maciej Skoczeń
0effe15543 Move scheduler_perf topology spreading tests to a separate package 2025-03-18 09:37:47 +00:00
Stanislav Láznička
b3890d9fa0 bump RemoteRequestHeaderUID featuregate to Beta, on by default 2025-03-18 10:22:17 +01:00
Kubernetes Prow Robot
6396fa0f77 Merge pull request #130860 from carlory/remove-storage-feature-labels
e2e tests: remove unneeded storage feature label
2025-03-17 20:27:56 -07:00
Kubernetes Prow Robot
aba6aa4d7a Merge pull request #130867 from vinayakankugoyal/gitRepo
Fix failing git_repo e2e release informing tests.
2025-03-17 17:45:48 -07:00
yongruilin
5d0caaa1a6 feat: Add alpha feature verification to feature gates
Implement a new function, verifyAlphaFeatures, to ensure that alpha features cannot be enabled by default. Update the verifyOrUpdateFeatureList function to call this new verification. Add corresponding unit tests to validate the behavior of alpha feature handling.
2025-03-18 00:04:16 +00:00
Natasha Sarkar
a15520fbea Move pod resize status to pod conditions 2025-03-17 22:01:05 +00:00
Kubernetes Prow Robot
917a556981 Merge pull request #130250 from marosset/withdraw-windows-hostnetwork
Withdraw alpha support for HostNetwork containers on Windows
2025-03-17 11:59:48 -07:00
Kubernetes Prow Robot
f8cc9c92d6 Merge pull request #130858 from dims/trying-to-fix-provider-kubelet_config_dir_test
Fix kubelet_config_dir_test after KubeletServiceAccountTokenForCredentialProviders was added
2025-03-17 10:43:49 -07:00
Mark Rossett
a666451e8a withdraw Windows HostNetwork support 2025-03-17 09:40:12 -07:00
Kubernetes Prow Robot
2cb9e77fde Merge pull request #130658 from tenzen-y/promote-successpolicy-e2e-to-conformance
KEP-3998: Promote JobSuccessPolicy E2E to Conformance
2025-03-17 09:35:56 -07:00