工作集群离线升级指南¶
Note
本文仅针对离线模式下,使用 DCE 5.0 平台所创建的工作集群的 kubernetes 的版本进行升级,不包括其它 kubeneters 组件的升级。
概述¶
在离线场景下,用户可以通过制作增量离线包的方式对使用 DCE 5.0 平台所创建的工作集群的 kubernetes 的版本进行升级。整体的升级思路为: 1. 在联网节点构建离线包 2. 将离线包导入火种节点 3. 更新 Global 集群的 kubernetes 版本清单 4. 使用平台 UI 升级工作集群的 kubernetes 版本
Note
目前支持构建的离线 kubernetes 版本请参考 kubean 支持的 kubernetes 版本列表。
在联网节点构建离线包¶
由于离线环境无法联网,用户需要事先准备一台能够 联网的节点 来进行增量离线包的构建,并且在这个节点上启动 Docker 或者 podman 服务。 参阅如何安装 Docker?
-
检查联网节点的 Docker 服务运行状态
预期输出如下:
-
在联网节点的 /root 目录下创建一个名为 manifest.yaml 的文件,命令如下:
manifest.yaml 内容如下:
- image_arch 用于指定 CPU 的架构类型,可填入的参数为 amd64 和 arm64 。
- kube_version 用于指定需要构建的 kubernetes 离线包版本,可参考上文的支持构建的离线 kubernetes 版本。
-
在 /root 目录下新建一个名为 /data 的文件夹来存储增量离线包。
执行如下命令,使用 kubean
airgap-patch
镜像生成离线包。airgap-patch
镜像 tag 与 Kubean 版本一致,需确保 Kubean 版本覆盖需要升级的 Kubernetes 版本。# 假设 kubean 版本为 v0.13.9 docker run --rm -v $(pwd)/manifest.yml:/manifest.yml -v $(pwd)/data:/data ghcr.m.daocloud.io/kubean-io/airgap-patch:v0.13.9
等待 Docker 服务运行完成后,检查 /data 文件夹下的文件,文件目录如下:
将离线包导入火种节点¶
-
将联网节点的 /data 文件拷贝至火种节点的 /root 目录下,在 联网节点 执行如下命令:
x.x.x.x
为火种节点 IP 地址 -
在火种节点上将 /data 文件内的镜像文件拷贝至火种节点内置的 docker resgitry 仓库。登录火种节点后执行如下命令:
-
进入镜像文件所在的目录
-
执行 import_images.sh 脚本将镜像导入火种节点内置的 Docker Resgitry 仓库。
-
-
在火种节点上将 /data 文件内的二进制文件拷贝至火种节点内置的 Minio 服务上。
-
进入二进制文件所在的目录
-
执行 import_files.sh 脚本将二进制文件导入火种节点内置的 Minio 服务上。
-
Note
上述命令仅仅适用于火种节点内置的 Minio 服务,如果使用外部 Minio 请将 http://127.0.0.1:9000
替换为外部 Minio 的访问地址。
“rootuser” 和 “rootpass123”是火种节点内置的 Minio 服务的默认账户和密码。
更新 Global 集群的 kubernetes 版本清单¶
火种节点上执行如下命令,将 localartifactset
资源部署到 Global 集群:
下一步¶
登录 DCE 5.0 的 UI 管理界面,参照集群升级文档对自建的工作集群进行升级。