Commit Graph

3283 Commits

Author SHA1 Message Date
Ed Bartosh
e5d6536ade add UpgradePlan to the kubeadm.output API group 2020-03-24 12:47:42 +02:00
jingyih
f9e0e4c6b4 Update default etcd server to 3.4.4 2020-03-18 00:27:46 -07:00
Kubernetes Prow Robot
d45fa525e7 Merge pull request #88945 from sandyleo26/kubeadm-check-windows-wrap-error-properly
fix: #2056 check_windows wrap error properly
2020-03-17 19:28:29 -07:00
Kubernetes Prow Robot
be2f9e74bf Merge pull request #88811 from rajansandeep/invalidmigrationfail
Ensure CoreDNS running when Corefile migration doesn't support current version
2020-03-17 19:27:18 -07:00
Sandeep Rajan
fcd229e4bd ensure coredns running when migration fails
add an additional check for coredns image sha

add a check to see if migration is required
2020-03-11 11:32:32 -04:00
Sha Liu
12750ac64f kubeadm: wrap error properly in check_windows.go 2020-03-09 22:29:15 +11:00
Jordan Liggitt
b7c2faf26c client-go dynamic client: add context to callers 2020-03-06 10:56:23 -05:00
Mike Danese
76f8594378 more artisanal fixes
Most of these could have been refactored automatically but it wouldn't
have been uglier. The unsophisticated tooling left lots of unnecessary
struct -> pointer -> struct transitions.
2020-03-05 14:59:47 -08:00
Mike Danese
c58e69ec79 automated refactor 2020-03-05 14:59:46 -08:00
Lubomir I. Ivanov
8943e443e8 kubeadm: deprecate the flag --use-api for cert renewal
The KCM is moving to means of only singing apiserver (kubelet) client
and kubelet serving certificates. See:
  https://github.com/kubernetes/enhancements/blob/master/keps/sig-auth/20190607-certificates-api.md#signers
Up until now the experimental kubeadm functionality '--use-api'
under "kubeadm alpha certs renew" was using the KCM to sign *any*
certficate as long as the KCM has the root CA cert/key.

Post discussions with the kubeadm maintainers, it was decided that
this functionality should be removed from kubeadm due to the
requirement to have external signers for renewing the common
control-plane certificates that kubeadm manages.
2020-03-05 03:37:00 +02:00
Kubernetes Prow Robot
5c5faed39b Merge pull request #88287 from gab-satchi/master
Windows specific kubelet flags in kubeadm-flags.env
2020-03-04 13:18:52 -08:00
Gab Satch
9fabafdbb1 Windows specific kubelet flags in kubeadm-flags.env
- Uses correct pause image for Windows
- Omits systemd specific flags
- Common build flags function to be used by Linux and Windows
- Uses user configured image repository for Windows pause image
2020-03-04 11:05:53 -05:00
Sandeep Rajan
da8453af6e fix unsupported bug 2020-02-27 10:39:47 -05:00
Kubernetes Prow Robot
e61a878e6d Merge pull request #88482 from rajansandeep/fixunsupported
[kubeadm]: Fix the CoreDNS preflight check for unsupported plugins
2020-02-26 19:39:33 -08:00
Sandeep Rajan
ca5d394f6a fix the coredns preflight check for unsupported plugins 2020-02-26 15:08:05 -05:00
Kubernetes Prow Robot
95504c32fe Merge pull request #86260 from rajansandeep/corednsto1.6.6-kubeadm
[kubeadm]: Bump CoreDNS version to 1.6.7
2020-02-24 23:10:49 -08:00
Kubernetes Prow Robot
59870dad01 Merge pull request #87748 from satyasm/kep-local-cidr
Refactor handling of local traffic detection.
2020-02-24 19:06:48 -08:00
Kubernetes Prow Robot
b68f869f43 Merge pull request #88434 from SataQiu/fix-kubeadm-20200223
kubeadm: fix the bug that 'kubeadm upgrade' hangs in single node cluster
2020-02-24 13:11:59 -08:00
Sandeep Rajan
a980cb7ead update coredns to 1.6.7 2020-02-24 15:00:55 -05:00
Kubernetes Prow Robot
4e79344501 Merge pull request #88467 from neolit123/1.18-print-volume-verbosity
kubeadm: modify how component volumes are printed
2020-02-24 11:03:15 -08:00
Kubernetes Prow Robot
116e27fc19 Merge pull request #86953 from rojkov/ecdsa
kubeadm: allow creating a cluster with ECDSA keys
2020-02-24 11:02:50 -08:00
Lubomir I. Ivanov
1b710a4c56 kubeadm: modify how component volumes are printed
After the shift for init phases, GetStaticPodSpecs() from
app/phases/controlplane/manifests.go gets called on each control-plane
component sub-phase. This ends up calling the Printf from
AddExtraHostPathMounts() in app/phases/controlplane/volumes.go
multiple times printing the same volumes for different components.

