升级 Rainbond

  • 快速安装
  • 主机或 Helm

本栏介绍通过快速安装的 Rainbond 升级到最新版本。

升级 Rainbond - 图1caution

从 v5.14.0 版本开始,支持快速安装的 Rainbond 单机版本升级。

  1. 删除旧版本运行中的镜像。
  1. docker rm -f rainbond-allinone
  1. 按照升级的版本执行 SQL

5.14.0 开始升级所需 SQL 汇总

  1. docker exec -ti rainbond-allinone bash

根据自己所跨版本执行升级 sql。

  • v5.14.1 —> v5.14.2
  1. curl https://get.rainbond.com/upgrade-5.14.2.sh | bash
  • v5.15.3 —> v5.16.0
  1. curl https://get.rainbond.com/upgrade-5.16.0.sh | bash
  1. 拉取新版本镜像运行
  • 升级到最新版本
  1. curl -o install.sh https://get.rainbond.com && bash ./install.sh
  • 升级到指定版本
  1. curl -o install.sh https://get.rainbond.com && VERSION=<指定的版本> bash ./install.sh

版本格式为:v5.15.0v5.16.0v5.17.0

本栏介绍通过主机安装和通过 Helm 安装的 Rainbond 升级到最新版本。

从最近的版本升级到 v5.17.0

如果您的 Rainbond 版本是 v5.15.3,则可以通过以下方式进行升级。

控制台升级

高可用控制台

通过 helm 安装或者高可用迁移出来的控制台升级方式如下:

  1. 升级表语句
  1. kubectl exec -ti `kubectl get pod -nrbd-system|grep rbd-app-ui|grep Running|awk '{print $1}'` -nrbd-system bash
  2. curl https://get.rainbond.com/upgrade-5.16.0.sh | bash
  1. 更换镜像

集群终端升级的时候一并操作,这里无需单独操作。

Allinone 控制台

通过 docker run 启动的控制台升级方式如下:

  1. 升级表语句
  1. docker exec -ti rainbond-allinone bash
  2. curl https://get.rainbond.com/upgrade-5.16.0.sh | bash
  1. 更换 Allinone 镜像
  1. docker stop rainbond-allinone && docker rm rainbond-allinone
  2. #该命令参数需要和之前启动的rainbond-allinone容器一致
  3. docker run -d -p 7070:7070 -v ~/.ssh:/root/.ssh -v ~/rainbonddata:/app/data \
  4. --name=rainbond-allinone --restart=always \
  5. registry.cn-hangzhou.aliyuncs.com/goodrain/rainbond:v5.17.0-release-allinone

集群端升级

更新 grctl 命令

  1. docker run -it --rm -v /:/rootfs registry.cn-hangzhou.aliyuncs.com/goodrain/rbd-grctl:v5.17.0-release copy
  2. mv /usr/local/bin/rainbond-grctl /usr/local/bin/grctl && grctl install

执行升级命令

  1. # 替换基础 region 镜像版本
  2. grctl cluster upgrade --new-version=v5.17.0-release
  3. # 手动替换 operator 镜像版本为 v5.17.0-release
  4. kubectl edit deploy rainbond-operator -n rbd-system

升级 builder 和 runner 镜像

获取最新镜像,并修改 Tag

  1. docker pull registry.cn-hangzhou.aliyuncs.com/goodrain/builder:v5.16.0-release
  2. docker pull registry.cn-hangzhou.aliyuncs.com/goodrain/runner:v5.16.0-release
  3. docker tag registry.cn-hangzhou.aliyuncs.com/goodrain/builder:v5.16.0-release goodrain.me/builder:latest-{架构:arm64/amd64}
  4. docker tag registry.cn-hangzhou.aliyuncs.com/goodrain/runner:v5.16.0-release goodrain.me/runner:latest-{架构:arm64/amd64}

推送镜像到私有仓库,参阅推送镜像到私有仓库

  1. 如果是双架构则需要 amd64arm64 都推
  2. ---------------------------------
  3. docker push goodrain.me/builder:latest-{架构:arm64/amd64}
  4. docker push goodrain.me/runner:latest-{架构:arm64/amd64}

跨版本升级到 v5.17.0

跨版本升级步骤如下:

  1. 执行每个版本的升级 SQL 脚本。
  2. 更新每个版本所需要的 CRD 资源,目前只有 v5.11.0v5.12.0 需要更新 CRD 资源。
  3. 升级控制台镜像版本以及集群端镜像版本,按照 从最近的版本升级到 v5.17.0 的步骤进行升级控制台镜像以及集群端镜像。
  4. 升级 builder 和 runner 镜像,按照上述的 升级 builder runner 镜像 的步骤进行升级 builder 和 runner 镜像。

例如:您现在的版本处于 v5.10.0

  1. 先执行每个版本所需要的 SQL 升级脚本。
  1. # 进入控制台容器内
  2. docker exec -it rainbond-allinone bash
  3. # 在控制台容器内执行 5.10.1 版本升级SQL
  4. curl https://get.rainbond.com/upgrade-5.10.1.sh | bash
  5. # 在控制台容器内执行 5.11.0 版本升级SQL
  6. curl https://get.rainbond.com/upgrade-5.11.0.sh | bash
  7. ## 5.12.0 无 SQL 升级
  8. ## 5.13.0 无 SQL 升级
  9. ## 5.14.0 无 SQL 升级
  10. ## 5.14.1 无 SQL 升级
  11. # 在控制台容器内执行 5.14.2 版本升级SQL
  12. curl https://get.rainbond.com/upgrade-5.14.2.sh | bash
  13. # v5.15.0 无 SQL 升级
  14. # v5.15.1 无 SQL 升级
  15. # v5.15.2 无 SQL 升级
  16. # v5.15.3 无 SQL 升级
  17. # 在控制台容器内执行 5.16.0 版本升级SQL
  18. curl https://get.rainbond.com/upgrade-5.16.0.sh | bash
  19. # v5.17.0 无 SQL 升级
  1. 更新 CRD 资源 v5.11.0v5.12.0

  2. 升级控制台镜像以及集群端镜像版本,按照 从最近的版本升级到 v5.17.0 的步骤进行升级。

升级 Rainbond - 图2tip

如果您处于更低的版本,请参阅每个版本的升级文档,按照上述操作执行即可。

版本变更日志

您可以在 历史版本变更日志 中查看每个版本的具体变更内容。