通过 ocboot 升级
介绍如何通过 ocboot 升级服务版本到指定版本。
提示
ocboot 只能升级通过 ocboot 部署的环境,如果你的环境是通过 docker compose 部署的,请参考以下文档升级:
前提条件
版本升级建议从相邻的版本升级,比如从 v3.8.x 升级到 v3.10.x 需要以下的步骤:
- v3.8.x => v3.9.x
- v3.9.x => v3.10.x
总体来说,升级的步骤如下:
使用我们编写的 ocboot 工具进行升级,这个工具主要是调用 ansible 来升级集群里面的所有节点。
查看当前版本
可以使用 kubectl 查看当前集群的版本
# 使用 kubectl 获得当前集群的版本
$ kubectl -n onecloud get onecloudclusters default -o=jsonpath='{.spec.version}'
3.9.14 # 发现当前版本为 3.9.14
拉取 ocboot 工具
如果本地已经有 ocboot 工具可以跳过此步,只用把代码更新到对应的分支。
# 本地安装 ansible
$ python3 -m pip install --upgrade pip setuptools wheel
$ python3 -m pip install 'ansible<=9.0.0' paramiko
下载 ocboot 工具到本地
# 下载 ocboot 工具到本地
$ git clone -b release/3.10 https://github.com/yunionio/ocboot && cd ./ocboot
更新 ocboot 代码
$ git fetch
$ git checkout v3.10.12