1. HENGSHI SENSE 回滚操作说明
HENGSHI SENSE进行版本升级时,如果发现问题,可以回滚到升级前的版本。
回滚时请注意:- 回滚操作会保留当前运行版本的临时备份,如果连续操作两次则当前版本的备份会被删除。
1.1. 单机模式
单机模式下进行回滚操作请按照下面指导进行。
关闭HENGSHI SENSE。
$ cd /opt/hengshi $ bin/hengshi-sense-bin stop all
备份当前HENGSHI SENSE内容。
$ cd /opt/hengshi $ rm backup/current -rf $ mkdir -p backup/current/ $ cp -r bin conf lib pg_data local_data temp_data backup/current/ $ rm -rf bin conf lib pg_data local_data temp_data
解压回滚backup目录下面最近一个备份压缩包,具体操作如下。
首先进入backup目录,选择最近的压缩包进行解压,这里一定要确认压缩包的时间。 示例中选择hengshi-20210819163228目录下的压缩包进行解压,该压缩包的时间为2021-08-19_16:32:28。$ cd /opt/hengshi $ ls backup hengshi-20210819163228 $ ls backup/hengshi-20210819163228 bin_conf_lib.tar.gz metadb_backup.2021-08-19_16-33-14.tar.gz $ cd backup/hengshi-20210819163228 $ tar -xf bin_conf_lib.tar.gz $ cd ../..
其次,回滚备份压缩包的内容。
$ mv backup/hengshi-20210819163228/{bin,conf,lib} . $ bin/hengshi-sense-bin init metadb $ bin/hengshi-sense-bin start metadb $ bin/dbrestore.sh -m metadb -l ${PWD}/backup/hengshi-20210819163228 -t metadb_backup.2021-08-19_16-33-14.tar.gz $ bin/hengshi-sense-bin stop metadb
最后查看当前目录内容,确认当前目录中存在
bin
、conf
、lib
、pg_data
四个目录。$ ls .. bin conf lib pg_data #需要包含这几个目录
- 启动HENGSHI SENSE。
$ cd /opt/hengshi $ bin/hengshi-sense-bin start all
1.2. 集群模式
集群模式进行回滚操作请按照下面指导进行。
集群回滚前请确认metadb服务、hengshi服务所处设备的位置。 这里hengshi服务指具体部署在节点的服务。
$ cd /opt/hengshi $ cat ansible/hosts [metadb] Node-A [hengshi] Node-B Node-C
参数说明:
[metadb] : metadb 服务部署的设备。
[hengshi]: hengshi 服务部署的设备。请注意这里的hengshi服务是专指部署到Node-B、Node-C上的服务。关闭HENGSHI SENSE。
$ cd /opt/hengshi $ bin/hengshi-sense-bin stop all
- 在hengshi服务集群中每台上进行备份,可在集群中某一节点执行示例代码,完成集群所有节点备份工作。示例中在Node-A、Node-B、Node-C上进行备份。
nodes=(Node-A Node-B Node-C) for host in ${nodes[@]}; do ssh ${host} cd /opt/hengshi rm backup/current -rf mkdir -p backup/current/ cp -r bin conf lib local_data temp_data backup/current/ rm -rf bin conf lib local_data temp_data done
- 在metadb服务设备上,备份metadb数据文件。
$ ssh Node-A #Node-A 为/opt/hengshi/ansible/host [metadb] 参数 $ cd /opt/hengshi $ rm backup/current/pg_data -rf $ mkdir -p backup/current/ $ cp -r pg_data backup/current/ $ rm -rf pg_data
- 前往数据备份文件存储设备,将backup目录下最近一个备份压缩包,复制到hengshi服务集群中的每台设备和metadb设备上。 请核对备份压缩包的时间。示例中最近一个压缩包为hengshi-20210819163228.tgz,压缩包的时间为2021-08-19_16:32:28。
nodes=(Node-B Node-C) #Node-B Node-C for host in ${nodes[@]}; do cd /opt/hengshi/bakcup rsync -avP hengshi-20210819163228 ${host}:/opt/hengshi/bakcup #cluster_node 集群中设备ip地址 done
在hengshi服务集群中每台设备上解压备份压缩包,并进行回滚。 可以在集群中某一节点执行示例代码,完成集群所有节点回滚工作。这里解压的备份压缩包是步骤四中获取的压缩包,示例中在hengshi服务的Node-B、Node-C节点上进行回滚,示例代码可以在Node-B、Node-C上其中一台设备上执行。
nodes=(Node-A Node-B Node-C) #Node-A Node-B Node-C for host in ${nodes[@]}; do ssh ${host} cd /opt/hengshi/backup cd hengshi-20210819163228 tar -xf bin_conf_lib.tar.gz mv {bin,conf,lib} /opt/hengshi/ done
在metadb设备上恢复数据信息。这里的数据信息是步骤4中的压缩包。
$ ssh Node-A #Node-A 为/opt/hengshi/ansible/host [metadb] 参数 $ cd backup/hengshi-20210819163228 $ bin/hengshi-sense-bin init metadb $ bin/hengshi-sense-bin start metadb $ bin/dbrestore.sh -m metadb -l ${PWD}/backup/hengshi-20210819163228 -t metadb_backup.2021-08-19_16-33-14.tar.gz $ bin/hengshi-sense-bin stop metadb ls .. pg_data #确认包含该目录。
- 修改zookeeper配置信息
$ # 在 Node-b、Node-c 上修改配置文件中的ZOOKEEPER_ID 属性信息 $ ssh Node-b $ cd /opt/hengshi/conf/ $ vim hengshi-sense-env.sh $ # Node-b 替换 export ZOOKEEPER_ID=1 为 export ZOOKEEPER_ID=2 $ ssh Node-c $ cd /opt/hengshi/conf/ $ vim hengshi-sense-env.sh $ # Node-c 替换 export ZOOKEEPER_ID=1 为 export ZOOKEEPER_ID=3
- 启动HENGSHI SENSE。
$ cd /opt/hengshi $ bin/hengshi-sense-bin start all
1.3. Helm回滚
回滚前请进行数据的备份, 如果降级到低于4.0版本时,需要注意metadb的低版本数据的回滚. 参考下方连接操作:
helm list -n [namespace] # 获取已部署应用的版本号
helm rollback Hengshi-Sense 1 -n [namespace]
results matching ""
No results matching ""
衡石文档
- 产品功能一览
- 发布说明
- 新手上路
- 安装与启动
- 系统管理员手册
- 数据管理员手册
- 分析人员手册
- 数据查看员手册
- 数据服务
- 最佳实践
- 衡石分析平台 API 手册
- 附录