温馨提示×

为什么ubuntu装k8s失败

小樊
35
2026-10-28 11:04:53
栏目: 智能运维

Ubuntu 上安装 Kubernetes(k8s)失败是非常常见的问题,通常不是“某一个原因”,而是环境不满足 k8s 的硬性要求。下面我按最常见失败原因 → 排查方法 → 解决建议给你总结。


一、最常见失败原因(90% 都在这)

1️⃣ 内存 / CPU 不够

k8s 最低要求:

  • Master:≥ 2 CPU,≥ 2GB 内存
  • Node:≥ 1 CPU,≥ 1GB 内存

❌ 常见错误:

  • 虚拟机只给了 1 核 1G
  • 云服务器 1 核

✅ 解决:

nproc
free -h

不够就加配置。


2️⃣ swap 没关(非常常见)

kubeadm 强制要求关闭 swap

❌ 报错示例:

running with swap on is not supported

✅ 解决:

sudo swapoff -a

永久关闭:

sudo sed -i '/swap/s/^/#/' /etc/fstab

3️⃣ 防火墙 / 端口不通

k8s 需要大量端口:

Master:

  • 6443
  • 2379-2380
  • 10250

Node:

  • 10250
  • 30000-32767

❌ 常见错误:

  • ufw 开着
  • 云服务器安全组没开

✅ 解决:

sudo ufw disable

云服务器:开放上述端口。


4️⃣ 容器运行时没装 / 装错

k8s 1.24+ 不再支持 docker(直接用 containerd)

❌ 错误:

  • 只装了 docker
  • containerd 没启用

✅ 推荐方式(Ubuntu 22.04+):

sudo apt install containerd
sudo systemctl enable --now containerd

5️⃣ 网络不通(拉不到镜像)

国内常见:

  • k8s.gcr.io 被墙
  • 初始化直接卡死

❌ 报错:

failed to pull image

✅ 解决(国内):

kubeadm init \
  --image-repository registry.aliyuncs.com/google_containers

6️⃣ 系统不是干净的

以下会导致失败:

  • 之前装过 k8s 没清理
  • Docker / containerd 配置冲突

✅ 重置:

kubeadm reset -f

二、你现在的报错是什么?

如果你愿意,可以把具体报错贴出来,例如:

  • kubeadm init 卡在哪
  • 报错前几行
  • Ubuntu 版本
  • 虚拟机还是云服务器

我可以直接帮你精确定位是哪一步失败。

0 踩