Skip to content

备份与容灾概览

备份基础概念

备份 vs 容灾:

备份(Backup):
  目的:数据保护,防止误删/损坏
  特点:定期执行,有时间延迟
  恢复:分钟到小时级别

容灾(Disaster Recovery):
  目的:业务连续性,防止系统故障
  特点:实时/近实时同步
  恢复:秒到分钟级别

两者互补,缺一不可

关键指标

RPO(Recovery Point Objective,恢复点目标):
  定义:可接受的最大数据丢失量(时间维度)
  示例:RPO = 1 小时,意味着最多丢失 1 小时的数据
  
RTO(Recovery Time Objective,恢复时间目标):
  定义:从故障到业务恢复的最大时间
  示例:RTO = 30 分钟,意味着 30 分钟内必须恢复业务

不同业务的 RPO/RTO 要求:

业务类型          RPO          RTO
核心交易系统      0(零丢失)   < 5 分钟
ERP/CRM          < 15 分钟    < 30 分钟
邮件系统          < 1 小时     < 2 小时
开发测试环境      < 24 小时    < 4 小时
归档数据          < 1 周       < 24 小时

H3C 备份解决方案

UniStor B6000 备份一体机

H3C UniStor B6000 规格:

存储容量:
  ├── 标准型:200TB 原始容量
  └── 扩展型:2PB 原始容量

数据缩减:
  ├── 重删:5-20:1(虚拟化环境)
  └── 压缩:2-3:1
  综合:10-60:1(实际效果因数据类型而异)

备份性能:
  ├── 备份速度:10 TB/小时
  └── 恢复速度:8 TB/小时

接口:
  ├── FC:16Gbps × 8
  ├── iSCSI:10GbE × 8
  └── NFS/CIFS(文件备份)

备份软件集成

H3C 备份方案支持主流备份软件:

备份软件厂商特点
Veeam BackupVeeamVMware/Hyper-V 专业,易用
CommvaultCommvault企业级,功能全面
Veritas NetBackupVeritas传统企业,大规模
H3C DataProtectH3C自研,与 CloudOS 深度集成
开源 Bacula开源低成本,灵活

备份策略设计

3-2-1 备份原则

3 份数据副本:
  1 份生产数据 + 2 份备份

2 种存储介质:
  本地磁盘 + 远程存储(或磁带)

1 份异地备份:
  至少 1 份备份存储在异地

实施示例:
  生产数据:本地全闪存储(主)
  备份1:本地备份一体机(快速恢复)
  备份2:异地对象存储(灾难恢复)

备份计划

典型备份计划:

全量备份(每周日 00:00):
  - 备份所有数据
  - 耗时:4-8 小时
  - 保留:4 周

增量备份(每天 02:00,周日除外):
  - 只备份变化的数据
  - 耗时:30-60 分钟
  - 保留:4 周

日志备份(每 15 分钟,数据库):
  - 备份数据库事务日志
  - 实现 RPO < 15 分钟
  - 保留:7 天

数据库备份

MySQL 备份

bash
# 全量备份(使用 Percona XtraBackup)
xtrabackup --backup \
  --user=backup_user \
  --password=backup_password \
  --target-dir=/backup/mysql/full-$(date +%Y%m%d)

# 增量备份(基于上次全量)
xtrabackup --backup \
  --user=backup_user \
  --password=backup_password \
  --target-dir=/backup/mysql/incr-$(date +%Y%m%d) \
  --incremental-basedir=/backup/mysql/full-20240101

# 恢复流程
# 1. 准备全量备份
xtrabackup --prepare --apply-log-only \
  --target-dir=/backup/mysql/full-20240101

# 2. 应用增量备份
xtrabackup --prepare --apply-log-only \
  --target-dir=/backup/mysql/full-20240101 \
  --incremental-dir=/backup/mysql/incr-20240102

# 3. 恢复数据
xtrabackup --copy-back \
  --target-dir=/backup/mysql/full-20240101 \
  --datadir=/var/lib/mysql

Oracle 备份(RMAN)

bash
# RMAN 全量备份
rman target /
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

# 增量备份(Level 1)
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;

# 恢复到指定时间点(PITR)
RMAN> RECOVER DATABASE UNTIL TIME "TO_DATE('2024-01-15 10:00:00', 'YYYY-MM-DD HH24:MI:SS')";

容灾方案

同城双活

架构:
  主数据中心(北京A)←→ 备数据中心(北京B)
  距离:< 50km(专线延迟 < 1ms)
  
  存储同步:同步复制(RPO = 0)
  应用:双活(两个数据中心同时承载业务)
  
  H3C 方案:
    存储:H3C 全闪存储双活(Active-Active)
    计算:CloudOS 跨数据中心集群
    网络:H3C 数据中心互联(DCI)

两地三中心

架构:
  主数据中心(北京)
      ↓ 同步复制(< 1ms)
  同城灾备(北京郊区)
      ↓ 异步复制(< 30ms)
  异地灾备(上海)

RPO:
  主 → 同城:0(同步)
  主 → 异地:< 15 分钟(异步)

RTO:
  切换到同城:< 5 分钟
  切换到异地:< 30 分钟

云灾备(Cloud DR)

本地数据中心(主)
    ↓ 数据复制(专线/VPN)
公有云(灾备)
  - 阿里云 / 腾讯云 / 华为云
  - 平时:VM 关机(节省成本)
  - 灾难时:快速启动

优势:
  - 无需建设第二个物理数据中心
  - 按需付费,成本低
  - 快速部署(1-2 周)

工具:
  - H3C UniCloud 混合云
  - Veeam Cloud Connect
  - Zerto(实时复制)

褚成志的云与计算笔记