1.
概述与目标设定
目的:明确RPO(可接受的数据丢失量)与RTO(可接受的恢复时间)。
小分段:列出关键服务(虚拟机、用户数据、配置文件、认证数据)并为每项标注优先级与依赖关系。
2.
环境与前提准备
小分段:清点硬件(主机、外置硬盘、NAS)与网络带宽;确认操作系统与虚拟化平台(如Proxmox、VirtualBox、KVM、Docker)。
准备账号与密钥(SSH key、云存储API key),并在安全位置存放恢复凭据。
3.
备份策略设计(类型与周期)
小分段:采用分层策略——关键数据每日增量备份、周全量备份、月归档备份;配置保留期(如7天增量、4周全量、12个月归档)。
对系统镜像使用定期快照(LVM、btrfs或qemu-img)并配合复制到外部介质。
4.
备份目标与存储方案
小分段:本地快速恢复用外接USB/NAS;异地容灾用云存储(Backblaze B2、Wasabi或S3兼容存储)。
设计副本策略:至少2份本地+1份异地。加密传输与静态加密(restic、borg或gpg)。
5.
工具选型与安装示例
小分段:文件/目录同步:rsync;去重加密备份:restic或borg;大文件/镜像:rclone + cloud。
示例命令:rsync -aHAX --delete /home/ user@nas:/backup/home/(设置ssh key免密)。restic init; restic backup /home --repo s3:s3.amazonaws.com/bucket。
6.
虚拟机与系统镜像备份实操
小分段:对于KVM/QEMU,先暂停或做一致性快照:virsh snapshot-create-as vm1 snap1 --disk-only --atomic;然后用qemu-img convert导出qcow2到备份目录。
对于Proxmox,可使用内置 vzdump 或 vzdump --mode snapshot,随后将tar或qcow2推送到远程存储。
7.
数据库与应用一致性备份
小分段:先flush并锁表或使用数据库自带备份工具(mysqldump、pg_dump、mongodump)导出,再将导出文件纳入备份计划。
对于持续写入的服务,考虑启用logical replication或binlog归档以减小RPO。
8.
自动化计划与脚本示例
小分段:使用cron或systemd timers调度任务。示例cron:0 2 * * * /usr/local/bin/backup_daily.sh >> /var/log/backup.log 2>&1。
脚本要包含日志、错误检测、退出码处理与备份完成的通知(邮件或Telegram/Webhook)。
9.
加密、验证与完整性校验
小分段:所有敏感数据使用客户端加密(restic自带或gpg);传输用TLS/HTTPS或sftp。
定期用restic check或borg check校验仓库完整性,并对备份集做随机恢复验证。
10.
灾备恢复演练准备清单
小分段:制定恢复流程文档(Runbook),列出恢复负责人、联系电话、备用硬件与恢复时间窗。
准备一套隔离网络或测试主机用于演练,避免影响生产系统。
11.
演练步骤:完全断电/硬盘损坏情景
小分段:步骤一:在测试环境下清空目标主机数据以模拟故障。
步骤二:从最近可用的备份启动恢复流程(恢复镜像->配置网络->启动虚拟机->恢复数据库->验证服务)。每一步记录耗时与异常。
12.
演练步骤:配置误删/数据损坏情景
小分段:步骤一:在测试环境中删除部分用户数据或篡改配置文件。
步骤二:用增量备份或快照回滚到指定时间点,恢复并比对校验(文件哈希、服务日志)。
13.
验证与验收标准
小分段:确认服务可用性(登录、关键功能测试用例)并记录RTO是否满足目标;比对数据完整性(文件数量、数据库记录计数)。
若未达标,记录原因并调整备份频率或流程。
14.
演练频率与持续改进
小分段:建议:关键服务季度演练一次,重大配置变更后立即演练。
演练后召开回顾会议,更新Runbook与自动化脚本,修正单点故障与权限设置。
15.
常见故障与排查要点
小分段:常见问题包括备份失败、仓库损坏、认证错误与带宽瓶颈。
排查:查看备份日志、测试SSH连接、验证云存储API权限、检查磁盘IO与网络延迟。
16.
文档化与权限管理
小分段:把所有流程写入README与Runbook,版本控制(Git)存放脚本与文档。
对备份存储与恢复凭据实行最小权限与多人审批机制,避免单点运维风险。
17.
Q1:演练频率应该如何设定?
答:根据服务重要性设定——关键服务建议每季度至少一次完整演练,次要服务半年或一年一次;关键数据每日备份并每周做一次恢复验证。
18.
Q2:如何在网络受限的家庭环境做异地备份?
答:优先本地快速恢复(外置HDD/NAS),异地备份可采用低频率+增量压缩上传策略(使用rclone带带宽限制),或者使用离线手段(定期把备份盘带到亲友处存放)。
19.
Q3:演练失败后如何改进流程?
答:记录失败点与耗时,分析根因(配置、脚本、权限或网络),立刻修复并重新演练。把改进记录入Change Log,必要时简化恢复步骤并增加自动化。
来源:如何为居家桌面云制定备份与灾备恢复演练流程