Debian如何管理K8S集群中的节点

619
2025/3/23 6:32:57
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Debian系统上管理Kubernetes(K8S)集群中的节点,通常涉及以下几个关键步骤和命令。以下是一个基本的指南,帮助你在Debian系统上管理K8S集群中的节点。

新增节点到K8S集群

  1. 准备新节点

    • 准备一个与现有集群相同操作系统的主机作为新节点。
    • 配置每个节点的hosts文件保持一致。
    • 给新加节点做免密(可选),以便于后续操作。
  2. 通过kubeadm将节点加入集群

    • 在Master节点上获取加入命令:
      kubeadm token create --print-join-command
      
    • 运行加入命令于新增节点上:
      kubeadm join <Master节点IP>:6443 --token <token> --discovery-token-ca-cert-hash <hash>
      
    • 验证节点状态:
      kubectl get nodes
      
  3. 验证节点是否加入成功

    • 新增节点应显示为Ready状态,说明新节点已添加成功。

从K8S集群中删除节点

  1. 确保节点安全下线

    • 驱逐节点上的Pods:
      kubectl cordon <node-name>
      
    • 使用drain命令驱逐节点上的Pods,并迁移到其他节点:
      kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
      
  2. 从集群中移除节点

    • 从Master节点中删除节点记录:
      kubectl delete node <node-name>
      
    • 再次查看节点情况以确认节点已被移除。
  3. 清理被移除的节点(可选步骤):

    • 根据具体需求进行节点的进一步清理工作。

查看节点信息

  • 使用以下命令查看集群节点信息:
    kubectl get nodes
    
  • 查看集群节点详细信息:
    kubectl get nodes -o wide
    
  • 查看节点描述详细信息:
    kubectl describe node <node-name>
    

节点管理策略

  • Cordon和Drain命令
    • kubectl cordon命令标记一个节点为“不可调度”,确保新的Pods不会被调度到该节点。
    • kubectl drain命令驱逐节点上的Pods,并迁移到其他节点。

参考资料

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Debian swapper有何作用