Commit Graph

309 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
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
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
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
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
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
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
yongruilin
97db9a7843 feat: Add flagz endpoint for kube-controller-manager 2025-03-05 22:35:03 +00: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
Siyuan Zhang
00dab9dffa Add Validation to versioned feature specs.
Co-authored-by: Jordan Liggitt <liggitt@google.com>
Co-authored-by: Siyuan Zhang <sizhang@google.com>

Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-12-17 15:59:02 -08:00
Antoni Zawodny
4afa554f65 Add --concurrent-daemonset-syncs flag to kube-controller-manager 2024-10-30 15:03:26 +01:00
Mengjiao Liu
6fd8954fe8 kube-controller-manager: also support context for record.NewBroadcaster
27a68ae introduced context support. In order to use that
also with NewBroadcaster, a variant of the call is needed to allow
the caller to specify the context.
2024-10-29 15:34:58 +08:00
guozheng-shen
bea35b1f56 remove non-lease resource locks in tests. 2024-10-28 11:16:27 +08:00
Kubernetes Prow Robot
119f114f01 Merge pull request #128196 from richabanker/move-version
Move k8s.io/apiserver/pkg/util/version to component-base
2024-10-25 18:33:01 +01:00
Richa Banker
9274a584b8 Split k8s.io/component-base/registry and add into k8s.io/component-base/version and k8s.io/component-base/featuregate 2024-10-24 19:09:30 -07:00
Richa Banker
81cd728c66 Move k8s.io/apiserver/pkg/util/version to component-base 2024-10-22 13:03:42 -07:00
Antonio Ojea
8d6769f62c disable cloud-provider code from kube-controller-manager
Since 1.31 the core component cloud provider logic should not exist,
this disables the existing code in the kube-controller-manager that still
expects to work with the cloud-provider logic to avoid having time bombs
in the code base that can break the component.

The code can not be completely removed because this will impact existing
users that may be using some of the flags breaking their deployments, so
this just removes the code that is no longer to be used becuase it
depends on options that no longer are exposed to users.

