Commit Graph

12268 Commits

Author SHA1 Message Date
Filip Křepinský
27a77e0ef3 Encapsulate KCM controllers with their metadata
- These metadata can be used to handle controllers in a generic way.
- This enables showing feature gated controllers in kube-controller-manager's help.
- It is possible to obtain a controllerName in the InitFunc so it can be passed down to and used by the controller.

metadata about a controller:
- name
- requiredFeatureGates
- isDisabledByDefault
- isCloudProviderController
2023-10-27 13:28:01 +02:00
Kubernetes Prow Robot
c8125c4029 Merge pull request #121305 from neolit123/1.29-super-admin-conf
kubeadm: add support for separate super-admin.conf kubeconfig file
2023-10-27 08:51:31 +02:00
RuquanZhao
b0491d71bd Support skipping pulling addons image.
Add field DNS.Disabled and Proxy.Disabled in ClusterConfiguration to save status for `join` to read.
Signed-off-by: Ruquan Zhao <ruquan.zhao@arm.com>
2023-10-27 14:33:37 +08:00
Jiahui Feng
fd132665a8 extend VAP status controller for extensions type checking. 2023-10-26 10:26:03 -07:00
Lubomir I. Ivanov
837090135f kubeadm: make super-admin.conf changes to app/cmd
- Update unit tests in certs_test.go related to the "renew" CLI command.
- In /init, (d *initData) Client(), make sure that the new logic
for bootstrapping an "admin.conf" user is performed, by calling
EnsureAdminClusterRoleBinding() from the phases backend. Add a
"adminKubeConfigBootstrapped" flag that helps call this logic only
once per "kubeadm init" binary execution.
- In /phases/init include a new subphase for generating
the "super-admin.conf" file.
- In /phases/reset make sure the file "super-admin.conf" is
cleaned if present. Update unit tests.
2023-10-26 07:36:03 +03:00
Lubomir I. Ivanov
30ed50d32e kubeadm: make super-admin.conf changes in app/phases
- Register the new file in /certs/renewal, so that the
file is renewed if present. If not present the common message "MISSING"
is shown. Same for other certs/kubeconfig files.
- In /kubeconfig, update the spec for admin.conf to use
the "kubeadm:cluster-admins" Group. A new spec is added for
the "super-admin.conf" file that uses the "system:masters" Group.
- Add a new function EnsureAdminClusterRoleBinding() that includes
logic to ensure that admin.conf contains a User that is properly
bound on the "cluster-admin" built-in ClusterRole. This requires
bootstrapping using the "system:masters" containing "super-admin.conf".
Add detailed unit tests for this new logic.
- In /upgrade#PerformPostUpgradeTasks() add logic to create the
"admin.conf" and "super-admin.conf" with the new, updated specs.
Add detailed unit tests for this new logic.
- In /upgrade#StaticPodControlPlane() ensure that renewal of
"super-admin.conf" is performed if the file exists.
Update unit tests.
2023-10-26 07:36:03 +03:00
Kubernetes Prow Robot
0501933e56 Merge pull request #121291 from bzsuni/ga/CSIMigrationvSphere
Remove GA featuregate about CSIMigrationvSphere in 1.29
2023-10-26 01:08:06 +02:00
Kubernetes Prow Robot
af52a7052b Merge pull request #121511 from neolit123/1.29-fix-lint-export-comments
kubeadm: fix export comments to make golangci-lint happy
2023-10-25 21:29:19 +02:00
Kubernetes Prow Robot
06a7febe00 Merge pull request #120864 from uablrek/kube-proxy-init
kube-proxy: Optionally do privileged configs only
2023-10-25 21:28:47 +02:00
Lubomir I. Ivanov
c2a04fa1cf kubeadm: fix export comments to make golangci-lint happy 2023-10-25 19:35:10 +03:00
Lubomir I. Ivanov
98bed52fdd kubeadm: make super-admin.conf changes in app/constants
- Add the new file name: super-admin.conf and a function
to return its default path GetSuperAdminKubeConfigPath()
- Add the ClusterAdminsGroupAndClusterRoleBinding object name.
2023-10-25 11:46:49 +03:00
Kubernetes Prow Robot
6e04b7d051 Merge pull request #121470 from SataQiu/clean-kubeadm-20231024
kubeadm: cleanup UnknownCRISocket
2023-10-25 05:46:30 +02:00
Kubernetes Prow Robot
722503e9e5 Merge pull request #121390 from wojtek-t/disable_paging
Remove ability to disable pagination at store level
2023-10-24 18:55:16 +02:00
SataQiu
16b3acc27a cleanup UnknownCRISocket for unit tests 2023-10-24 16:46:51 +08:00
SataQiu
71bedf5cb2 kubeadm: skip CRI detection for 'kubeadm upgrade diff' 2023-10-24 16:43:46 +08:00
Lars Ekman
4b59d2b05c kube-proxy: Optionally do privileged configs only
A new --init-only flag is added tha makes kube-proxy perform
configuration that requires privileged mode and exit. It is
intended to be executed in a privileged initContainer, while
the main container may run with a stricter securityContext
2023-10-24 07:01:31 +02:00
Wojciech Tyczyński
b386120da2 Remove storageConfig.Paging parameter 2023-10-20 15:35:58 +02:00
Paco Xu
fb0ffb07a7 kubeadm coredns use drop ALL instead of all 2023-10-20 17:59:39 +08:00
SataQiu
a4efb6fc13 kubeadm: add debug log for kubeProxyConfigFromCluster 2023-10-20 11:01:30 +08:00
Kubernetes Prow Robot
f7cb8a5e8a Merge pull request #121367 from liggitt/kubelet-cloud-provider
Undeprecated kubelet cloud-provider flag
2023-10-19 18:39:22 +02:00
Jordan Liggitt
441d2b40df Undeprecated kubelet cloud-provider flag 2023-10-19 11:32:34 -04:00
Kubernetes Prow Robot
c3809672aa Merge pull request #121352 from SataQiu/fix-kubeadm-2023101902
kubeadm: remove unused DNSAddOnType from v1beta4 API
2023-10-19 14:05:59 +02:00
SataQiu
8ae3277152 kubeadm: remove unused DNSAddOnType from v1beta4 API 2023-10-19 17:44:41 +08:00
SataQiu
259dd93e71 kubeadm: skip CRI detection for 'kubeadm config validate' 2023-10-19 15:08:47 +08:00
SataQiu
3da7802b7c kubeadm: cleanup UnknownCRISocket from staticpods test 2023-10-19 14:44:02 +08:00
Kubernetes Prow Robot
ca43bf0582 Merge pull request #120154 from palnabarun/authz-config-external-changes
[StructuredAuthorizationConfiguration] Add --authorization-config flag and guard it using a Feature Gate
2023-10-18 16:21:13 +02:00
Kubernetes Prow Robot
1cb6793776 Merge pull request #121262 from my-git9/ut-tlsbootstrap
kubeadm: increase ut coverage for bootstraptoken/node
2023-10-18 08:38:15 +02:00
Nabarun Pal
22e5a806a7 Add --authorization-config flag to apiserver
Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2023-10-18 11:58:47 +05:30
xin.li
e312d93a66 kubeadm: increase ut coverage for bootstraptoken/node
Signed-off-by: xin.li <xin.li@daocloud.io>
2023-10-18 12:16:31 +08:00
Kubernetes Prow Robot
478c934c1a Merge pull request #121295 from SataQiu/clean-kubeadm-20231017
kubeadm: remove reference to UnknownCRISocket from getInitConfigurationFromCluster
2023-10-18 06:06:59 +02:00
Yuki Iwai
201c30fba8 Job: Handle error returned from AddEventHandler function (#119917)
* Job: Handle error returned from AddEventHandler function

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Use the error message the similar to CronJob

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Clean up error messages

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Put the tesing.T on the second place in the args for the newControllerFromClient function

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Put the testing.T on the second place in the args for the newControllerFromClientWithClock function

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Call t.Helper()

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Put the testing.TB on the second place in the args for the createJobControllerWithSharedInformers function and call tb.Helper() there

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Put the testing.TB on the second place in the args for the startJobControllerAndWaitForCaches function and call tb.Helper() there

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

* Adapt TestFinializerCleanup to the eventhandler error

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>

---------

Signed-off-by: Yuki Iwai <yuki.iwai.tz@gmail.com>
2023-10-17 21:28:34 +02:00
Kubernetes Prow Robot
ba7feccfa3 Merge pull request #121290 from pacoxu/revert-119946-ignore_preflight_error
Revert "kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors"
2023-10-17 17:21:36 +02:00
Kubernetes Prow Robot
760599db27 Merge pull request #121282 from neolit123/1.29-fix-typos-in-elliptic-kubeadm-api
kubeadm: fix "eliptic" typo in API package
2023-10-17 16:14:36 +02:00
Kubernetes Prow Robot
91c172e670 Merge pull request #121108 from sttts/sttts-validate-cloud-provider
kube-apiserver: move cloud provider validation into options
2023-10-17 16:14:10 +02:00
SataQiu
c281c70bac kubeadm: remove reference to UnknownCRISocket from getInitConfigurationFromCluster 2023-10-17 21:50:05 +08:00
bzsuni
7561284819 Remove GA featuregate about CSIMigrationvSphere in 1.29
Signed-off-by: bzsuni <bingzhe.sun@daocloud.io>
2023-10-17 20:44:50 +08:00
Paco Xu
e3c58378bc Revert "kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors" 2023-10-17 20:26:58 +08:00
Lubomir I. Ivanov
a45a813d5e kubeadm: fix "eliptic" typo in API package
Should be "elliptic".
2023-10-17 12:16:03 +03:00
Dave Chen
defda81bf8 kubeadm: remove ClusterConfiguration parameter from preflight check
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-10-17 15:17:46 +08:00
Kubernetes Prow Robot
b5ba899dfa Merge pull request #118146 from aroradaman/fix/proxy-healthzserver
proxy healthz server for dualstack clusters
2023-10-16 21:19:25 +02:00
Kubernetes Prow Robot
413de8cc71 Merge pull request #120740 from champtar/reserved-cpus-log-fixup
kubelet: fix log when using --reserved-cpus
2023-10-16 19:07:26 +02:00
Kubernetes Prow Robot
0de29e1d43 Merge pull request #120911 from gjkim42/devicemanager-remove-deprecated-sets-string
pkg/kubelet/cm: Remove deprecated sets.String and sets.Int
2023-10-16 16:48:40 +02:00
Kubernetes Prow Robot
3548ef0092 Merge pull request #119946 from chendave/ignore_preflight_error
kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors
2023-10-16 14:41:19 +02:00
Kubernetes Prow Robot
4254a77c21 Merge pull request #121249 from pohly/klog-call-fixes
fix invalid log calls
2023-10-16 13:14:01 +02:00
Daman Arora
bfda244e54 pkg/proxy: dual stack health checker
Signed-off-by: Daman Arora <aroradaman@gmail.com>
2023-10-16 16:11:18 +05:30
Patrick Ohly
957adfac49 fix invalid log calls
These were found with a modified klog that enables "go vet" to check klog call
parameters:

    cmd/kubeadm/app/features/features.go:149:4: printf: k8s.io/klog/v2.Warningf format %t has arg v of wrong type string (govet)
    			klog.Warningf("Setting deprecated feature gate %s=%t. It will be removed in a future release.", k, v)
    test/images/sample-device-plugin/sampledeviceplugin.go:147:5: printf: k8s.io/klog/v2.Errorf does not support error-wrapping directive %w (govet)
    				klog.Errorf("error: %w", err)
    test/images/sample-device-plugin/sampledeviceplugin.go:155:3: printf: k8s.io/klog/v2.Errorf does not support error-wrapping directive %w (govet)
    		klog.Errorf("Failed to add watch to %q: %w", triggerPath, err)
    staging/src/k8s.io/code-generator/cmd/prerelease-lifecycle-gen/prerelease-lifecycle-generators/status.go:207:5: printf: k8s.io/klog/v2.Fatalf does not support error-wrapping directive %w (govet)
    				klog.Fatalf("Package %v: unsupported %s value: %q :%w", i, tagEnabledName, ptag.value, err)
    staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:286:3: printf: (k8s.io/klog/v2.Verbose).Infof format %s reads arg #1, but call has 0 args (govet)
    		klog.V(4).Infof("Node %s missing in vSphere cloud provider cache, trying node informer")
    staging/src/k8s.io/legacy-cloud-providers/vsphere/nodemanager.go:302:3: printf: (k8s.io/klog/v2.Verbose).Infof format %s reads arg #1, but call has 0 args (govet)
    		klog.V(4).Infof("Node %s missing in vSphere cloud provider caches, trying the API server")
2023-10-16 10:21:07 +02:00
Dave Chen
8009530d77 kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors
Turn on FeatureGate MergeCLIArgumentsWithConfig to keep the legacy way of management of
ignorePreflightErrors, which means the value defined by the flag `ignore-preflight-errors`
will be merged with the value `ignorePreflightErrors` defined in the config file.

Otherwise, the value defined by the flag will replace the value from the config file if set.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-10-16 14:37:10 +08:00
Kubernetes Prow Robot
afc302c2d2 Merge pull request #121230 from SataQiu/fix-kubeadm-20231014
kubeadm: fill with the DefaultCRISocket when CRI socket detection is not required
2023-10-16 06:45:18 +02:00
Daman Arora
4ea6ec738c pkg/proxy: add an ipFamily field to the winkernel proxier
Signed-off-by: Daman Arora <aroradaman@gmail.com>
2023-10-15 19:55:09 +05:30
xin.li
6732c4110f kubeadm: fix uninvalid namespace field for clusterrole
Signed-off-by: xin.li <xin.li@daocloud.io>
2023-10-15 18:49:52 +08:00