-
Notifications
You must be signed in to change notification settings - Fork 717
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kubelet 'cloud provider' extra flags not propagated to joined nodes #1021
Comments
Workaround (tested on 1.11.1) is to set the default file on each worker node before initialising.
|
This is expected, everything in We might wanna document this for the specific case of cloud providers, as that option isn't available in the config file. |
How does that sit with the idea that the token is all you need to connect to the cluster. Has that concept been abandoned? |
@NeilW I'm not totally sure I understand the question. |
If I use a bootstrap token with a 'kubeadm join', the cluster won't join properly because the 'cloud-provider: external' isn't propagated to the kubelet config on the Node by the Master. |
Yes, normally, but not in this case as cloud provider information isn't stored in the kubelet ComponentConfig. hmm yeah this is an edge case indeed. For now you just have to feed it to your kubelets.
I don't think it ever will be the default. cc @andrewsykim FYI |
This does not get automatically passed down from kubeadm, see kubernetes/kubeadm#1021.
This does not get automatically passed down from kubeadm, see kubernetes/kubeadm#1021.
This does not get automatically passed down from kubeadm, see kubernetes/kubeadm#1021.
This does not get automatically passed down from kubeadm, see kubernetes/kubeadm#1021.
* Write cloud.conf on all cluster members - we use cloud_init to write this file * Write /etc/default/kubelet - we use cloud_init to write this file * Fix tests Fix KORIS-67 see discussion in gh.com/kubernetes/kubeadm/issues/1021
BUG REPORT
Versions
kubeadm version (use
kubeadm version
):kubeadm version: &version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:50:16Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Environment:
Kubernetes version (use
kubectl version
):Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:53:20Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:43:26Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Cloud provider or hardware configuration:
Brightbox
OS (e.g. from /etc/os-release):
Ubuntu 18.04 LTS
Kernel (e.g.
uname -a
):Linux srv-uf8ns 4.15.0-29-generic The product_uuid and the hostname should be unique across nodes #31-Ubuntu SMP Tue Jul 17 15:39:52 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Others:
What happened?
After running a kubeadm init with
cloudProvider: external
in the config (in either the v1alpha1 or v1alpha2 format), the cloud-provider flag is not passed to the kubelet on joined nodes in/var/lib/kubelet/kubeadm-flags.env
This means the node is not tainted and not initialised by the cloud-controller-manager application before pods are scheduled.
The master node is tainted and initialised as expected.
What you expected to happen?
If cloud provider external is specified the kubelet should be configured in external mode on all nodes joined to the master
How to reproduce it (as minimally and precisely as possible)?
or
sudo kubeadm init --config kubeadm.conf
then run the printed join command on the worker node
Anything else we need to know?
The stored
kubeadm-config
configmap has an empty nodeRegistration block, and there is no config setting for cloud-provider in thekubelet-config-1.11
configmap (AIUI there isn't one possible)The result is a different env file on master and worker
master
worker
The text was updated successfully, but these errors were encountered: