Commit Graph

2309 Commits (a4cc754fb4affb1bb3c0fc6c80d658bcf73ce68e)

Author SHA1 Message Date
Lubomir I. Ivanov 1b0ba920fe kubeadm: fix a couple of problems related to initData/joinData
Fix a couple of problems related to data used by the phases runners
of `init` and `join`.

1) make `newInitData()` and `newJoinData()` return pointers.

Methods of the data objects returned by these functions should
be able to modify fields in the data objects - e.g.
`func (d initData) Client()`. This allows us to store a state and
not execute the same logic multiple times - e.g. obtaining a client.

A side effect of this change is that the `new...` functions must return
pointers, so that casting the data object in a phase, from
`workflow.RunData` to a locally defined interface, works.

2) Make it possible to pass arguments from a parent command
to a sub-phase with regards to data initialization.
2019-01-26 18:41:19 +02:00
Kubernetes Prow Robot a5e424dc17
Merge pull request #72923 from saschagrunert/dedent-update
Update dedent to latest release
2019-01-25 18:32:23 -08:00
Kubernetes Prow Robot 5673506540
Merge pull request #73320 from liggitt/initializer-cleanup
Clean up initializer-related comments, test data
2019-01-25 15:28:18 -08:00
Kubernetes Prow Robot d54716338a
Merge pull request #73302 from rajansandeep/prometheusport
Add metrics port to CoreDNS service
2019-01-25 12:04:37 -08:00
Kubernetes Prow Robot c6a6c65e32
Merge pull request #73316 from rosti/fix-kubeadm-reset
kubeadm: Fix auto CRI detection in kubeadm reset
2019-01-25 10:05:22 -08:00
Jordan Liggitt 89b0b0b84b Clean up initializer-related comments, test data 2019-01-25 12:37:45 -05:00
Kubernetes Prow Robot ce52bf1265
Merge pull request #73093 from ereslibre/verify-certificate-sans
kubeadm: verify that present certificates contain at least the required SANs
2019-01-25 08:53:08 -08:00
Rostislav M. Georgiev 873accd513 kubeadm: Fix auto CRI detection in kubeadm reset
Reversed if statement is turns off CRI detection in kubeadm reset. Trivial fix.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2019-01-25 17:04:43 +02:00
Sandeep Rajan e9220dd408 add prometheus port 2019-01-25 11:29:03 +05:30
Andrew Kim 0bc5508aca replace client-go/util/integer with k8s.io/utils/integer 2019-01-24 15:34:21 -05:00
Kubernetes Prow Robot 20a11ac5cc
Merge pull request #73239 from mattkelly/bugfix/kubeadm-sa-cert-dir
Add back --cert-dir option for kubeadm init phase certs sa
2019-01-24 08:45:36 -08:00
Matt Kelly 35faaab570
Add back --cert-dir option for init phase certs sa 2019-01-23 19:37:08 -05:00
Akihito INOH 4a3b990bbe Change to [bootstrap-token] in kubeadm output
In output of "kubeadm init", there are two strings for meaning of
bootstrap token which are "bootstraptoken" and "bootstrap-token".
This changes `[bootstraptoken]` to `[bootstrap-token]`.
2019-01-24 08:40:58 +09:00
Kubernetes Prow Robot baaaa15fdf
Merge pull request #69940 from MarcPow/master
Bind coredns containers to  linux nodes to avoid Windows scheduling
2019-01-23 12:19:53 -08:00
Kubernetes Prow Robot b66e332d3c
Merge pull request #69366 from rosti/cri-auto-detect
kubeadm: Detect CRIs automatically
2019-01-23 09:49:17 -08:00
RA489 5b64a98689 Stop using API server's `--insecure-port` 2019-01-22 17:31:39 +05:30
Rostislav M. Georgiev f97770b175 kubeadm: Detect CRIs automatically
In order to allow for a smoother UX with CRIs different than Docker, we have to
make the --cri-socket command line flag optional when just one CRI is
installed.

This change does that by doing the following:

- Introduce a new runtime function (DetectCRISocket) that will attempt to
  detect a CRI socket, or return an appropriate error.
