debian

debian上如何管理k8s节点

小樊
50
2025-08-26 07:44:53
栏目: 智能运维

在Debian上管理K8S节点,主要涉及安装配置、节点操作及监控维护,具体如下:

一、安装与初始化集群

  1. 准备工作

    • 确保所有节点(主节点+工作节点)为Debian系统,关闭swap分区:
      sudo swapoff -a 并注释/etc/fstab中swap相关行。
    • 配置主机名及/etc/hosts文件,确保节点间IP解析正确。
    • 添加Kubernetes官方apt仓库并安装必要组件(kubeletkubeadmkubectl):
      sudo apt update  
      sudo apt install -y apt-transport-https ca-certificates curl  
      curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -  
      echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list  
      sudo apt install -y kubelet kubeadm kubectl  
      sudo apt-mark hold kubelet kubeadm kubectl  # 锁定版本  
      
  2. 初始化主节点
    在主节点执行:
    sudo kubeadm init --pod-network-cidr=10.244.0.0/16(根据需求指定Pod网络CIDR)。
    初始化后获取加入命令(含tokenca-cert-hash),用于工作节点加入集群。

  3. 加入工作节点
    在工作节点执行主节点生成的kubeadm join命令:
    sudo kubeadm join <master-ip>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>

二、节点管理操作

  1. 查看节点状态

    • 查看所有节点:kubectl get nodes
    • 查看节点详情:kubectl describe node <节点名>
  2. 添加/删除节点

    • 添加:新节点按上述步骤安装后,使用kubeadm join命令加入。
    • 删除
      1. 驱逐节点Pods:kubectl drain <节点名> --ignore-daemonsets
      2. 从集群移除:kubectl delete node <节点名>
  3. 节点维护

    • 标记节点:添加标签(如硬件特性):kubectl label nodes <节点名> key=value
    • 设置污点:防止节点接收新Pods:kubectl taint nodes <节点名> key=value:NoSchedule
    • 临时维护:标记节点为不可调度(cordon),维护后恢复(uncordon):
      kubectl cordon <节点名>  # 标记为不可调度  
      kubectl uncordon <节点名> # 恢复可调度  
      ```。  
      
      

三、监控与维护

参考来源

0
看了该问题的人还看了