首页主机资讯Debian环境下Kubernetes怎么安装

Debian环境下Kubernetes怎么安装

时间2025-12-15 12:12:04发布访客分类主机资讯浏览1054
导读:在 Debian 上用 kubeadm 安装 Kubernetes 单主集群 一 环境准备与前置检查 准备至少 2 核 CPU、2GB 内存、20GB 磁盘 的 Debian 11/12 主机,建议使用 Debian 12(Bookwor...

在 Debian 上用 kubeadm 安装 Kubernetes 单主集群

一 环境准备与前置检查

  • 准备至少 2 核 CPU、2GB 内存、20GB 磁盘Debian 11/12 主机,建议使用 Debian 12(Bookworm);至少 1 台 Master + 1 台 Worker
  • 所有节点:
    • 更新系统:sudo apt update & & sudo apt upgrade -y
    • 安装基础工具:sudo apt install -y apt-transport-https ca-certificates curl
    • 设置唯一 主机名,并确保节点间 网络互通时间同步(如 chrony)。
    • 关闭 Swap:sudo swapoff -a,并注释 /etc/fstab 中的 swap 行。
    • 防火墙/安全组放行端口:
      • Master:6443、2379–2380、10250、10251、10252
      • Worker:10250、30000–32767
    • 检查网卡与地址:ip ahostname -I,确保 API Server 广告地址 可达。

二 安装容器运行时 Containerd(推荐)

  • 安装与启用:
    • sudo apt update & & sudo apt install -y containerd
    • sudo systemctl enable --now containerd
  • 生成默认配置并启用 SystemdCgroup:
    • sudo mkdir -p /etc/containerd
    • containerd config default | sudo tee /etc/containerd/config.toml
    • 编辑 /etc/containerd/config.toml,将 [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options] 下的 SystemdCgroup 设为 true
    • sudo systemctl restart containerd
  • 说明:Kubernetes 自 v1.24 起移除内置 dockershim,生产环境建议使用 ContainerdCRI-O;若你更熟悉 Docker,也可安装 Docker 并配置其使用 containerd 作为运行时(本文以 containerd 为主)。

三 安装 kubeadm kubelet kubectl

  • 添加 Kubernetes APT 源(Debian 11/12 均可用 xenial 仓库名):
    • curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/kubernetes-archive-keyring.gpg
    • echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] 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

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

  • 在 Master 节点初始化(按需替换参数):
    • 使用 Flannel 时推荐:sudo kubeadm init --pod-network-cidr=10.244.0.0/16
    • 如需指定 API 广告地址:sudo kubeadm init --apiserver-advertise-address=< MASTER_IP> --pod-network-cidr=10.244.0.0/16
    • 国内镜像加速(可选):--image-repository=registry.aliyuncs.com/google_containers
  • 初始化完成后按提示配置 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 网络插件与加入 Worker

  • 安装网络插件(二选一):
    • 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
  • 在 Worker 节点加入集群:
    • 使用 kubeadm init 输出中的 kubeadm join ... 命令;若 token 过期,在 Master 上生成新命令:kubeadm token create --print-join-command
  • 验证:
    • kubectl get nodes(状态应为 Ready
    • kubectl get pods -A(所有系统 Pod 应为 Running

六 常见问题与常用维护

  • 重置与重装:
    • sudo kubeadm reset
    • sudo rm -rf /etc/cni/net.d
    • sudo iptables -F & & sudo iptables -t nat -F & & sudo iptables -t mangle -F & & sudo iptables -X
  • 镜像拉取慢或失败:
    • 使用国内镜像仓库(如 --image-repository=registry.aliyuncs.com/google_containers)或配置私有镜像仓库。
  • 节点 NotReady:
    • 确认 CNI 已安装Pod CIDR 与网络插件一致防火墙/安全组端口已放行时间同步正常
  • 生产建议:
    • 部署 多 Master 高可用、配置 持久化存储、启用 RBAC网络策略,并定期升级组件版本。

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


若转载请注明出处: Debian环境下Kubernetes怎么安装
本文地址: https://pptw.com/jishu/771525.html
Debian如何快速搭建Kubernetes环境 Laravel在Debian上的性能监控工具有哪些

游客 回复需填写必要信息