Join kubeadm联接失败,仅在一个节点上拒绝连接

Join kubeadm联接失败,仅在一个节点上拒绝连接,join,kubernetes,kubeadm,Join,Kubernetes,Kubeadm,我有一个Kubernetes集群,有1个主集群和5个工人集群, 当我尝试加入第6个工作节点时,会出现以下错误: $ sudo kubeadm join 172.22.20.20:6443 --token xxxxx.yyyyyyyy --discovery-token-ca-cert-hash sha256:zzzzzzz [preflight] Running pre-flight checks. [WARNING FileExisting-crictl]: crictl not fo

我有一个Kubernetes集群,有1个主集群和5个工人集群, 当我尝试加入第6个工作节点时,会出现以下错误:

$ sudo kubeadm join 172.22.20.20:6443 --token xxxxx.yyyyyyyy --discovery-token-ca-cert-hash sha256:zzzzzzz
[preflight] Running pre-flight checks.
    [WARNING FileExisting-crictl]: crictl not found in system path
Suggestion: go get github.com/kubernetes-incubator/cri-tools/cmd/crictl
[discovery] Trying to connect to API Server "172.22.20.20:6443"
[discovery] Created cluster-info discovery client, requesting info from "https://172.22.20.20:6443"
[discovery] Failed to request cluster info, will try again: [Get https://172.22.20.20:6443/api/v1/namespaces/kube-public/configmaps/cluster-info: dial tcp 172.22.20.20:6443: getsockopt: connection refused]
在Ubuntu服务器16.04上,所有工作节点都以完全相同的方式(脚本)构建

加入有限制吗?
什么样的日志会有用?

不,加入集群没有限制

您的
拨号tcp 172.22.20.20:6443:getsockopt:连接被拒绝
,这意味着您的新节点无法连接到正在主机上工作的Kubernetes API服务器

尝试通过
curl
检查新节点和主节点之间的网络连接,例如-
curlhttps://172.22.20.20:6443
,我想您也会遇到类似的错误


所以,检查并修复您的网络设置,应该会有所帮助。

我也遇到了同样的问题。在我的例子中,我用vagrant建立了一个私人网络。 启动kubeadm时,必须指定主机IP

sudo kubeadm init --pod-network-cidr = 192.168.0.0 / 16 --apiserver-advertise-address = {Static_IP_ADRESS_HOST}
例如:

sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --apiserver-advertise-address=172.16.94.10
预期的输出将类似于


我希望这有帮助。

这解决了我的问题。但是,我在主节点中使用了私有IP,而不是主机<代码>--apiserver播发地址=192.168.0.10