- Remove the Printf call from AddExtraHostPathMounts().
- Print all volumes for a component in CreateStaticPodFiles() using klog
V(2).

Perhaps in the future a bigger refactor is needed here were a
single control-plane component spec can be requested instead of a
map[string]v1.Pod.
2020-02-24 16:41:03 +02:00
Kubernetes Prow Robot
20e3288277 Merge pull request #88373 from SataQiu/fix-kubeadm-20200220
kubeadm: fallback to a known etcd version if an unknown k8s version is passed
2020-02-24 05:14:47 -08:00
Dmitry Rozhkov
109f5db5a3 kubeadm: allow creating a cluster with ECDSA keys
The selected key type is defined by kubeadm's --feature-gates option:
if it contains PublicKeysECDSA=true then ECDSA keys will be generated
and used.

By default RSA keys are used still.

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
2020-02-24 11:20:07 +02:00
SataQiu
2e23f84745 kubeadm: fallback to a known etcd version if an unknown k8s version is passed 2020-02-24 10:46:39 +08:00
Kubernetes Prow Robot
b513f359a0 Merge pull request #88429 from taesunny/master
Fix: cmd/kubeadm Typos in some error messages, comments
2020-02-23 11:14:47 -08:00
SataQiu
8067dd8470 kubeadm: fix the bug that 'kubeadm upgrade' hangs in single node cluster 2020-02-23 18:57:32 +08:00
Kubernetes Prow Robot
31b8c0d23d Merge pull request #87656 from ereslibre/do-not-depend-on-cluster-status
kubeadm: deprecate the `ClusterStatus` dependency
2020-02-22 22:30:47 -08:00
Kubernetes Prow Robot
b893aa707e Merge pull request #88052 from neolit123/1.18-renew-use-ca-in-kubeconfig
kubeadm: update embedded CA in kubeconfig files on renewal
2020-02-22 20:50:47 -08:00
Taesun Lee
d10e3da92d Fix typos in some error messages, comments
- cmd/kubeadm
- RemoveContnainers -> RemoveContainers
- iterface -> interface
- stategicMergeSlice -> strategicMergeSlice
2020-02-23 00:44:47 +09:00
Satyadeep Musuvathy
8c6956e5bb Refactor handling of local traffic detection. 2020-02-21 17:57:34 -08:00
Kubernetes Prow Robot
58fcca211f Merge pull request #88359 from taesunny/master
Fix: Typos in apiclient util.
2020-02-20 19:50:46 -08:00
Rafael Fernández López
3e59a0651f kubeadm: optimize the upgrade path from ClusterStatus to annotations
When doing the very first upgrade from a cluster that contains the
source of truth in the ClusterStatus struct, the new kubeadm logic
will try to retrieve this information from annotations.

This changeset adds to both etcd and apiserver endpoint retrieval the
special case in which they won't retry if we are in such cases. The
logic will retry if we find any unknown error, but will not retry in
the following cases:

- etcd annotations do not contain etcd endpoints, but the overall list
  of etcd pods is greater than 0. This means that we listed at least
  one etcd pod, but they are missing the annotation.

