Commit Graph

2136 Commits

Author SHA1 Message Date
Ed Bartosh
e6937ec27f kubeadm: add CurrentKubernetesVersion
Replaced hardcoded "v0.13.0" strings with CurrentKubernetesVersion variable.

This should help with a regular release version bumps.
2018-12-27 11:29:59 +02:00
Kubernetes Prow Robot
197fc67693 Merge pull request #72215 from caesarxuchao/minor-test-fix
Fix the unit test patch to not modify the node name
2018-12-25 19:57:09 -08:00
Kubernetes Prow Robot
190f6d870e Merge pull request #71946 from bart0sh/PR0045-kubeadm-1260-simplify-minimum-kubernetes-version-bumps
kubeadm: simplify minimum Kubernetes version bumps
2018-12-21 21:28:53 -08:00
Kubernetes Prow Robot
4a21a774e9 Merge pull request #72059 from rojkov/kubeadm-check-remote-version-v2
kubeadm: refactor validateStableVersion()
2018-12-20 04:42:25 -08:00
Chao Xu
7223f0fd16 Fix the unit test patch to not modify the node name 2018-12-19 14:02:33 -08:00
Ed Bartosh
b40018da7b kubeadm: simplify minimum Kubernetes version bumps
Replaced hardcoded "v0.12.0" strings with MinimumControlPlaneVersion and
MinimumKubeletVersion global variables.

This should help with a regular release version bumps.
2018-12-19 20:41:25 +02:00
Kubernetes Prow Robot
73b9effcb6 Merge pull request #72030 from ereslibre/fix-race-condition-on-node-join
Fix race condition when joining nodes
2018-12-18 03:02:40 -08:00
Anit Gandhi
60f754a8a3 kubeadm: fix nil check in join config creation 2018-12-17 13:57:37 -05:00
Dmitry Rozhkov
b9c2139ccc kubeadm: refactor validateStableVersion()
Currently the function `cmd/kubeadm/app/util.validateStableVersion()`
doesn't validate remote versions in the special case when the client
version is empty. This makes the code more difficult to reason about,
because the function may successfully return a string which isn't a valid version.

Move handling the special case outside of the function to the place
where its meaning is more obvious.
2018-12-17 17:05:41 +02:00
Dmitry Rozhkov
4b6d91c2c3 kubeadm: print stack trace in case of unexpected error 2018-12-14 12:23:54 +02:00
Rafael Fernández López
6a8a832f61 Fix race condition when joining nodes
Despite we were checking for the kubelet kubeconfig file to be present, the
kubelet first writes this file and then the certificates the kubeconfig file
refers to. This represents a race condition in kubeadm in which when we confirm
that the kubelet's kubeconfig file is present we continue creating a clientset
out of it. However, the clientset creation will ensure that the certificates the
kubeconfig file refers to exist on the filesystem.

To fix this problem, not only wait for the kubelet's kubeconfig file to be
present, but also ensure that we can create a clientset ouf of it on our polling
process, while we wait for the kubelet to have performed the TLS bootstrap.
2018-12-13 20:51:35 +01:00
pytimer
48d757b6bb kubeadm: fixed etcd sync endpoints 2018-12-11 10:03:22 +08:00
Kubernetes Prow Robot
0b13221f68 Merge pull request #71885 from dims/create-etcd-with-0700-permissions
Create /var/lib/etcd with 0700
2018-12-10 14:08:33 -08:00
Kubernetes Prow Robot
486f407b1d Merge pull request #71890 from odacremolbap/replace-proxy-with-kubelet-kubeadm-docs
replace proxy with kubelet at kubeadm v1beta1 docs
2018-12-10 05:39:49 -08:00
Kubernetes Prow Robot
21a8d08fab Merge pull request #71258 from bart0sh/PR0042-kubeadm-1159-improve-hostport-error-messages
kubeadm: improve hostport parsing error messages
2018-12-09 23:59:06 -08:00
Pablo Mercado
996845d9d9 replace proxy with kubelet at kubeadm v1beta1 docs 2018-12-09 08:51:34 +01:00
Davanum Srinivas
836f413cf1 Create /var/lib/etcd with 0700
If we let the hostpath with DirectoryOrCreate to create this directory
it defaults to 0755. A default install should use 0700 for better
security especially if the directory is not present.