- Default to using the above function if --cri-socket is not specified and
  CRISocket in NodeRegistrationOptions is empty.
- Stop static defaulting to DefaultCRISocket. And rename it to
  DefaultDockerCRISocket. Its use is now narrowed to "Docker or not"
  distinguishment and tests.
- Introduce AddCRISocketFlag function that adds --cri-socket flag to a flagSet.
  Use that in all commands, that support --cri-socket.
- Remove the deprecated --cri-socket-path flag from kubeadm config images pull
  and deprecate --cri-socket in kubeadm upgrade apply.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2019-01-21 16:12:04 +02:00
Kubernetes Prow Robot 3ec18a5aed
Merge pull request #73029 from neolit123/join-phases
kubeadm: include a phase runner for `join`
2019-01-20 10:53:47 -08:00
Kubernetes Prow Robot 3fd7187b4c
Merge pull request #73059 from SataQiu/fix-20190118
Print more error details about CertSANs validation
2019-01-20 08:21:10 -08:00
Lubomir I. Ivanov 9744d40f37 kubeadm: include a phase runner for `join`
- add a phase runner
- expose more joinData fields and getter methods
- add TODOs
2019-01-20 16:31:13 +02:00
Rafael Fernández López 6dc6ce78d9
kubeadm: adapt timeout for new etcd member to join 2019-01-20 12:39:53 +01:00
Kubernetes Prow Robot f2b133d7b4
Merge pull request #72984 from ereslibre/wait-for-etcd-when-growing
kubeadm: wait for the etcd cluster to be available when growing it
2019-01-19 23:57:46 -08:00
SataQiu 7bf6ff2ec1 print more error details about CertSANs validation 2019-01-20 08:42:09 +08:00
Rafael Fernández López f22f594d34
kubeadm: verify that present certificates contain at least the required SANs
This avoids ending in a wrong cluster state by assuming that the
present certificates will work. It is specially important when we
are growing etcd from 1 member to 2, in which case in case of failure
upon joining etcd will be unavailable.
2019-01-19 16:00:19 +01:00
Rafael Fernández López b4cb3fd37c
kubeadm: wait for the etcd cluster to be available when growing it
When the etcd cluster grows we need to explicitly wait for it to be
available. This ensures that we are not implicitly doing this in
following steps when they try to access the apiserver.
2019-01-18 12:04:39 +01:00
Sascha Grunert ba7aaa911d
Update dedent to latest release
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2019-01-17 08:30:07 +01:00
Kubernetes Prow Robot 6d479af411
Merge pull request #72870 from MalloZup/fix-join-ha
Kubeadm/HA: pull images during join for control-plane
2019-01-16 04:03:20 -08:00
Kubernetes Prow Robot 69cb938a6a
Merge pull request #72909 from MalloZup/minor-print
Kubeadm: Use fmt.Println instead of fmt.Printf
2019-01-15 12:53:43 -08:00
Kubernetes Prow Robot 9c48ca4899
Merge pull request #72823 from dims/bump-version-of-docker-to-18.09
Bump Docker supported version to 18.09
2019-01-15 11:45:06 -08:00
dmaiocchi 86b6bbd1b9 Pre-pull images after preflight for HA setup.
If download fails continue with a warning only
2019-01-15 16:49:31 +01:00
dmaiocchi a7225bc15c Kubeadm: Use fmt.Println instead of fmt.Printf 2019-01-15 09:22:24 +01:00
Dmitry Rozhkov 8c87ef51b8 kubeadm: reduce variables scope and hide private funcs
This is a minor cleanup which helps to make the code of kubeadm a bit
less error-prone by reducing the scope of local variables and
unexporting functions that are not meant to be used outside of their
respective modules.
2019-01-14 15:29:42 +02:00
Davanum Srinivas 62fc6df5c2
Bump Docker supported version to 18.09
For 1.14, let's switch to latest Docker 18.09

