阿里云首页 云原生应用交付平台ADP

产品/底座升级

在完成初次部署之后,如果需要对产品/底座进行升级,可以通过增量部署包完成

升级场景

  1. 只升级底座版本:需要使用更强的运维管控能力、或者是为了对K8S版本做升级

  2. 只升级产品版本:产品有更新,需要进行增量升级,但是无需升级底座版本

  3. 底座版本和产品版本都升级:此种场景需要先进行底座升级逻辑,再进行产品升级

产品版本升级

首先在产品编排中完成新版本的编排及发布,然后在局点管理页,配置要升级的原版本和目标版本,生成增量产品部署包,具体操作如下:

  1. 点击版本升级,在弹框中选择原版本和目标版本版本升级

  2. 确认此次升级的变更内容(对比版本差异)升级局点

  3. 生成增量部署包增量部署

  4. 通过远程部署/离线部署,完成增量升级

  • 远程部署:在远程部署页面选择已经生成好的部署包,进行远程部署即可(适用于在线环境,并且已经配置好了部署通道,如跳板机/VPC)远程部署

  • 离线部署:先下载增量部署包,拷贝到交付环境的首台Master节点后,解压增量部署包 tar -xvf xxx.tar 然后进入解压后的文件夹内,执行安装命令:./hopctl install -p `pwd`即可。下载增量包

底座版本升级

  1. 首先在产品编排中创建新的产品版本,在新的产品版本中,修改依赖底座版本,并点击应用当前版本依赖底座版本

  2. 将该产品版本发布为正式版本发布

  3. 局点管理页面,点击版本升级,在弹框中选择原版本和目标版本(两个产品版本对应的底座版本不同)版本升级

  4. 生成增量底座部署包,下载并拷贝到交付环境的首台Master节点后,解压增量部署包 tar -xvf xxx.tar 然后进入解压后的文件夹内,将下图所示的安装配置文件内容,复制到安装包的global.yaml文件内。生成增量底座包

  5. 在部署包解开的文件目录下,依次执行下面的命令进行底座升级,命令执行完毕后,大约还需要5分钟时间等待组件完成滚动更新。

./hopctl upgrade --cluster -p `pwd` 2>&1 | tee -a upgrade.log
./hopctl install -p `pwd`
trident addon add --names cluster-operator

补充说明

增量升级时对业务的影响

  • 产品的增量升级,逻辑与Helm Upgrade相同,会通过滚动升级的方式更新Pod,是否会对业务产生影响,取决于业务逻辑。

  • 底座的增量升级,依靠升级脚本完成,对于K8S版本不发生变化的底座版本升级,不会对业务产生影响,如果涉及K8S版本的变化,会因为CoreDNS的重启,导致几十秒的容器网络中断。

底座升级对端口的影响

  • 本地运维控制台(adp-local)在从v1.2.x/v1.3.x的底座版本到v1.4.x的底座版本升级后,NodePort服务暴露端口会从31001~31002变更为31000,请配置好环境内的网络策略,避免升级后本地运维控制台无法访问。