离线升级微服务引擎¶
DCE 5.0 的各个模块松散耦合,支持独立安装、升级各个模块。此文档适用于通过离线方式安装微服务引擎之后进行的升级。
同步镜像¶
将镜像下载到本地节点之后,需要通过 chart-syncer 或容器运行时将最新版镜像同步到您的镜像仓库。推荐使用 chart-syncer 同步镜像,因为该方法更加高效便捷。
chart-syncer 同步镜像¶
-
使用如下内容创建
load-image.yaml
作为 chart-syncer 的配置文件load-image.yaml
文件中的各项参数均为必填项。您需要一个私有的镜像仓库,并参考如下说明修改各项配置。有关 chart-syncer 配置文件的详细解释,可参考其官方文档。若当前环境已安装 chart repo,则可以使用如下配置直接同步镜像。
source: intermediateBundlesPath: skoala-offline # (1) target: containerRegistry: 10.16.23.145 # (2) containerRepository: release.daocloud.io/skoala # (3) repo: kind: HARBOR # (4) url: http://10.16.23.145/chartrepo/release.daocloud.io # (5) auth: username: "admin" # (6) password: "Harbor12345" # (7) containers: auth: username: "admin" # (8) password: "Harbor12345" # (9)
- 到执行 charts-syncer 命令的相对路径,而不是此 YAML 文件和离线包之间的相对路径
- 需更改为你的镜像仓库 url
- 需更改为你的镜像仓库
- 也可以是任何其他支持的 Helm Chart 仓库类别
- 需更改为 chart repo url
- 你的镜像仓库用户名
- 你的镜像仓库密码
- 你的镜像仓库用户名
- 你的镜像仓库密码
若当前环境未安装 chart repo,chart-syncer 也支持将 chart 导出为
tgz
文件并存放在指定路径。source: intermediateBundlesPath: skoala-offline # (1) target: containerRegistry: 10.16.23.145 # (2) containerRepository: release.daocloud.io/skoala # (3) repo: kind: LOCAL path: ./local-repo # (4) containers: auth: username: "admin" # (5) password: "Harbor12345" # (6)
- 到执行 charts-syncer 命令的相对路径,而不是此 YAML 文件和离线包之间的相对路径
- 需更改为你的镜像仓库 url
- 需更改为你的镜像仓库
- chart 本地路径
- 你的镜像仓库用户名
- 你的镜像仓库密码
-
执行同步镜像命令。
Docker/containerd 同步镜像¶
-
解压
tar
压缩包。解压成功后会得到 3 个文件:
- hints.yaml
- images.tar
- original-chart
-
从本地加载镜像到 Docker 或 containerd。
Note
- 需要在每个节点上都通过 Docker 或 containerd 加载镜像。
- 加载完成后需要 tag 镜像,保持 Registry、Repository 与安装时一致。
开始升级¶
镜像同步完成之后,就可以开始升级微服务引擎了。
-
检查微服务引擎 helm 仓库是否存在。
若返回结果为空或如下提示,则进行下一步;反之则跳过下一步。
-
添加微服务引擎的 helm 仓库。
-
更新微服务引擎的 helm 仓库。
- helm 版本过低会导致失败,若失败,请尝试执行 helm update repo
-
选择您想安装的微服务引擎版本(建议安装最新版本)。
-
备份
--set
参数。在升级微服务引擎版本之前,建议您执行如下命令,备份老版本的
--set
参数。 -
执行
helm upgrade
。升级前建议您覆盖 bak.yaml 中的
global.imageRegistry
字段为当前使用的镜像仓库地址。
-
备份
--set
参数。在升级微服务引擎版本之前,建议您执行如下命令,备份老版本的
--set
参数。 -
执行
helm upgrade
。升级前建议您覆盖 bak.yaml 中的
global.imageRegistry
为当前使用的镜像仓库地址。