1. 事件回顾与目标设定
说明:先把台机房停电事件做简短复盘,明确目标。小分段:1) 列出影响系统与服务;2) 确定业务优先级(关键、重要、一般);3) 为每类服务设定可接受的RTO/RPO目标(例如关键服务RTO≤1小时,RPO≤5分钟)。
2. 资产盘点与依赖关系图
操作步骤:1) 导出所有服务器/容器清单、数据库和存储卷清单;2) 标注每项的物理位置(
台湾机房A、备援B等);3) 绘制服务依赖图(前端→应用→数据库→第三方),标注单点故障(SPOF)。
3. 制定SLA与备援策略
详细做法:1) 按业务优先级制定SLA、RTO/RPO并写入变更单;2) 决定备援模型(热备/暖备/冷备、主动-主动或主动-被动);3) 明确成本上限与预算审批流程。
4. 数据复制与备份实现细节
实操指南:1) 选择复制技术:数据库用主从/多主复制或CDC(例如MySQL/Galera、Postgres streaming/Logical Replication);对象存储启用跨区复制(CRR);块存储定期快照;2) 设定频率(关键表5分钟、次要每日);3) 对备份实行自动完整性校验(每次备份后run checksum);4) 备份加密与异地存放;5) 保留策略与垃圾回收。
5. 网络与流量切换实操
步骤详解:1) 将关键域名TTL降为短值(60-300s)以利快速切换;2) 准备健康检查与自动Failover(Route53/云DNS+HEALTH CHECK或BGP Anycast);3) 制作切换脚本:检测故障→调整DNS/负载均衡器→更新证书与会话迁移策略;4) 记录回滚步骤。
6. 机房电力与设施冗余措施
可执行操作:1) 确认UPS、柴油发电机容量和维护合同,建立定期燃油与负载测试计划;2) 与机房厂商签署SLA(恢复时间、备用容量保证);3) 部署环境监控(PDU、电源状态、温度)并接入告警中心;4) 若条件允许,建立双机房跨电网供电。
7. 自动化与运行手册(Runbook)
实作步骤:1) 编写标准化Runbook,包含检测、切换、验证、回滚四个阶段的逐步命令;2) 将关键步骤脚本化(例如:脚本A用于切换数据库主库、脚本B用于调整LB后端);3) 将Runbook存放在版本控制与安全共享平台;4) 指定责任人与联系方式。
8. 演练与验证计划
具体流程:1) 制定年度/季度演练表(桌面演练、部分流量切换、全量切换);2) 每次演练记录时间线与指标(故障发现→切换完成→业务恢复),比对RTO/RPO;3) 修订Runbook与自动化脚本;4) 演练后做问题根因分析(RCA)。
9. 合约管理与成本控制
建议步骤:1) 与云厂商/机房谈判多区域折扣与保底资源;2) 制定备用资源利用策略(按需启动、预留实例);3) 定期评估冗余成本与业务影响比(Cost-Benefit);4) 将关键SLA写入供应商合同并预留罚则。
10. 问:我们应先从哪一步开始构建备援体系?
答:先做资产盘点与业务分级(见第2、3段),明确最关键的服务与可接受的RTO/RPO,然后依据这些目标设计最经济有效的备援模型(热/暖/冷备),再推进数据复制与自动化Runbook。
11. 问:是否必须做多云才能防止单区停电?
答:不一定。多云能降低单云风险但成本与复杂度高。优先考虑多可用区或跨区部署、异地备份与DNS/流量切换;若业务对可用性要求极高再考虑多云或主动-主动跨云架构。
12. 问:预算有限的小型企业应该把资源放在哪些优先项?
答:优先保证关键数据的异地备份与恢复路径(定期快照+校验)、低TTL的DNS切换机制与基础的健康检查;其次实现自动化Runbook与季度演练。电力与物理级冗余可先通过云区域冗余替代本地高成本设施。
来源:风险管理台湾机房停电事件教会企业如何建立更稳健的备援体系