1. 迁移注意事项
请确保提供的YDMP4X环境数据干净,且未导入license证书,否则有可能出现数据迁移异常。
YDMP4X使用全新的api接口,如果您在YDMP3X有使用api,迁移后将无法兼容,不建议迁移。
2. 环境准备
确认现有3X环境是否满足4X部署需求,不满足则不能使用本方式部署。
3. 迁移准备
3.1 停止3X业务服务
执行环境: 3X服务器
执行内容:
在每个节点,执行脚本命令sh ./ydmp3x_service_ctl.sh stop_retain停止业务服务(脚本文件见6. 附录)。
3.2 数据备份
提示
建议三台管理节点都进行备份。
执行环境: 3X服务器
执行内容:
执行命令备份数据。
# 先停止MongoDB服务,避免拷贝过程中数据写入.
systemctl stop mongodb
# 进入YDMP3X数据路径
cd /usr/local/yealink/data
# 这里将旧数据压缩到/home/ydmp3x_data_bak.tar.gz目录下,/home为要备份的路径,需要提前确认磁盘空间是否足够,可自定义备份路径
## 主节点备份命令
tar -zcvf /home/ydmp3x_data_bak.tar.gz ./mongodb ./smserver/smserverid ./install.conf
## 从节点备份命令
tar -zcvf /home/ydmp3x_data_bak.tar.gz ./mongodb ./smserver/smserverid
## 业务节点备份命令
tar -zcvf /home/ydmp3x_data_bak.tar.gz ./smserver/smserverid
# 恢复MongoDB服务
systemctl start mongodb
备份部署配置
cp -a /usr/local/yealink/data/install.conf /home/install.conf
将备份文件/home/mongodb.tar.gz、/home/install.conf.bak下载到本地。
3.3 部署4X服务
执行环境: 3X服务器
执行内容:
在主节点上,执行4X部署命令部署YDMP4X。
4. 执行迁移
4.1 开始迁移
执行环境: 3X服务器
执行内容:
修改配置文件,在/opt/apollo/data/globals.conf配置文件的[global]下添加以下配置。
# 指向3X的MongoDB地址,多管理节点的情况下,使用英文`,`分割,例如:127.0.0.1:27017,127.0.0.2:27017,127.0.0.3:27017
yiot_data_migrator_db_dbc_uris=127.0.0.1:27017 # 需要替换为3X的实际地址
# 修改ybfe的端口,未修改前端口为9090
ybfe_websocket_http_port=8000
进入到部署目录(一般为/home/apollo_ydmp_deploy/)。
执行单模块升级命令开始迁移(yiot-data-migrator就是迁移程序)。
bash scripts/install.sh deploy -m yiot-data-migrator -e yiot_data_migrator_enabled=true
等待迁移执行完成。
提示
迁移完成后,部署脚步会自动退出。
通过查看迁移日志,确认迁移是否成功(一般为/opt/apollo/log/web/yiot-data-migrator/yiot-data-migrator.log)。
迁移成功,出现关键字[MIGRATE][STATUS] enterpriseId: 974707831e104212ac2ce8d267650467, status: COMPLETED
迁移失败,出现关键字:[MIGRATE][FAIL] enterpriseId:974707831e104212ac2ce8d267650467
确认迁移成功后,使用3X的用户名、密码登录4X环境,查看数据是否能正常显示。
4.2 回退3X环境
执行环境: 3X环境
执行时机: 需要禁用4X环境并回退到3X环境使用的情况下。
执行内容:
卸载4X服务。
将备份数据还原。
说明
原数据还在的情况下,可以忽略这个步骤。
# 1. 将迁移前备份的数据,上传到/home目录
# 2. 创建3X目录
mkdir -p /usr/local/yealink/data
# 3. 解压备份数据
tar -zxvf /home/ydmp3x_data_bak.tar.gz -C /usr/local/yealink/data
执行3X部署。
3X证书导入&服务配置。
5. 迁移后置操作
5.1 4X服务配置
执行环境: 3X环境
执行内容:
导入4X许可证书,路径:YDMP系统端 > 系统设置 > 许可&订单。
修改邮箱密码,路径:YDMP系统端 > 运维管理 > 系统管理 > SMTP邮箱。
配置域名等网络相关配置,路径:YDMP系统端 > 系统设置 > 网络管理。
导入安全证书(受信任证书、HTTPS证书、服务器证书),路径:YDMP系统端 > 系统设置 > 安全证书管理。
其他配置(按需配置)。
5.2 设备上报到4X环境
在YDMP系统端 > 系统设置 > 网络管理 > 端口设置,将DM-proxy监听端口改为9090。
确认4X环境上,对应的USB设备是否有上报。
6. 附录
6.1 ydmp3x_service_ctl.sh
脚本获取: 点击下载
支持命令:
命令
说明
sh ydmp3x_service_ctl.sh stop_biz
停止业务服务,一般用于迁移前停服
sh ydmp3x_service_ctl.sh start_biz
启动业务服务,一般用于迁移后恢复服务
sh ydmp3x_service_ctl.sh stop_all
停止所有服务
sh ydmp3x_service_ctl.sh start_all
启动所有服务
故障排查
执行的时候出现Permission denied异常。
脚本没有可执行权限,需要先执行chmod +x ydmp3x_service_ctl.sh授予脚本可执行权限。