kubeadm: kubeadm join fails when multiple CRI sockets exist

What keywords did you search in kubeadm issues before filing this one?

kubeadm-config

Is this a BUG REPORT or FEATURE REQUEST?

BUG REPORT

Versions

kubeadm version (use kubeadm version):

kubeadm version: &version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.0", GitCommit:"641856db18352033a0d96dbc99153fa3b27298e5", GitTreeState:"archive", BuildDate:"2019-03-29T16:29:07Z", GoVersion:"go1.12.1", Compiler:"gc", Platform:"linux/amd64"}

Environment:

  • Kubernetes version (use kubectl version): 1.14.0
  • Cloud provider or hardware configuration: baremetal
  • OS (e.g. from /etc/os-release): Clear Linux
  • Kernel (e.g. uname -a): 4.20
  • Others:

What happened?

On a node that has /var/run/dockershim.sock, and /var/run/crio/crio.sock, kubeadm join --cri-socket /var/run/crio/crio.sock fails with an error

[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
error execution phase preflight: unable to fetch the kubeadm-config ConfigMap: Found multiple CRI sockets, please use --cri-socket to select one: /var/run/dockershim.sock, /var/run/crio/crio.sock

Passing --cri-socket has no effect.

What you expected to happen?

Passing --cri-socket would resolve the conflict.

How to reproduce it (as minimally and precisely as possible)?

Have two CRI runtimes running (crio.sock and dockershim.sock present)

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 16 (9 by maintainers)

Most upvoted comments

@rosti I tried both

 sudo kubeadm join <apiserver>:6443 --token <token>  --discovery-token-ca-cert-hash sha256:<hash> --cri-socket /var/run/crio/crio.sock

and

sudo kubeadm join --config kubeadm-config.yaml

with the information in kubeadm-config.yaml