除特殊说明,以下步骤均在yasadm工具所在的环境上操作,命令中的路径、用户、密码、端口等需更换为实际值。
支持以下两种方式升级高可用部署的主备管理平台:
一键升级所有的主备管理平台,以及管理的服务器。若要使用该升级方式,必须将所有备管理平台所在服务器添加到管理平台中。在升级服务器ycm-agent时,将服务器上面的备管理平台一起升级。
Note: 从 23.2.10.100 版本开始,部署主备管理平台时,会默认将其服务器添加到管理平台中,之前的版本,需要手动将其添加到管理平台中。
该升级步骤需要在部署主管理平台的服务器上执行,其余和单节点管理平台升级步骤相同,具体步骤请查阅单节点部署离线升级。
该方式需要执行多次升级命令,先升级主管理平台以及管理的所有服务器,后依次本地升级备管理平台。具体步骤请查阅下文。
本文以从23.2.6.100升级到23.2.7.100为例。
Note: 为了防止升级过程中发生主备切换,请停止所有备管理平台(如果有多个备管理平台,请依次执行多次)。 在部署备管理平台的服务器上,停止备管理平台:/{备管理平台安装路径}/ycm/monit/monitctl run stop -g ycm
$ mkdir ~/upgradeCopied!
$ cd ~/upgrade
$ tar -zxf yashandb-cloud-manager-23.2.7.100-linux-x86_64.tar.gzCopied!
本步骤须在升级安装包的临时存放目录中执行。
$ cd ~/upgrade/ycmCopied!
# 在当前目录下,生成ycm_host.toml
$ sudo ./scripts/yasadm host gen -u yasmanager -p password -i /opt/ycm --port 22Copied!
简单参数介绍:
-u, --username 平台服务器的SSH用户
-p, --password 平台服务器用户的SSH密码
-i, --install-dir 平台的安装路径
--port 平台服务器的SSH端口Copied!
$ vim ycm_host.toml
...
[[hosts]]
host_id = "host-5e99117d"
manage_ip = "192.168.1.2"
agent_user = "yasmanager"
port = 22
ssh_user = "yasmanager"
ssh_pwd = "123456"
...
[[hosts]]
...Copied!
Caution: 升级失败后不支持再次升级,只能回退。
本步骤须在升级安装包的临时存放目录中执行。
$ cd ~/upgrade/ycmCopied!
# 通过ssh方式升级
$ sudo ./scripts/yasadm upgrade -i /opt/ycm -t ycm_host.toml --imp-exp-install-dir /home/yashan/yasdb_home --role primaryCopied!
简单参数介绍:
-i, --install-dir 管理平台的安装路径
-t, --toml 被托管服务器信息的配置文件
--imp-exp-install-dir 安装有imp和exp的yashandb客户端路径,用于备份平台后端yashandb的数据
--role primary 升级主管理平台Copied!
打开浏览器访问并登录管理平台,单击右上角用户头像,单击【关于】,查看升级后的版本。
$ mkdir ~/upgradeCopied!
$ cd ~/upgrade
$ tar -zxf yashandb-cloud-manager-23.2.7.100-linux-x86_64.tar.gzCopied!
本步骤须在升级安装包的临时存放目录中执行。
$ cd ~/upgrade/ycmCopied!
# 在当前目录下,生成ycm_host.toml
$ sudo ./scripts/yasadm host gen -i /opt/ycm --rpc-port 9072Copied!
简单参数介绍:
-i, --install-dir 管理平台的安装路径
--rpc-port 管理平台服务器的升级RPC端口,用于RPC升级方式,默认为9072Copied!
$ vim ycm_host.toml
...
[[hosts]]
host_id = "host-5e99117d"
...
upgrade_rpc_port = 9072
[[hosts]]
...Copied!
Caution: 升级失败后不支持再次升级,只能回退。
本步骤须在升级安装包的临时存放目录中执行。
$ cd ~/upgrade/ycmCopied!
# 通过rpc方式升级
$ sudo ./scripts/yasadm upgrade -i /opt/ycm -t ycm_host.toml --imp-exp-install-dir /home/yashan/yasdb_home --rpc --role primaryCopied!
简单参数介绍:
-i, --install-dir 管理平台的安装路径
-t, --toml 被托管服务器信息的配置文件
--rpc 通过rpc方式进行升级,默认为ssh方式
--imp-exp-install-dir 安装有imp和exp的yashandb客户端路径,用于备份平台后端yashandb的数据
--role primary 升级主管理平台Copied!
打开浏览器访问并登录管理平台,单击右上角用户头像,单击【关于】,查看升级后的版本。
该步骤需要在部署备管理平台的服务器上执行。
Note: 备管理平台升级包需要和主管理平台升级包的版本相同。
$ mkdir ~/upgradeCopied!
$ cd ~/upgrade
$ tar -zxf yashandb-cloud-manager-23.2.7.100-linux-x86_64.tar.gzCopied!
Caution: 升级失败后不支持再次升级,只能回腿。
本步骤须在升级安装包的临时存放目录中执行。
$ cd ~/upgrade/ycmCopied!
$ sudo ./scripts/yasadm upgrade -i /opt/ycm --lib-dir /home/yashan/yasdb_home/lib --role standbyCopied!
简单参数介绍:
-i, --install-dir 管理平台的安装路径
--lib-dir YashanDB客户端的lib路径
--role standby 升级备管理平台Copied!
进入备管理平台的安装目录,通过version.toml配置文件查看升级后的版本。
# 进入备管理平台的安装目录
$ cd /{备管理平台安装目录}/ycm
# 打开version.toml文件查看升级后的版本
$ cat etc/upgrade/version.toml
...
version = "23.2.7.100" # 升级后的版本
[[upgrade]]
source_version = ["23.2.6.100"]
path = "23.2.6.100"
...Copied!
Note: 升级成功后不支持回退,只有升级失败才允许回退。
管理平台升级过程中可能因为命令错误、配置文件错误及版本错误等原因导致升级失败,此时请运行升级回退恢复升级前环境。
$ cd ~/upgrade/ycmCopied!
# 主管理平台回退
$ sudo ./scripts/yasadm rollback -i /opt/ycm -t ycm_host.toml --imp-exp-install-dir /home/yashan/yasdb_home
# 备管理平台回退
$ sudo ./scripts/yasadm rollback -i /opt/ycm --lib-dir /home/yashan/yasdb_home/libCopied!
简单参数介绍:
-i, --install-dir 管理平台的安装路径
-t, --toml 被托管服务器信息的SSH配置文件
--imp-exp-install-dir 安装有imp和exp的yashandb客户端路径,用于恢复平台后端yashandb数据
--lib-dir YashanDB客户端的lib路径Copied!
Note:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。