Change-Id: Idc0266685895767b0d1c5710c8a4fb704805652f
2018-12-08 19:42:58 -05:00
Kubernetes Prow Robot
c06c08e5ae Merge pull request #71828 from yuexiao-wang/cleanup-upgrad-etcd-left
kubeadm: fixed cleanup upgrade from no-TLS etcd to TLS etcd
2018-12-08 02:39:54 -08:00
yuexiao-wang
39f71245b3 kubeadm: fixed cleanup upgrade from no-TLS etcd to TLS etcd
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2018-12-08 08:38:03 +08:00
Rostislav M. Georgiev
c3364cf48d kubeadm: remove unused func runCmdPhase
Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2018-12-07 13:30:32 +02:00
Yago Nobre
05e5a3473d Use kubeconfig flag instead of kubeconfig-dir in kubeadm init phase bootstrap-token 2018-12-06 14:42:45 -02:00
yuexiao-wang
5610ac3c9c cleanup upgrade from non-TLS etcd to TLS etcd
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2018-12-05 23:10:13 +08:00
Kubernetes Prow Robot
0214031fcf Merge pull request #71702 from yuexiao-wang/move-test
kubeadm: move test utilites out of /test
2018-12-04 20:06:54 -08:00
Kubernetes Prow Robot
7af52384ea Merge pull request #71467 from rosti/nuke-config-print-defaults
kubeadm: remove kubeadm config print-defaults
2018-12-04 10:04:32 -08:00
yuexiao-wang
0dc0659e07 move test utilites out of /test
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2018-12-04 19:27:17 +08:00
Kubernetes Prow Robot
b6c8ef298e Merge pull request #71663 from bart0sh/PR0044-kubeadm-1294-fix-unmount-kubelet-dirs
kubeadm: properly umount dirs in /var/lib/kubelet
2018-12-04 02:54:44 -08:00
Joe Betz
862b945e5a Update default etcd server to 3.3.10 for kubernetes 1.13 2018-12-03 11:03:49 -08:00
Ed Bartosh
48a961cfa2 kubeadm: properly umount dirs in /var/lib/kubelet
'kubeadm reset' uses incorrect way of unmounting /var/lib/kubelet
directories. It queries /proc/mounts for /var/lib/kubelet mount point.
If /var/lib/kubelet directory is also mounted it makes 'kubelet reset'
to unmount it too, which is incorrect. It also makes it fail as it
can't unmount /var/lib/kubelet before unmounting mounts inside it.

Fixed by querying /var/lib/kubelet/ instead of /var/lib/kubelet.
This should exclude /var/lib/kubelet from the query results even if
it's mounted.

Fixes: kubernetes/kubeadm#1294
2018-12-03 18:45:52 +02:00
Rostislav M. Georgiev
ffb670b8a8 kubeadm: remove kubeadm config print-defaults
Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2018-12-03 17:43:42 +02:00
k8s-ci-robot
67bca44801 Merge pull request #71465 from aanm/fix-kubeadm-documentation
apis/kubeadm/v1beta1: fix typo in localApiEndpoint -> localAPIEndpoint
2018-11-30 01:19:58 -08:00
k8s-ci-robot
a93fe6e9ef Merge pull request #71357 from rosti/forgotten-println
kubeadm: Remove forgotten debug Println
2018-11-30 00:04:27 -08:00
k8s-ci-robot
d9581ca041 Merge pull request #71340 from yuexiao-wang/fix-test
fix test names for manifests
2018-11-30 00:04:18 -08:00
k8s-ci-robot
409bfc4337 Merge pull request #71047 from pivotal-k8s/bump-k8s-utils
Bump k8s.io/uitls to 8e7ff06
2018-11-29 11:17:08 -08:00
k8s-ci-robot
791758b1ef Merge pull request #71038 from neolit123/remove-dyn-kubelet-const
kubeadm: remove leftover DynamicKubeletConfig constant
2018-11-29 11:16:58 -08:00
k8s-ci-robot
a2353d5bdb Merge pull request #67360 from jiaxuanzhou/1.11
simplify logic for func BuildArgumentListFromMap
2018-11-29 02:01:03 -08:00
André Martins
5c1260b934 apis/kubeadm/v1beta1: fix typo in localApiEndpoint -> localAPIEndpoint
As localApiEndpoint is ignored by json.Unmarshaller this should be
localAPIEndpoint as defined in the json tag of the source code.