Change-Id: Ib8d4d9dd3cb51cf4780623389a4bcb101d3c8fa7
2019-01-13 21:41:33 -05:00
Kubernetes Prow Robot ef70b1159d
Merge pull request #72442 from fabriziopandini/join-refactor
Refactor the kubeadm join command
2019-01-12 08:06:25 -08:00
Kubernetes Prow Robot 23315c8192
Merge pull request #72802 from foxyriver/dedent
format help text
2019-01-11 23:14:59 -08:00
Kubernetes Prow Robot e44330dfab
Merge pull request #72455 from rojkov/test-e2e-node-gke
e2e-node-tests: fix path to system specs
2019-01-11 03:30:37 -08:00
foxyriver b02e1e17ec format help text 2019-01-11 10:18:56 +08:00
Dmitry Rozhkov 43fce8d6e4 e2e-node-tests: fix path to system specs
e2e-node tests may use custom system specs for validating nodes to
conform the specs. The functionality is switched on when the tests
are run with this command:

    make SYSTEM_SPEC_NAME=gke test-e2e-node

Currently the command fails with the error:

    F1228 16:12:41.568836   34514 e2e_node_suite_test.go:106] Failed to load system spec: open /home/rojkov/go/src/k8s.io/kubernetes/k8s.io/kubernetes/cmd/kubeadm/app/util/system/specs/gke.yaml: no such file or directory

Move the spec file under `test/e2e_node/system/specs` and introduce a single
public constant referring the file to use instead of multiple private constants.
2019-01-10 10:37:55 +02:00
Ed Bartosh d91861e883 kubeadm: add front-proxy CA certificate to selfhosting controller-manager
Selfhosting pivoting fails when using --store-certs-in-secrets
as controller-manager fails to start because of missing front-proxy CA
certificate:
    unable to load client CA file: unable to load client CA file: open
    /etc/kubernetes/pki/front-proxy-ca.crt: no such file or directory

Added required certificate to fix this.

This should fix kubernetes/kubeadm#1281
2019-01-09 17:01:18 +02:00
fabriziopandini fd842480d1 Refactor the kubeadm join command 2019-01-09 12:46:53 +01:00
Ed Bartosh 8148d95ac9 kubeadm selfhosting: fix pod spec mutation for controller-manager
Modified command line options --authentication-kubeconfig and
--authorization-kubeconfig to point out to the correct location
of the controller-manager.conf

This should fix this controller-manager crash:
    failed to get delegated authentication kubeconfig: failed to get
    delegated authentication kubeconfig: stat
    /etc/kubernetes/controller-manager.conf: no such file or directory

Related issue: kubernetes/kubeadm#1281
2019-01-07 15:20:02 +02:00
Kubernetes Prow Robot fdf381098b
Merge pull request #72622 from shavidissa/patch-1
Updated the term master to control plane
2019-01-07 04:55:48 -08:00
Kubernetes Prow Robot b06462f040
Merge pull request #72513 from fabriziopandini/init-unit-test
Add kubeadm init unit test
2019-01-07 03:46:33 -08:00
shavidissa 2a6c5b9b9e
Updated the term master to control plane 2019-01-07 11:26:31 +05:30
Kubernetes Prow Robot 816dfab180
Merge pull request #72572 from fabriziopandini/cleanup-getControllerManagerCommand
kubeadm: cleanup getControllerManagerCommand
2019-01-04 09:02:35 -08:00
fabriziopandini ada466dc67 cleanup-getControllerManagerCommand 2019-01-04 14:08:04 +01:00
Kubernetes Prow Robot d8eba8817b
Merge pull request #72528 from bart0sh/PR0056-kubeadm-selfhosting-upgrade-use-t.Run
kubeadm: use t.Run in selfhosting and update phases
2019-01-04 04:11:33 -08:00
Kubernetes Prow Robot 8a60166fba
Merge pull request #72512 from AdamDang/patch-20
Typo fix in error message: kubadm->kubeadm
2019-01-03 21:58:57 -08:00
Ed Bartosh 442098bdec kubeadm: use t.Run in selfhosting and update phases
Used T.Run API for kubeadm tests in app/phases/selfhosting and
app/phases/update directories

This should improve testing output and make it more visible
which test is doing what.
2019-01-03 19:23:54 +02:00
Kubernetes Prow Robot 8252610f91
Merge pull request #72514 from fabriziopandini/cleanup-etcd-client
kubeadm: cleanup etcd client
2019-01-03 06:58:30 -08:00