温馨提示×

Debian k8s部署能离线吗

小樊
45
2026-07-06 09:27:29
栏目: 智能运维

可以的,Debian 上部署 Kubernetes 完全支持离线部署,但需要提前准备好离线资源。下面按“能不能 + 怎么做 + 常见方案”给你一个清晰说明。


一、结论先行

可以离线部署 Kubernetes(k8s)在 Debian 上
❗ 前提:提前在有网环境下载好所有依赖


二、离线部署需要准备哪些东西

1️⃣ 系统基础环境(Debian)

离线时,以下最好提前准备好:

  • Debian ISO(或本地 apt 仓库)
  • 内核参数(一般 Debian 10/11/12 默认满足)
  • 必要工具:
    apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
    

✅ 如果完全无网,需要 本地 apt 仓库deb 包拷贝


2️⃣ Kubernetes 组件(离线)

方式一:直接用 deb 包(推荐)

在有网机器上:

apt download kubelet kubeadm kubectl

拷贝到离线机器后:

dpkg -i *.deb

3️⃣ 容器运行时(containerd / docker)

containerd(推荐)

离线准备:

  • containerd.io_*.deb
  • runc
  • cni-plugins

安装示例:

dpkg -i containerd.io.deb

4️⃣ Kubernetes 镜像(最关键)

kubeadm 启动集群需要大量镜像:

k8s.gcr.io/kube-apiserver
k8s.gcr.io/kube-controller-manager
k8s.gcr.io/kube-scheduler
k8s.gcr.io/kube-proxy
k8s.gcr.io/pause
k8s.gcr.io/etcd
k8s.gcr.io/coredns

离线镜像方案

方案一:提前拉取并导出

docker pull k8s.gcr.io/kube-apiserver:v1.28.0
docker save -o kube-apiserver.tar k8s.gcr.io/kube-apiserver:v1.28.0

离线机器:

docker load -i kube-apiserver.tar

方案二:使用私有镜像仓库

  • Harbor
  • registry
  • 内网 Docker Hub 镜像

5️⃣ kubeadm init 离线注意事项

kubeadm init \
  --image-repository=你的镜像仓库 \
  --pod-network-cidr=10.244.0.0/16

如果完全离线:

  • 必须 所有镜像已 load 到 containerd / docker
  • 否则会卡在 Pulling images

三、常见离线部署方案对比

方案 适合场景 难度
deb + docker load 小规模 / 测试 ⭐⭐
本地 apt 仓库 企业内网 ⭐⭐⭐
私有镜像仓库 生产环境 ⭐⭐⭐
kubespray 离线 多节点 ⭐⭐⭐⭐
Rancher / K3s 快速离线 ⭐⭐

四、简化方案(强烈推荐)

✅ K3s(离线最简单)

K3s 是轻量 Kubernetes,官方支持离线部署

  1. 下载:

    wget https://github.com/k3s-io/k3s/releases/download/v1.28.5+k3s1/k3s
    wget https://github.com/k3s-io/k3s/releases/download/v1.28.5+k3s1/k3s-airgap-images-amd64.tar.gz
    
  2. 离线安装:

    chmod +x k3s
    cp k3s /usr/local/bin/
    mkdir -p /var/lib/rancher/k3s/agent/images/
    cp k3s-airgap-images-amd64.tar.gz /var/lib/rancher/k3s/agent/images/
    k3s server
    

一个二进制 + 一个镜像包即可


五、总结一句话

Debian 上部署 Kubernetes 是支持离线的,只要提前准备好:
apt 包 + 容器运行时 + k8s 镜像(或私有仓库)


如果你愿意,我可以:

  • ✅ 给你一份 Debian 离线部署 k8s 完整步骤
  • ✅ 给你 kubeadm 离线镜像清单
  • ✅ 帮你选 最适合你场景的方案(生产 / 测试 / 内网)

你现在的环境是 完全无外网 还是 部分内网

0