首页主机资讯Debian系统如何配置Kubernetes安装

Debian系统如何配置Kubernetes安装

时间2025-12-15 12:10:04发布访客分类主机资讯浏览1352
导读:在 Debian 上使用 kubeadm 部署 Kubernetes 集群 一 环境准备与前置条件 节点与网络 至少准备 1 台 Master + 1 台 Worker,推荐 2 核 CPU、2GB 内存、20GB 磁盘 以上。 各节点...

在 Debian 上使用 kubeadm 部署 Kubernetes 集群

一 环境准备与前置条件

  • 节点与网络
    • 至少准备 1 台 Master + 1 台 Worker,推荐 2 核 CPU、2GB 内存、20GB 磁盘 以上。
    • 各节点需 主机名唯一时间同步(如 NTP)、互通网络,并 关闭 Swap:执行 sudo swapoff -a,并在 /etc/fstab 中注释 swap 行。
  • 系统源与依赖
    • 更新系统:sudo apt update & & sudo apt upgrade -y
    • 安装工具:sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
  • 容器运行时
    • 安装 containerd(推荐)或 Docker CE。下面分别给出两种常用方式,二选一即可。

二 安装容器运行时

  • 方案 A containerd(推荐)
    • 安装:sudo apt install -y containerd
    • 生成默认配置并启用 CRI:sudo mkdir -p /etc/containerd & & containerd config default | sudo tee /etc/containerd/config.toml
    • 重启并开机自启:sudo systemctl restart containerd & & sudo systemctl enable containerd
  • 方案 B Docker CE
    • 添加 GPG 与源并安装:
      curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
      echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
      sudo apt update
      sudo apt install -y docker-ce docker-ce-cli containerd.io
      sudo systemctl start docker &
          &
           sudo systemctl enable docker
      
  • 说明
    • 无论采用哪种方案,后续 kubeadm 均通过 CRI 与容器运行时交互。

三 安装 kubeadm kubelet kubectl

  • 添加 Kubernetes APT 源并安装组件:
    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 update
    sudo apt install -y kubelet kubeadm kubectl
    sudo apt-mark hold kubelet kubeadm kubectl
    sudo systemctl enable --now kubelet
    
  • 说明
    • 使用 apt-mark hold 防止组件被意外升级导致版本不一致。

四 初始化控制平面与配置 kubectl

  • 初始化 Master(将 替换为你的主节点 IP;如使用 Flannel,Pod CIDR 用 10.244.0.0/16;如使用 Calico,常见为 192.168.0.0/16
    sudo kubeadm init --apiserver-advertise-address=<
        master-ip>
         --pod-network-cidr=10.244.0.0/16
    # 或使用 Calico 时:
    # sudo kubeadm init --apiserver-advertise-address=<
        master-ip>
         --pod-network-cidr=192.168.0.0/16
    
  • 配置 kubectl(普通用户)
    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  • 安装 CNI 网络插件(二选一)
    • Flannel:
      kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
      
    • Calico:
      kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
      # 或新版 Calico Operator 方式:
      # kubectl apply -f https://docs.projectcalico.org/manifests/tigera-operator.yaml
      # kubectl apply -f https://docs.projectcalico.org/manifests/custom-resources.yaml
      
  • 验证
    kubectl get nodes
    kubectl cluster-info
    kubectl get pods -n kube-system
    
  • 说明
    • 初始化完成后,控制台会输出 kubeadm join ... 命令,用于 Worker 加入集群。

五 加入工作节点与常用运维

  • 加入 Worker
    • 使用 kubeadm init 输出中的完整命令,或重新生成:
      # 重新生成 join 命令(在 Master 上)
      kubeadm token create --print-join-command
      # Worker 上执行输出的命令,例如:
      sudo kubeadm join <
          master-ip>
          :6443 --token <
          token>
           --discovery-token-ca-cert-hash sha256:<
          hash>
          
      
  • 防火墙与安全组(示例为 UFW)
    sudo ufw allow 6443/tcp
    sudo ufw allow 10250/tcp
    sudo ufw allow 10251/tcp
    sudo ufw allow 10252/tcp
    sudo ufw allow 10255/tcp
    sudo ufw reload
    
  • 常用维护
    • 重置节点(重装时使用):sudo kubeadm reset
    • 清理 CNI 残留:sudo rm -rf /etc/cni/net.d
    • 重置 iptables:sudo iptables -F & & sudo iptables -t nat -F & & sudo iptables -t mangle -F & & sudo iptables -X
  • 说明
    • 生产环境建议开放或放通 6443、10250、10251、10252 等端口,并按需配置 30000–32767 NodePort 范围。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian系统如何配置Kubernetes安装
本文地址: https://pptw.com/jishu/771523.html
Debian上Kubernetes安装常见问题及解决 Debian如何快速搭建Kubernetes环境

游客 回复需填写必要信息