kubeasz/docs/setup/offline_install.md

2.5 KiB
Raw Permalink Blame History

离线安装集群

使用kubeasz 离线安装 k8s集群需要下载四个部分

  • kubeasz 项目代码
  • 二进制文件k8s、etcd、containerd等组件
  • 容器镜像文件calico、coredns、metrics-server等容器镜像
  • 系统软件安装包ipset、libseccomp2等仅无法使用本地yum/apt源时需要

离线文件准备

在一台能够访问互联网的服务器上执行:

  • 下载工具脚本ezdown举例使用kubeasz版本3.6.0
export release=3.6.0
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown
  • 使用工具脚本下载更多关于ezdown的参数运行./ezdown 查看)

下载kubeasz代码、二进制、默认容器镜像

# 国内环境
./ezdown -D

[可选]如果需要更多组件请下载额外容器镜像cilium,flannel,prometheus等

./ezdown -X flannel
./ezdown -X prometheus
...

下载离线系统包 (适用于无法使用yum/apt仓库情形)

# 如果操作系统是ubuntu 22.04
./ezdown -P ubuntu_22

上述脚本运行成功后所有文件kubeasz代码、二进制、离线镜像均已整理好放入目录/etc/kubeasz

  • /etc/kubeasz 包含 kubeasz 版本为 ${release} 的发布代码
  • /etc/kubeasz/bin 包含 k8s/etcd/docker/cni 等二进制文件
  • /etc/kubeasz/down 包含集群安装时需要的离线容器镜像
  • /etc/kubeasz/down/packages 包含集群安装时需要的系统基础软件

离线安装

上述下载完成后,把/etc/kubeasz整个目录复制到目标离线服务器相同目录,然后在离线服务器/etc/kubeasz目录下执行

  • 离线安装 docker检查本地文件正常会提示所有文件已经下载完成并上传到本地私有镜像仓库
./ezdown -D
./ezdown -X flannel
./ezdown -X prometheus
...
  • 启动 kubeasz 容器
./ezdown -S
  • 设置参数允许离线安装系统软件包
sed -i 's/^INSTALL_SOURCE.*$/INSTALL_SOURCE: "offline"/g' /etc/kubeasz/example/config.yml 
source ~/.bashrc
dk ezctl start-aio
# 或者执行 docker exec -it kubeasz ezctl start-aio