Signed-off-by: André Martins <aanm90@gmail.com>
2018-11-27 17:48:44 +01:00
k8s-ci-robot
bb6101dfbb Merge pull request #71385 from neolit123/kubeadm-fix-mark-control-plane-config
kubeadm: add missing --config flag to mark-control-plane phase
2018-11-24 09:29:49 -08:00
k8s-ci-robot
7098f1ad38 Merge pull request #71382 from yagonobre/fix-reset
Fix kubeadm reset in case of external etcd
2018-11-24 01:59:58 -08:00
Lubomir I. Ivanov
a1a7ecaab3 kubeadm: add missing --config flag to mark-control-plane phase 2018-11-24 05:18:03 +02:00
Yago Nobre
52835fbc80 Fix kubeadm reset in case of external etcd 2018-11-23 16:27:00 -02:00
fabriziopandini
8a53031b4e Fix etcd connect for join --control-plane 2018-11-22 17:17:27 +01:00
Rostislav M. Georgiev
0110b6e8bf kubeadm: Remove forgotten debug Println
Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2018-11-22 17:05:23 +02:00
k8s-ci-robot
b6a0718858 Merge pull request #71323 from bart0sh/PR0043-kubeadm-init-use-commandline-options-with-config
kubeadm: override node registration options from command line (follow-up)
2018-11-22 01:46:51 -08:00
yuexiao-wang
1d38de3a29 fix test names for manifests
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2018-11-22 15:30:24 +08:00
Ed Bartosh
b4b4718fc1 kubeadm: override node registration options from command line
'kubeadm init' silently ignores --node-name and --cri-socket
command line options if --config option is specified.

Implemented setting 'name' and 'criSocket' options from the command
line even if --config command line option is used.
2018-11-21 21:39:07 +02:00
Rostislav M. Georgiev
037fb6103e kubeadm: config migrate handles more valid configs
kubeadm config migrate uses AnyConfigFileAndDefaultsToInternal, which can
unmarshal config from file only if InitConfiguration or JoinConfiguration are
present. Even with that in mind, it can only return a singlie config object,
with InitConfiguration taking precendence over JoinConfiguration. Thus, the
following cases were not handled properly, while they were perfectly valid for
kubeadm init/join:

- ClusterConfiguration only file caused kubeadm config migrate to exit with
  error.
- Init + Join configurations in the same file caused Init + Cluster
  configuration to be produced (ignoring JoinConfiguration). The same is valid
  when the combo is Init + Cluster + Join configurations.
- Cluster + Join configuration ignores ClusterConfiguration and only
  JoinConfiguration gets migrated.

To fix this, the following is done:
- Introduce MigrateOldConfigFromFile which migrates old config from a file,
  while ensuring that all kubeadm originated input config kinds are taken care
  of. Add comprehensive unit tests for this.
- Replace the use of AnyConfigFileAndDefaultsToInternal in
  kubeadm config migrate with MigrateOldConfigFromFile.
- Remove the no longer used and error prone AnyConfigFileAndDefaultsToInternal.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2018-11-21 13:18:39 +02:00
k8s-ci-robot
1431aeb45d Merge pull request #71283 from Klaven/kubeadm_857
Updates to always pass spec.nodeName as --hostname-override
2018-11-20 17:31:24 -08:00
k8s-ci-robot
aac9ee1793 Merge pull request #71259 from rosti/minver-bump-12
kubeadm: Bump minimum Kubernetes version to v1.12
2018-11-20 17:31:15 -08:00
k8s-ci-robot
f8983a8988 Merge pull request #70633 from leblancd/kubeadm_etcd_v6_fix
Fix kubeadm etcd manifests to use brackets around IPv6 addrs
2018-11-20 15:34:24 -08:00
Marek Counts
5ad7e4ee09 Fixes kubeadm 857
updated manifest file to always pass spec.nodeName as the --hostname-override.
2018-11-20 17:44:26 -05:00