操作场景
在FusionInsight Manager界面上下载的客户端包中包含客户端批量升级工具,当集群升级或扩容后需要对多个客户端进行升级时,可以使用该工具对客户端进行批量一键升级。同时客户端批量升级工具提供了轻量级的批量刷新客户端所在节点“/etc/hosts”文件的功能。
操作步骤
客户端升级前准备
- 登录FusionInsight Manager。
- 选择“集群 >待操作集群的名称 > 更多 > 下载客户端”,下载完整客户端到服务端指定目录。
具体操作看参考下载客户端。
解压新下载的客户端,在解压后的目录找到batch_upgrade目录,例如“/tmp/FusionInsight-Client/FusionInsight_Cluster_1_Services_ClientConfig/batch_upgrade”。
- 选择“集群 >待操作集群的名称 > 客户端管理”,进入客户端管理界面,单击“导出全部”,将所选的客户端信息导出到本地。
- 解压导出的客户端信息,将client-info.cfg文件上传到客户端解压目录的batch_upgrade目录下。
- 参见参考信息,补全“client-info.cfg”中缺失的密码。
批量升级客户端
- 执行sh client_batch_upgrade.sh -u -f /tmp/FusionInsight-Client/FusionInsight_Cluster_1_Services_Client.tar -g /tmp/FusionInsight-Client/FusionInsight_Cluster_1_Services_ClientConfig/batch_upgrade/client-info.cfg ,进行升级。
须知
由于配置了密码信息,执行完升级后建议尽快删除client-info.cfg文件。
- 升级执行完成后确认结果。确保客户端升级无误后执行 sh client_batch_upgrade.sh -c ,确认升级结果。
- 如果客户端升级后存在问题,可以执行 sh client_batch_upgrade.sh -s ,回滚客户端。
说明
客户端批量升级工具本身是将原客户端move至备份目录,然后再使用-f参数指定的客户端包再次安装客户端。因此若原客户端中有定制的内容,请在执行-c命令之前,将定制的内容从备份目录手动保存或者移至升级后的客户端目录。客户端备份路径为: {原客户端路径} -backup。
参数-u是-c和-s的前提,必须在-u命令执行了升级之后,才能选择是要执行-c进行提交还是-s进行回滚。
升级命令( -u )可以多次执行,每次执行只升级前面升级失败的客户端,跳过升级成功的客户端。
客户端批量升级工具也支持升级之前的旧客户端。
执行非root用户安装的客户端升级时,请确保相应用户在目标节点客户端所在目录及父目录的读写权限,否则会升级失败。
-f参数输入的客户端包必须为全量客户端,不支持单组件或部分组件客户端包作为输入。
参考信息
批量升级客户端前,需手动配置远程登录客户端节点的用户密码信息:
执行vi client-info.cfg命令,添加用户密码信息。
例如:
clientIp,clientPath,user,password
10.10.10.100,/home/omm/client /home/omm/client2,omm,密码
配置文件各字段含义如下:
- clientIp:表示客户端所在节点IP地址。
- clientPath:客户端安装路径,可以包含多个路径,以空格分隔多个路径。注意路径不要以“/”结尾。
- user:节点用户名。
- password:节点用户密码信息。
说明如果执行失败,请在执行目录的 work_space/log _XXX下查看node.log日志。