From 6d387bf59d0f77b9ce7dd9779c00864d1a17b884 Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Mon, 2 Oct 2017 10:47:03 +0100 Subject: [PATCH] kubernetes: do not try to re-init the cluster on subsequent boots If `kubelet.conf` already exits then don't try to redo `kubeadm`, no matter what the metadata requests. Signed-off-by: Ian Campbell --- projects/kubernetes/kubernetes/kubelet.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/projects/kubernetes/kubernetes/kubelet.sh b/projects/kubernetes/kubernetes/kubelet.sh index a717b4659..0f6e9aee5 100755 --- a/projects/kubernetes/kubernetes/kubelet.sh +++ b/projects/kubernetes/kubernetes/kubelet.sh @@ -10,7 +10,12 @@ fi if [ -e /etc/kubelet.sh.conf ] ; then . /etc/kubelet.sh.conf fi -if [ -e /var/config/kubeadm/init ] ; then + +conf=/var/lib/kubeadm/kubelet.conf + +if [ -f "${conf}" ] ; then + echo "kubelet.sh: kubelet already configured" +elif [ -e /var/config/kubeadm/init ] ; then echo "kubelet.sh: init cluster with metadata \"$(cat /var/config/kubeadm/init)\"" # This needs to be in the background since it waits for kubelet to start. # We skip printing the token so it is not persisted in the log. @@ -23,8 +28,6 @@ elif [ -e /var/config/userdata ] ; then kubeadm join --skip-preflight-checks $(cat /var/config/userdata) fi -conf=/var/lib/kubeadm/kubelet.conf - echo "kubelet.sh: waiting for ${conf}" # TODO(ijc) is there a race between kubeadm creating this file and # finishing the write where we might be able to fall through and