Commit Graph

1409 Commits

Author SHA1 Message Date
Lukasz Szaszkiewicz
4cccfe28e6 kcm: remove WatchListClient feature gate override
WatchListClient is enabled by default since 1.35, so the
kcm specific override in flags is no longer needed.
2026-01-09 10:23:25 +01:00
Anson Qian
a816a7b1d8 Make ConcurrentResourceClaimSyncs configurable (#134701)
* DRA resource claim controller: configurable number of workers

It might never be necessary to change the default, but it is hard to be sure.
It's better to have the option, just in case.

* generate files

* resourceclaimcontroller: normalize validation error message

* Update cmd/kube-controller-manager/app/options/resourceclaimcontroller.go

Co-authored-by: Jordan Liggitt <jordan@liggitt.net>

---------

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
Co-authored-by: Jordan Liggitt <jordan@liggitt.net>
2026-01-08 19:31:39 +05:30
yliao
3e34de29c4 fixed the loophole that allows user to get around resource quota set by system admin 2025-12-18 00:56:20 +00:00
yliao
870062df4f adjusts DRA extended resource quota to include devices usages from regular resource claims 2025-11-05 23:24:24 +00:00
Kubernetes Prow Robot
5fd9cefd95 Merge pull request #134995 from yongruilin/flagz-kk-structure
[KEP-4828] Flagz versioned structured response
2025-11-04 19:02:04 -08:00
Kubernetes Prow Robot
c1a6a3ca71 Merge pull request #134152 from pohly/dra-device-taints-1.35
DRA: device taints: new ResourceSlice API, new features
2025-11-04 15:32:07 -08:00
Patrick Ohly
f4a453389d DRA device taint eviction: configurable number of workers
It might never be necessary to change the default, but it is hard to be sure.
It's better to have the option, just in case.
2025-11-04 21:57:24 +01:00
yongruilin
2422bc0bb8 feat: Implement structured /flagz endpoint 2025-11-04 19:45:30 +00:00
tinatingyu
59e075e8d3 Promote PodCertificateRequests to v1beta1 2025-11-02 05:33:44 +00:00
Kubernetes Prow Robot
9efb7ee538 Merge pull request #134313 from richabanker/statusz-structured
[KEP:4827] Structured statusz
2025-10-30 13:16:10 -07:00
Siyuan Zhang
67143028e7 Add --min-compatibility flag.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-10-30 13:36:38 -05:00
Richa Banker
c1a95eb7e2 Structured statusz 2025-10-30 10:39:52 -07:00
Kubernetes Prow Robot
3ec2d82da5 Merge pull request #134784 from michaelasp/svm_beta2
SVM: bump the API to beta, remove unused fields
2025-10-29 13:56:02 -07:00
Michael Aspinwall
3b72759d1b Update SVM to Beta
Co-authored-by: Stanislav Láznička <stlaz.devel@proton.me>
2025-10-29 19:36:11 +00:00
Abhijit Hoskeri
a35785c033 Drop loopback clients if unused
kube-controller-manager and kube-scheduler do not use the
configured loopback clients. Drop them.

Fix up scheduler test server to not depend on
the loopback client.
2025-10-26 14:47:57 -07:00
Kubernetes Prow Robot
57c243f33c Merge pull request #134450 from mayank-agrwl/controller-contextual-logs
Replace HandleCrash and HandleError calls to use context-aware alternatives
2025-10-23 00:49:02 -07:00
Siyuan Zhang
70ac573619 adopt consistent way to set feature gate based on emulation version for kcm and scheduler test server.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-10-22 13:20:30 -05:00
Mayank Agrawal
5e216ae34d Replace HandleCrash and HandleError calls to use context-aware alternatives 2025-10-07 22:40:10 -07:00
Tim Allclair
4986abe0b8 Automated refactoring to use SetFeatureGatesDuringTest 2025-10-01 21:10:53 -07:00
Tim Allclair
2c78bc981c Introduce API to codify and validate feature gate dependencies 2025-09-25 16:45:43 -07:00
Kubernetes Prow Robot
aa35105213 Merge pull request #132703 from tchap/kcm-sync-api
kcm/app: Add proper goroutine management
2025-09-15 01:58:11 -07:00
Kubernetes Prow Robot
5cef241d82 Merge pull request #133218 from nmn3m/kube-controller-manager-statuz
adds a list of available HTTP endpoints for the kube-controller-manag…
2025-09-10 11:48:22 -07:00
Ondra Kupka
9e60e3593e kcm/app: Add proper goroutine management
Make sure no goroutines can leak in the app package that manages
controller starting/termination.
2025-09-10 16:21:36 +02:00
Michael Aspinwall
770b749436 feat: Require SVM to use RealFIFO 2025-08-19 16:41:22 +00:00
Nour
d4bd007d3b adds a list of available HTTP endpoints for the kube-controller-manager component under the /statusz page 2025-08-11 22:51:59 +03:00
Kubernetes Prow Robot
802198e2da Merge pull request #133113 from alaypatel07/resource-claim-concurrent-syncs
bump resource claim controller concurrent syncs to 50
2025-07-24 17:59:20 -07:00
Kubernetes Prow Robot
7912e5fd67 Merge pull request #131549 from carlory/KEP-3751-GA
[Kep-3751] Promote VolumeAttributesClass to GA
2025-07-24 16:44:27 -07:00
carlory
94bf8fc8a9 Promoted API VolumeAttributesClass and VolumeAttributesClassList to storage.k8s.io/v1.
Promoted feature-gate `VolumeAttributesClass` to GA (on by default)

Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-07-25 01:53:59 +08:00
Patrick Ohly
5c4f81743c DRA: use v1 API
As before when adding v1beta2, DRA drivers built using the
k8s.io/dynamic-resource-allocation helper packages remain compatible with all
Kubernetes release >= 1.32. The helper code picks whatever API version is
enabled from v1beta1/v1beta2/v1.

However, the control plane now depends on v1, so a cluster configuration where
only v1beta1 or v1beta2 are enabled without the v1 won't work.
2025-07-24 08:33:45 +02:00
Kubernetes Prow Robot
cc674e7470 Merge pull request #128010 from ahmedtd/pod-certificates-types
Pod Certificates: Preliminary implementation of KEP-4317
2025-07-21 19:26:30 -07:00
Alay Patel
a5b9c7a798 bump resource claim controller concurrent syncs to 50
Signed-off-by: Alay Patel <alayp@nvidia.com>
2025-07-21 17:57:57 -04:00
Taahir Ahmed
4624cb9bb9 Pod Certificates: Basic implementation
* Define feature gate
* Define and serve PodCertificateRequest
* Implement Kubelet projected volume source
* kube-controller-manager GCs PodCertificateRequests
* Add agnhost subcommand that implements a toy signer for testing

Change-Id: Id7ed030d449806410a4fa28aab0f2ce4e01d3b10
2025-07-21 21:49:57 +00:00
Lukasz Szaszkiewicz
db342010f4 kube-controller-manager: enable WatchListClient 2025-07-17 12:08:03 +02:00
Kubernetes Prow Robot
5b1af0c8c2 Merge pull request #127655 from guozheng-shen/remove-usage
remove 'endpointsleases' and 'configmapsleases' from usage
2025-06-24 09:54:28 -07:00
carlory
901441c66e Promote SeparateTaintEvictionController to stable
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-06-13 11:15:35 +08:00
Michael Aspinwall
a8ed33bc64 feat: add metrics for compatibility version
Add metrics for compatibility version for kube-apiserver, kube-scheduler, and kube-controller-manager.

Signed-off-by: Michael Aspinwall <maspinwall@google.com>
2025-05-20 08:41:01 +00:00
Kubernetes Prow Robot
c064ed8ed3 Merge pull request #130207 from carlory/cleanup-IncludeCloudLoops
remove outdate comment about pv controller
2025-04-30 06:37:56 -07:00
Kubernetes Prow Robot
d41e8bbc14 Merge pull request #128351 from mengjiao-liu/kube-controller-manager-support-context-for-NewBroadcaster
kube-controller-manager: also support context for record.NewBroadcaster
2025-04-23 19:30:29 -07:00
David Eads
660df229bf Stop exposing list-via-watch from the server
With StreamingCollectionEncodingToJSON and
StreamingCollectionEncodingToProtobuf, the WatchList must re-justify its
necessity.  To prevent an ecosystem from building around a feature that
may not be promoted, we will stop serving list-via-watch until
performance numbers can justify its inclusion.

This also stops the kube-controller-manager from using the
list-via-watch by default.  The fallback is a regular list, so during
the skew during an upgrade the "right" thing will happen and the new
StreamingCollectionEncoding will be used.
2025-04-18 09:21:23 -04:00
Patrick Ohly
ac6e47cb14 DRA taint eviction: improve error handling
There was one error path that led to a "controller has shut down" log
message. Other errors caused different log entries or are so unlikely (event
handler registration failure!) that they weren't checked at all.

It's clearer to let Run return an error in all cases and then log the
"controller has shut down" error at the call site. This also enables tests to
mark themselves as failed, should that ever happen.
2025-03-20 17:59:06 +01:00
Patrick Ohly
a027b439e5 DRA: add device taint eviction controller
The controller is derived from the node taint eviction controller.
In contrast to that controller it tracks the UID of pods to prevent
deleting the wrong pod when it got replaced.
2025-03-19 09:18:38 +01:00
Kubernetes Prow Robot
9693eea5c3 Merge pull request #128824 from yongruilin/flagz-controller-manager
feat: Add flagz endpoint for kube-controller-manager
2025-03-12 13:35:47 -07:00
Stanislav Láznička
c36b1c901f KCM: CTB publisher: tolerate NotFound during discovery 2025-03-11 18:07:33 +01:00
Stanislav Láznička
5b3b68a3a1 KCM: CTBPublisher: use generics to handle both alpha/beta APIs 2025-03-11 18:07:29 +01:00
Stanislav Láznička
e0f536bf1f use the ClusterTrustBundles beta API 2025-03-11 18:07:24 +01:00
yongruilin
97db9a7843 feat: Add flagz endpoint for kube-controller-manager 2025-03-05 22:35:03 +00:00
Morten Torkildsen
36d8a44b9c DRA: Update controller for Prioritized Alternatives in Device Requests 2025-02-28 19:32:59 +00:00
Monokaix
e5becd01c8 correct ResyncPeriod comments
Signed-off-by: Monokaix <changxuzheng@huawei.com>
2025-02-27 15:04:07 +08:00
carlory
6df869347b remove outdate comment about pv controller 2025-02-17 14:13:48 +08:00
Siyuan Zhang
8fc3a33454 Refactor compatibility version code
Replace DefaultComponentGlobalsRegistry with new instance of componentGlobalsRegistry in test api server.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move kube effective version validation out of component base.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move DefaultComponentGlobalsRegistry out of component base.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move ComponentGlobalsRegistry out of featuregate pkg.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

remove usage of DefaultComponentGlobalsRegistry in test files.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

change non-test DefaultKubeEffectiveVersion to use DefaultBuildEffectiveVersion.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Restore useDefaultBuildBinaryVersion in effective version.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

rename DefaultKubeEffectiveVersion to DefaultKubeEffectiveVersionForTest.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

pass options.ComponentGlobalsRegistry into config for controller manager and scheduler.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Pass apiserver effective version to DefaultResourceEncodingConfig.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

change statusz registry to take effective version from the components.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Address review comments

Signed-off-by: Siyuan Zhang <sizhang@google.com>

update vendor

Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-02-05 16:10:53 -08:00