backup_flow
2016-09-12 18:46:08 0 举报
new_backup
作者其他创作
大纲/内容
False
备份超时,备份失败,发送错误信息
检验是否成功
有记录
提示用户有正在进行的备份或者恢复
备份失败,发送错误信息
Agent
更新新插入的backup记录,endTime,Status为fail
根据clusterId获取Cluster对象,执行哪种数据库的备份
true
false
创建job名称:CreateBackup
API Service
调用CreateBack Api
获取DBMgr失败
检查备份执行进度
DBManager
Taskmgr获取请求中的job_name
校验是否成功
备份进度backupstatus.sh
根据statusCode和detailList,errMsg判断
根据backups_id更新backups表中的记录status为creating
根据mgNode获取集群状态和hidden_business_ip和hidden_business_port
华为密码解密
检测master节点状态是否为normal或没有获取到ip,port
TaskManager
调用CreateBackup
失败三次
备份脚本:createbackup.shmongodump.sh
获取secondary节点状态,ip和port
DBMgr
是否连接成功
TaskMgr
查询backups表获取最新的backup记录status是否creating查询restore表获取最新的restore记录status是否为creating
获取Task列表,执行CreateBackupTask
判断cluster是否为空
预估时间是否执行完成
OK
Backup
Start
检查请求是否发送成功
发送createback请求到DBMgr
返回执行结果
cluster status abnormal,发送错误信息
返回提示用户mysql数据库连接失败
终止操作
建立chaanel连接
预估时间2小时?
请求是否发送成功
选择负载最轻的DBMgr发送创建备份请求
“创建备份”参数clusterid校验
备份完成
检测hidden节点状态是否为normal或没有获取到ip,port
数据库操作,返回最新backup list
返回提示用户提交创建备份请求失败
参数:clusterId,backups{id}
clusterid获取失败,发送错误信息
无
cluster is null,发送错误信息
连接数据库是否成功
API
用户触发备份操作
获取primary节点状态,ip和port
检测slave节点状态是否为normal或没有获取到ip,port
构建Command执行backup.sh需要的参数
单独描述,支持多种数据库的方法
ture
备份表插入记录,status为Start,在请求body中添加backups表信息
发送到DBMgr请求失败
校验请求中的clusterid
是否查询成功
返回提示用户备份参数有误
submit job 发送请求
是否校验成功
重新连接
参数校验,发送错误信息
是否有记录
发送Post请求
执行备份
0 条评论
下一页