You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes集群安装问题:节点加入主节点时连接被拒绝

解决kubeadm join连接API服务器失败的问题

嘿,我来帮你排查这个在Ubuntu 16.04从节点执行kubeadm join时连接主节点API服务器失败的问题,这类问题在搭建K8s集群时挺常见的,咱们一步步来定位解决:

1. 先确认网络连通性是否正常

这是最常见的触发原因,先从基础的网络检查开始:

  • 在从节点上测试主节点IP的可达性:
    ping <master ip>
    
    如果ping不通,先排查主从节点的网络配置(比如是否在同一网段、路由是否正常、云服务器安全组是否放行)。
  • 检查主节点6443端口是否开放(K8s API Server默认监听端口):
    先在从节点安装netcat(如果没装的话):
    sudo apt-get update && sudo apt-get install netcat -y
    
    然后测试端口连通性:
    nc -zv <master ip> 6443
    
    如果连接失败,去主节点开放该端口:
    sudo ufw allow 6443/tcp
    
    (如果主节点用的是iptables等其他防火墙工具,要对应添加放行规则)

2. 检查主节点kube-apiserver状态

如果网络没问题,那要确认主节点的API服务是否正常运行:

  • 在主节点上查看kube-system命名空间下的pod状态:
    kubectl get pods -n kube-system
    
    找到kube-apiserver-<你的主节点名称>这个pod,确保它的状态是Running。
  • 如果pod未运行,查看日志排查原因:
    kubectl logs kube-apiserver-<你的主节点名称> -n kube-system
    
    常见原因包括端口被占用、证书配置错误、etcd连接失败等。

3. 验证join命令的token和CA哈希是否有效

K8s的默认join token有效期为24小时,过期后就无法使用;另外手动复制时也容易输错:

  • 在主节点重新生成有效的join命令:
    kubeadm token create --print-join-command
    
    直接复制这个命令输出的完整内容,在从节点执行,避免手动输入token和哈希时出错。

4. 检查Ubuntu 16.04的K8s前置配置是否符合要求

Ubuntu 16.04有几个特定的配置必须满足,否则会影响集群节点加入:

  • 关闭Swap:K8s要求必须关闭swap,临时关闭:
    sudo swapoff -a
    
    永久关闭(避免重启后恢复):编辑/etc/fstab文件,注释掉包含swap的行,然后保存退出。
  • 加载必要内核模块:确保br_netfilter模块已加载:
    lsmod | grep br_netfilter
    
    如果没有输出,手动加载并设置开机自动加载:
    sudo modprobe br_netfilter
    echo br_netfilter | sudo tee /etc/modules-load.d/k8s.conf
    
  • 配置sysctl参数:确保桥接的流量能被iptables正确处理:
    sudo sysctl net.bridge.bridge-nf-call-iptables=1
    echo net.bridge.bridge-nf-call-iptables=1 | sudo tee /etc/sysctl.d/k8s.conf
    sudo sysctl --system
    

5. 确保主从节点的K8s组件版本一致

kubeadm、kubelet、kubectl的版本必须完全匹配,否则会出现兼容性问题:

  • 在主节点和从节点分别执行以下命令查看版本:
    kubeadm version
    kubelet --version
    
    如果版本不一致,需要在从节点重装对应版本的组件,确保和主节点完全相同。

内容的提问来源于stack exchange,提问作者chrx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:03:59