kubenetes中master查不到节点,重新初始化加入节点。

本文详细描述了如何清理控制平面和工作节点的Kubernetes组件,重新初始化集群,配置kubectl,安装网络插件,并加入工作节点的过程,以及最后验证集群状态的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 清理控制平面:首先,清理掉控制平面组件,包括etcd、kube-apiserver、kube-controller-manager和kube-scheduler。

    bashCopy code

    $ sudo systemctl stop kubelet
    $ sudo kubeadm reset -f
    $ sudo rm -rf /etc/kubernetes/
    $ sudo rm -rf $HOME/.kube/
    
  • 清理工作节点:接下来,清理工作节点上的Kubernetes组件和配置。

    bashCopy code

    $ sudo systemctl stop kubelet
    $ sudo kubeadm reset -f
    $ sudo rm -rf /etc/kubernetes/
    $ sudo rm -rf /var/lib/kubelet/
    $ sudo rm -rf /var/lib/cni/
    
  • 重新初始化:执行kubeadm初始化命令重新初始化集群。根据你的需求和环境设置,可以使用不同的参数选项。

    bashCopy code

    $ sudo kubeadm init <options>
    

    这将初始化控制平面组件并生成初始化令牌(token)。注意保存好生成的连接信息和令牌。

  • 配置kubectl:配置kubectl命令行工具以与重新初始化的集群进行通信。

    bashCopy code

    $ mkdir -p $HOME/.kube
    $ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    $ sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  • 安装网络插件:根据你的网络插件选择,安装和配置网络插件。常用的网络插件包括Calico、Flannel和Cilium等。

  • 加入工作节点:将工作节点加入到重新初始化的集群中。使用之前生成的连接信息和令牌执行加入操作。

    bashCopy code

    $ sudo kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <ca-cert-hash>
    

    其中,<master-node-ip><master-node-port>是刚刚重新初始化的控制平面节点的IP地址和端口,<token><ca-cert-hash>是初始化令牌和CA证书哈希值。

  • 验证集群状态:等待工作节点加入集群,然后使用以下命令验证集群状态。

    bashCopy code

    $ kubectl get nodes
    $ kubectl get pods --all-namespaces
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值