- API server annotation is not found on the api server pod for a given
  node name, but no errors aside from that one were found. This means
  that the API server pod is present, but is missing the annotation.

In both cases there is no point in retrying, and so, this speeds up the
upgrade path when coming from a previous existing cluster.
2020-02-20 12:19:05 +01:00
Rafael Fernández López
b140c5d64b kubeadm: remove ClusterStatus dependency
While `ClusterStatus` will be maintained and uploaded, it won't be
used by the internal `kubeadm` logic in order to determine the etcd
endpoints anymore.

The only exception is during the first upgrade cycle (`kubeadm upgrade
apply`, `kubeadm upgrade node`), in which we will fallback to the
ClusterStatus to let the upgrade path add the required annotations to
the newly created static pods.
2020-02-20 12:18:56 +01:00
Taesun Lee
97fc3e6139 Fix typos in apiclient util
fix initalTimeout to initialTimeout
2020-02-20 15:20:04 +09:00
Lubomir I. Ivanov
ad8bf3c139 kubeadm: do not pin unit tests to a version 2020-02-19 22:20:33 +02:00
Lubomir I. Ivanov
22319019ab kubeadm: update constants for 1.18
- Include 1.19 as a supported etcd mapping.
- Update minimum and current versions.
2020-02-19 21:40:46 +02:00
Ed Bartosh
a31ccc7b99 kubeadm config images list: test structured output
Implemented tests for 'kubeadm config images list' structured output.
2020-02-17 17:26:17 +02:00
Ed Bartosh
23e4d05083 kubeadm config images list: implement structured output
Used cli-runtime API to print image info in 5 formats:

  - TEXT (identical to the current output)
  - YAML
  - JSON
  - JSONPATH
  - Go template
2020-02-17 17:23:08 +02:00
Ed Bartosh
be7e5b47fe kubeadm config images list: update output API 2020-02-17 17:23:08 +02:00
Benjamin Elder
1631825e44 bump pause to 3.2 in kubelet 2020-02-14 11:40:15 -08:00
Benjamin Elder
a00a1e39ef bump pause to 3.2 in kubeadm 2020-02-14 11:40:15 -08:00
Yu-Ju Hong
bcd975aa65 Replace Beta OS/arch labels with the GA ones
Beta OS/arch labels have been deprecated since 1.14.
This change replaces these labels with the GA ones.
2020-02-13 09:38:51 -08:00
Lubomir I. Ivanov
0ba5891519 kubeadm: update embedded CA in kubeconfig files on renewal
While kubeadm does not support CA rotation,
the users might still attempt to perform this manually.
For kubeconfig files, updating to a new CA is not reflected
and users need to embed new CA PEM manually.

On kubeconfig cert renewal, always keep the embedded CA
in sync with the one on disk.

Includes a couple of typo fixes.
2020-02-12 05:03:20 +02:00
SataQiu
f2150587f3 kubeadm: remove 'kubeadm upgrade node config' 2020-02-10 18:28:41 +08:00
Kubernetes Prow Robot
abe6321296 Merge pull request #87952 from mikedanese/opts
add *Options to Create, Update, and Patch in generated clientsets
2020-02-08 20:43:53 -08:00
Kubernetes Prow Robot
415b3ed950 Merge pull request #87944 from SataQiu/kubeadm-2020020802
kubeadm: remove 'kubeadm alpha kubelet config download'
2020-02-08 14:46:57 -08:00
Kubernetes Prow Robot
887ccc483c Merge pull request #87942 from SataQiu/kubeadm-2020020801
kubeadm: deprecate --kubelet-version command line option
2020-02-08 14:46:44 -08:00
Kubernetes Prow Robot
20dca67a8a Merge pull request #87453 from aojea/kubeadm_dual
kubeadm: dual-stack validation allow single stack
2020-02-08 14:46:06 -08:00
Mike Danese
25651408ae generated: run refactor 2020-02-08 12:30:21 -05:00