GUOXIN · AUTOMATIC HIGH AVAILABILITY

方案二
三节点最小自动主备

两台完整业务数据服务器加一台轻量控制节点,实现旧主隔离、MySQL与Redis自动升主、VIP接管和业务恢复编排。

共3个独立节点2台完整业务服务器1台轻量控制节点无人工升主

节点拓扑

服务器 A|主业务节点

正常持有VIP并承载全部业务
Keepalived MASTERNginx业务应用MySQL主库Redis主节点Sentinel 1HA Agent

服务器 B|备业务节点

同步数据,故障时接管全部业务
Keepalived BACKUPNginx业务应用MySQL从库Redis从节点Sentinel 2HA Agent

服务器 C|轻量控制节点

建议2核4GB;不承载业务流量,不保存正式业务数据
Sentinel 3MySQL HA控制器Fencing旧主隔离切换编排监控告警审计日志

自动切换顺序

1. 多点确认A、B、C同时检查主机、应用和中间件状态。
2. 隔离旧主阻断A写入、VIP和后台任务,防止脑裂。
3. MySQL升主确认复制状态后将B提升为可写主库。
4. Redis升主三套Sentinel多数派选举B为新主。
5. 开放业务应用检查通过后,B接管VIP并恢复服务。

每台服务器的核心职责

服务器保存的数据正常职责故障切换职责
AMySQL主数据、Redis主数据、业务文件承载访问、交易、结算和后台任务故障时必须被隔离;恢复后先作为备机同步
BMySQL副本、Redis副本、文件副本持续同步并保持待命自动升主、启用写入和后台任务、接管VIP
C仅切换状态和审计日志监控、投票和校验复制状态隔离旧主、编排升主、控制开放业务并告警

安全边界

第三台轻量服务器不是第三个MySQL数据副本。 它解决自动判断和切换编排问题。若客户要求数据库原生多数派、第三份数据副本以及更高等级容错,应改用3台同配置数据服务器。
自动回切不启用。A恢复后先作为备机同步,再安排维护窗口回切。
数据零丢失不默认承诺,实际RPO取决于MySQL复制模式、Redis复制状态及故障时刻。
C节点故障当前业务继续运行,但C恢复前暂停MySQL自动故障切换能力。
独立备份A、B之外仍需NAS或其他独立备份介质,并定期执行恢复演练。