It also adds validation on the configuration/flag level to ensure that
the --cloud-provider flag can only be set to external or empty.
2024-10-22 14:04:48 +00:00
Lukasz Szaszkiewicz
06a15c5cf9 Promote WatchList feature to Beta (#128053)
* e2e/apimachinery/watchlist: always run WatchList e2e tests

* kube-controller-manager: enable WatchListClient

* kube-apiserver: promote WatchList feature to beta
2024-10-17 11:07:04 +01:00
Stanislav Láznička
26902de531 delegate authn: don't default the ReqHeaders UID header 2024-09-05 14:32:55 +02:00
Stanislav Láznička
7fabd06c2b requestheaders: add a "requestheader-uid-headers" flag and wire it up 2024-09-05 14:28:31 +02:00
Kubernetes Prow Robot
f28691d069 Merge pull request #127062 from eminwux/fix-kcm-flags-doc
Clarify KCM --service-account-private-key-file flag documentation and improve legacy controller warning message.
2024-09-04 18:20:54 +01:00
Emiliano Spinella
29f23af012 Clarify KCM --service-account-private-key-file flag documentation and remove legacy token controller warning message. 2024-09-04 17:06:07 +02:00
Emiliano Spinella
dda5db815a Correct documentation for flags --allocate-node-cidrs and --cluster-cidr in cloud-provider and --service-cluster-ip-range in kube-controller-manager. 2024-08-19 16:44:32 +02:00
Kubernetes Prow Robot
bb7411120a Merge pull request #126287 from devppratik/121793-update-node-monitor-grace-period
node: Update Node Monitor Grace Period default duration to 50s
2024-08-13 21:03:16 -07:00
devppratik
f8bf6b97b8 Update Node Monitor Grace Period default duration to 50s
Update description

Improve flag comment

Update Test case value to be 50s by default

Update Description

Run make update

Minor description fix
2024-07-24 22:54:44 +05:30
Haitao Chen
1d92758ef0 implement emulated-version for kube-controller-manager 2024-07-22 16:07:18 -07:00
Lukasz Szaszkiewicz
2f5394567e Revert "kube-controller-manager: enable WatchListClient"
This reverts commit 825091693d.
2024-07-18 09:29:53 +02:00
Kubernetes Prow Robot
d729af9446 Merge pull request #125591 from p0lyn0mial/upstream-promote-watch-list-to-beta
Promote WatchList feature to Beta
2024-07-01 02:31:14 -07:00
Kubernetes Prow Robot
522e2e5066 Merge pull request #124917 from vinayakankugoyal/kep4633
KEP-4633: Only allow anonymous auth for configured endpoints.
2024-06-27 20:39:51 -07:00
Vinayak Goyal
5e6a4937f5 KEP-4633: Allow health-only anonymous auth mode.
Signed-off-by: Vinayak Goyal <vinaygo@google.com>
2024-06-28 00:30:05 +00:00
Lukasz Szaszkiewicz
825091693d kube-controller-manager: enable WatchListClient 2024-06-27 09:01:06 +02:00
Lukasz Szaszkiewicz
cc7063e96d kube-controller-manager: refactor watchlist unit tests 2024-06-26 12:47:46 +02:00
carlory
214287b370 kube-controller-manager removed deprecated command flags: --volume-host-cidr-denylist and --volume-host-allow-local-loopback 2024-05-27 10:59:09 +08:00
SataQiu
4bd3baece3 kube-controller-manager: remove the deprecated horizontal-pod-autoscaler-upscale-delay and horizontal-pod-autoscaler-downscale-delay flags 2024-05-19 17:49:23 +08:00
Rohit Singh
13dddca6a2 Add "disable-force-detach-on-timeout" flag to kube-controller-manager 2024-02-22 18:31:52 +00:00
Lukasz Szaszkiewicz
8668c7f718 kube-controller-manager/options: unit test WatchListClient feature gate for command line options 2024-01-18 09:22:14 +01:00
jackcui
9d8959224c add explanation for large-cluster-size-threshold arg about multiple zones cluster 2023-07-21 17:25:51 +08:00
Jiahui Feng
049614f884 ValidatingAdmissionPolicy controller for Type Checking (#117377)
* [API REVIEW] ValidatingAdmissionPolicyStatucController config.

worker count.

* ValidatingAdmissionPolicyStatus controller.

* remove CEL typechecking from API server.

* fix initializer tests.

* remove type checking integration tests

from API server integration tests.

* validatingadmissionpolicy-status options.

* grant access to VAP controller.

* add defaulting unit test.

* generated: ./hack/update-codegen.sh

* add OWNERS for VAP status controller.

* type checking test case.
2023-07-13 13:41:50 -07:00
Filip Křepinský
4e6a3fb9c1 deduplicate cloud provider controller names
and move the to cloud-provider module
2023-06-19 15:01:01 +02:00
Filip Křepinský
e5f5a9bfdb use controller names for CLI FlagSets to show the names in help 2023-06-19 15:01:01 +02:00
Filip Křepinský
cd56748ec5 reference controllers correctly from CLI help 2023-06-19 15:01:01 +02:00
Filip Křepinský
94792d85de simplify TestValidateControllersOptions test 2023-06-19 15:00:59 +02:00
Filip Křepinský
9730951136 introduce KCM controller aliases and unify controller names 2023-06-19 14:59:33 +02:00
carlory
5e048041e4 remove helper function for unused storage feature in pkg/proxy/util 2023-06-13 09:22:59 +08:00
Kubernetes Prow Robot
32048b1467 Merge pull request #117550 from borgerli/cron-job-syncs
add --concurrent-cron-job-syncs flag for kube-controller-manager
2023-06-12 13:46:19 -07:00
tinatingyu
133eff3df4 implement LegacyServiceAccountTokenCleanUp alpha 2023-05-24 23:20:17 +00:00