温馨提示×

debian k8s安装哪步难

小樊
46
2026-10-22 20:07:54
栏目: 智能运维

在 Debian 上安装 Kubernetes(k8s)时,新手最容易卡壳的几个难点通常集中在下面这些步骤。按“从难到易”给你梳理一下:


1️⃣ 容器运行时(Container Runtime)配置(最难、最容易踩坑)

常见难点:

  • 选错运行时(Docker vs containerd)
    • Kubernetes 1.24+ 已放弃 Docker 作为运行时
    • 现在推荐 containerd
  • containerd 配置不正确
    • 没改 SystemdCgroup = true
    • 导致节点 NotReady

关键点:

# containerd 配置
vim /etc/containerd/config.toml
# 确保
SystemdCgroup = true

✅ 这是 Debian 上最容易失败的一步


2️⃣ 内核参数 & 网络模块(容易忽略)

难点:

  • 没开 br_netfilter
  • 没设置 iptables 桥接
  • 导致 Pod 网络不通

必须做:

modprobe br_netfilter
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
sysctl --system

3️⃣ kubeadm init(参数容易写错)

常见错误:

  • --pod-network-cidr 和 CNI 不匹配
  • 忘了 --cri-socket
  • 多次 init 没 reset

示例(Calico):

kubeadm init \
  --pod-network-cidr=192.168.0.0/16 \
  --cri-socket=unix:///run/containerd/containerd.sock

4️⃣ CNI 网络插件(二选一就卡)

难点:

  • Calico / Flannel 选错
  • YAML 版本不兼容
  • 网络策略配置复杂

推荐:

  • 新手 → Flannel
  • 生产 → Calico

5️⃣ 节点加入(token 过期)

难点:

  • token 24 小时失效
  • 忘了 --discovery-token-ca-cert-hash

解决:

kubeadm token create --print-join-command

6️⃣ Debian 特有问题(比 Ubuntu 多)

  • 默认用 nf_tables,iptables 行为不同
  • 旧内核不支持某些 k8s 特性
  • 需要手动装 curl / gnupg / apt-transport-https

✅ 总结:最难的三步

  1. containerd 配置
  2. 内核 & 网络参数
  3. kubeadm init + CNI

如果你愿意,我可以:

  • 给你一套 Debian 12 + k8s 1.29 完整命令
  • 或帮你 逐步排错(贴报错)
  • 或用 k3s / microk8s 简化方案

你想走哪条路?

0 踩