Commit Graph

4526 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
0fa4b9e14c Merge pull request #126109 from my-git9/staticpod
kubeadm: remove unused function in util/staticpod
2024-07-15 23:45:10 -07:00
Christian Schlotter
405fd111c2 kubeadm: use separate phase for changing the kubelet's kubeconfig on upgrade for ControlPlaneKubeletLocalMode 2024-07-15 11:19:21 +02:00
xin.li
fbf8cf41a7 kubeadm: remove unused function in util/staticpod
Signed-off-by: xin.li <xin.li@daocloud.io>
2024-07-14 16:57:25 +08:00
Kubernetes Prow Robot
33ccc51cb7 Merge pull request #125780 from chrischdi/pr-kubeadm-control-plane-kubelet-local-init
kubeadm: consider feature gate ControlPlaneKubeletLocalMode on init and upgrade
2024-07-12 12:50:16 -07:00
SataQiu
69a2bebc70 kubeadm: fix a bug that ImageExists check returns true when the image isn't in the local storage 2024-07-11 22:42:40 +08:00
SataQiu
d9001c7b00 kubeadm: the '--feature-gates' flag is deprecated and no-op for 'kubeadm upgrade apply/plan' 2024-06-30 11:22:24 +08:00
Alex Stundzia
58ff17bbfa When using external CA, look for common trust anchor within CA bundle. 2024-06-28 18:04:31 -05:00
Christian Schlotter
8871513c1b review fixes 2024-06-28 17:15:51 +02:00
Kubernetes Prow Robot
5e331569e4 Merge pull request #125779 from SataQiu/fix-upgrade-diff-20240628
kubeadm: fix a bug where the path of the manifest can not be specified when 'upgrade diff' specified a config file
2024-06-28 07:04:00 -07:00
Christian Schlotter
e51b55b451 kubeadm: feature gate ControlPlaneKubeletLocalMode on upgrade 2024-06-28 13:31:26 +02:00
Kubernetes Prow Robot
e832b70230 Merge pull request #125545 from claudiubelu/unittests-12
unittests: Fixes unit tests for Windows (part 12)
2024-06-28 03:57:56 -07:00
Christian Schlotter
241c1c7737 kubeadm: feature gate ControlPlaneKubeletLocalMode on init 2024-06-28 12:57:51 +02:00
SataQiu
7c2384d374 kubeadm: mark '--api-server-manifest', '--controller-manager-manifest' and '--scheduler-manifest' as deprecated flags 2024-06-28 18:53:05 +08:00
SataQiu
975f1c978d kubeadm: fix a bug where the path of the manifest can not be specified when 'upgrade diff' specified a config file 2024-06-28 18:01:19 +08:00
Claudiu Belu
b5e3b81de6 unittests: Fixes unit tests for Windows (part 12)
Currently, there are some unit tests that are failing on Windows due
to various reasons:

- IPVS proxy mode is not supported on Windows.
- pkg/kubelet/cri/remote was moved to cri-client.
2024-06-28 08:05:38 +00:00
SataQiu
7120b3902c kubeadm: improve the error/warning messages of 'validateSupportedVersion' to include the checked resource kind 2024-06-27 18:47:09 +08:00
SataQiu
6190152abd kubeadm: update the long description about 'kubeadm config' command 2024-06-27 15:54:42 +08:00
Christian Schlotter
038a94804e kubeadm: implement ControlPlaneKubeletLocalMode 2024-06-24 17:03:33 +02:00
Kubernetes Prow Robot
10ae1dbb52 Merge pull request #125636 from my-git9/certsunused
kubeadm: Remove unused function in phases/certs
2024-06-24 02:00:56 -07:00
Kubernetes Prow Robot
498f88803e Merge pull request #125121 from chendave/emeritus
Move myself(chendave) to the list of emeritus
2024-06-24 00:16:56 -07:00
xin.li
71d3f9e249 Remove unused function in phases/certs
Signed-off-by: xin.li <xin.li@daocloud.io>
2024-06-22 18:47:28 +08:00
Marko Mudrinić
33466a6606 kubeadm: Add '--yes' flag to the list of allowed flags
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
2024-06-18 13:04:17 +02:00
Lubomir I. Ivanov
09078d4810 kubeadM: allow conversion of TimeoutForControlPlane
v1beta3.ClusterConfiguration.APIServer.TimeoutForControlPlane
must be migrated to {Init|Join}Configuration.Timeouts.
.ControlPlaneComponentHealthCheck.

To achieve this sort of cross-Kind migration do the following:
- Use a temporary, thread-safe variable in timeoututils.go
- Make the order of GVKs in documentMapToInitConfiguration
deterministic.
2024-06-17 10:07:33 +03:00
Lubomir I. Ivanov
4af99cd676 kubeadm: deprecate v1beta3
Mark v1beta3 as deprecated by showing a warning when used
and write a note about it in the doc.go file.
2024-06-17 10:07:33 +03:00
Lubomir I. Ivanov
bc92a0dfe9 kubeadm: continue supporting extraArgs flags for v1beta4
Flags for kubeadm init such as --apiserver-extra-args prior
to v1beta4 used a map[string]string for pflag.Value storage. This no
longer works since v1beta4 extra args are a slice of Arg.

Add a new flag type argSlice and implement a solution for
parsing these flags.

