Skip to content

kubelet-config-x.y ConfigMap logic improvements #1582

@neolit123

Description

@neolit123

tracking issue in k/e + KEP: kubernetes/enhancements#2915

1.23 Alpha:

1.24 Beta:

1.25 GA:

1.26 post-GA:


EDIT: original issue description below

when a control-plane node is created by init using kubernetesVersion: X.Y, kubeadm will create a "versioned" ConfigMap called kubelet-config-X.Y.

when a worker node joins the cluster, it uses the version of the local kubelet to fetch this ConfigMap, but if the version of the local kubelet differs from the control-plane version (X.Y) used to originally create the CM, the join process will just fail.

both init and upgrade use the version of the control-plane to manage this ConfigMap,
so it makes some sense for the join process to use the version of the control-plane as well.
but this raises the question whether this internal config stored in the CM will be compatible with the local kubelet.

however we have a version skew topic to discuss here as well.
Kubernetes itself supports X-1 nodes joining a X cluster, but kubeadm does not.

in our documentation we have no official mentions if e.g a kubeadm 1.13 and a kubelet 1.13 worker node can join a cluster with a CP that is 1.14:
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/#version-skew-policy

Metadata

Metadata

Assignees

Labels

area/UXkind/deprecationCategorizes issue or PR as related to a feature/enhancement marked for deprecation.kind/designCategorizes issue or PR as related to design.kind/documentationCategorizes issue or PR as related to documentation.lifecycle/activeIndicates that an issue or PR is actively being worked on by a contributor.priority/important-soonMust be staffed and worked on either currently, or very soon, ideally in time for the next release.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions