数据库管理平台DMP

深信服数据库管理平台(DMP)提供MySQL、Oracle的RDS功能,支持全生命周期管理、自动MySQL主从切换、故障自愈、事务一致性备份、监控告警等,能够实现业务快速上线、资源快速分发、数据安全保护,提供SLA保障,使数据库运维复杂度大幅下降,帮助客户减少被动性救火工作,专注业务创新。
点击可切换产品版本
知道了
不再提醒
DMP 2.3.0
{{sendMatomoQuery("数据库管理平台DMP","故障自愈")}}

故障自愈

更新时间:2023-09-04

功能说明

DMP支持OracleMySQLPostgreSQL数据库实例的故障自愈,数据库实例发生故障(如节点异常关机、后台进程被kill)时可自动实现分钟级的修复和拉起。

MySQL主要覆盖场景如下表所示:

表    1  MySQL故障自愈主要覆盖场景

Master

Slave

判断维护模式

处理场景

说明

异常

无(单机)

不处理

 

走故障自愈场景

检测VM状态是否异常,并尝试进行恢复

异常

正常

不处理

 

主从切换

不能有其他任务正在执行,如备份任务;检测relaylog执行进度,执行完成再切换;切换完成后,需恢复旧主,并作为新的从节点加入集群;

异常

异常

不处理

 

走故障自愈场景

与单机架构下Master异常一致

优先尝试拉起Master;拉起完成同步的slave重新选为Master;拉起slave节点,重新恢复集群

正常

异常

不处理

 

自愈从节点,并加入集群

多次自愈未果,短时间内不再自愈;自愈后,加入失败需手动处理

短时间内连续故障

要设定触发时段,该时段内连续切换2次后,不支持再进行切换

 

Oracle主要覆盖场景如下表所示:

表    2  Oracle故障自愈覆盖场景

故障场景

判断维护模式

处理方式

说明

RAC单节点故障

不处理

 

修复故障节点

RAC自身机制会保障服务仍可用,但不会处理故障节点;DMP会对其进行修复并重组RAC

RAC两节点均故障

不处理

 

修复故障节点

不能此时RAC自身也无法工作,DMP会将故障节点一一拉起,并重组RAC,重启RAC服务

Oracle服务异常

不处理

 

修复Oracle服务

Oracle服务出现异常,其自身机制无法应对,DMP会介入进行修复

磁盘组异常

不处理

 

重新扫描磁盘

磁盘组出现离线等,DMP会介入重新发现尝试恢复磁盘组连接,再由RAC进行自修复

 

PostgreSQL主要覆盖场景如下表所示:

表 3 PostgreSQL故障自愈覆盖场景

Master

Slave

判断维护模式

处理场景

说明

异常

无(单机)

不处理

 

走故障自愈场景

检测数据库状态是否异常,识别到异常后,会重启数据库,重启数据库后会检测数据库是否异常,如果依旧异常会重启DBVM,如果依旧异常,则无法自愈

异常

正常

不处理

 

主从切换

不能有其他任务正在执行,如备份任务;执行完成再切换;切换完成后,需恢复旧主,并作为新的从节点加入集群;

异常

异常

不处理

 

走故障自愈场景

优先尝试拉起Master;与单机架构下Master异常一致

正常

异常

不处理

 

自愈从节点,并加入集群

从库尝试执行pg_rewind同步主库数据,如果pg_rewind失败,会执行pg_basebackup重做从库

 

前提条件

数据库状态为“运行中”。

注意事项

  1. 数据库未进入“维护模式”。
  2. 故障自愈功能默认为开启状态。

操作步骤

[数据库]页面,点击对应数据库名称,跳转至[数据库详情/故障自愈]页面,打开<故障自愈>开关,点击<保存>按钮,完成故障自愈配置。