At the same time deprecate these flags and show a warning
that users should use config.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
cc539cd600 kubeadm: more validation for Upgrade|ResetConfiguration
- Add unit tests for ValidateUpgrade|ResetConfiguration
- Add two more validation points in ValidateUpgradeConfiguration
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
8a5f849c66 kubeadm: keep v1beta3 only in required code paths
Use v1beta4 everywhere and only use v1beta3
in a few required locations:
- kubeadm-config map handling
- unit and integration tests
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
d0c656dc19 kubeadm: don't default ExtraEnvs to an empty slice
Instead of defaulting ExtraEnvs for CP components to an empty
slice when converting from/to v1beta3 keep it nil.

This allows for expecting a nil value in the internal
config, similarly to ExtraArgs.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
66c7fc5ab4 kubeadm: update migration logic from v1beta3 to 4
Treat v1beta4 as non experimental API when migrating.
Update unit tests.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
fb1fcd2d3b kubeadm: move v1beta4 to high priority in API scheme 2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
b9f7661ab8 kubeadm: add missing "kubeadm config print upgrade-defaults" 2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
6544d19796 kubeadm: update godoc and comments for v1beta4
- Include some more examples related to v1beta4 in the doc.go.
- Fix some typos in v1beta4 field comments.
- Add missing JSON tag for UpgradeConfiguration.Apply.SkipPhases.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
bca0f0836f kubeadm: fix a bug in v1beta3.JoinConfiguration.Discovery.Timeout
After the introduction of v1beta4 if the user inputs the old
v1beta3 discovery timeout the value is ignored. Fix that
by introducing a conversion to v1beta4.

Co-authored-by: penghez (GitHub handle)
2024-06-13 09:41:07 +03:00
Kubernetes Prow Robot
c77d954273 Merge pull request #125388 from neolit123/1.31-fix-kubeconfig-ecdsa
kubeadm: fix the generation of ECDSA keys in kubeconfig files
2024-06-11 09:18:35 -07:00
Lubomir I. Ivanov
40d185637c kubeadm: add UT for ClusterConfiguration.EncryptionAlgorithmType() 2024-06-11 12:39:24 +03:00
Kavin
dce2322933 Inherit certPhaseFlags for SA 2024-06-08 12:05:45 +05:30
Lubomir I. Ivanov
02ed1aee71 kubeadm: fix the generation of ECDSA keys in kubeconfig files
When the PublicKeysECDSA feature gate is used or the new
v1beta4.ClusterConfiguration.EncryptionAlgorithm field is used
with "ECDSA-P256" as value, make sure that this is reflected
in the "cert spec" used to generate private keys and they end
up as "EC keys".
2024-06-07 20:04:18 +03:00
Kubernetes Prow Robot
548d50da98 Merge pull request #125157 from carlory/kubeadm-2563
kubeadm: update warning message for the swap check
2024-06-03 04:20:55 -07:00
carlory
f5c69fde39 kubeadm: update warning message for the swap check
Co-authored-by: Lubomir I. Ivanov <neolit123@gmail.com>
2024-06-03 17:09:20 +08:00
Kubernetes Prow Robot
2d8a3ad572 Merge pull request #125265 from neolit123/1.31-use-actual-kubelet-address-port
kubeadm: use the actual configured kubelet healthz address:port
2024-06-02 23:14:32 -07:00
Lubomir I. Ivanov
52302e4ad5 kubeadm: use the actual configured kubelet healthz address:port
When doing a kubelet health check on init/join, do not
hardcode the "localhost" address. Instead, use the
KubeletConfiguration HealthzBindAddress and HealthzPort
fields.
2024-06-01 10:10:31 +03:00
Humble Chirammal
07ef65a834 make use of etcd v3.5.14 in the builds.
https://github.com/etcd-io/etcd/releases/tag/v3.5.14

This release has been built with GO 1.21.10

Signed-off-by: Humble Chirammal <humble.devassy@gmail.com>
2024-06-01 09:06:35 +05:30
Kubernetes Prow Robot
8565e37525 Merge pull request #125127 from my-git9/ut-compute
kubeadm: increase ut coverage for compute
2024-05-31 02:41:37 -07:00
xin.li
d24d82eda9 kubeadm: increase ut coverage for compute
Signed-off-by: xin.li <xin.li@daocloud.io>
2024-05-31 16:39:51 +08:00
Kubernetes Prow Robot
b503409e9c Merge pull request #124363 from claudiubelu/unittests-11
unittests: Fixes unit tests for Windows (part 11)
2024-05-30 08:17:24 -07:00
Kubernetes Prow Robot
2acdbae664 Merge pull request #125178 from my-git9/unusedfunction
kubeadm: remove some unused function
2024-05-30 06:47:02 -07:00
Sascha Grunert
51a36294a3 kubeadm: check only for RuntimeReady condition
We only check for the `RuntimeReady` condition instead of anything else
like the `NetworkReady` to allow kubeadm to provision the cluster.

Refers to https://github.com/kubernetes/kubernetes/pull/124685#issuecomment-2138655482
Follow-up on: https://github.com/kubernetes/kubernetes/pull/124685

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-05-30 08:33:22 +02:00
Kubernetes Prow Robot
83c2db067e Merge pull request #125179 from SataQiu/clean-20240528
kubeadm: only add the klog flags that are still supported for kubeadm, rather than disabling the unwanted flags
2024-05-29 20:14:55 -07:00
Kubernetes Prow Robot
da02fdb2ae Merge pull request #123339 from skitt/canonical-json-patch
Update kustomize, use canonical json-patch v4 import
2024-05-29 08:02:24 -07:00
Kubernetes Prow Robot
529896474f Merge pull request #124688 from neolit123/1.31-always-rotate-etcd-certs-on-upgrade
kubeadm: ensure that etcd certs are rotated on apiserver upgrade
2024-05-29 05:10:30 -07:00