定义可接受的数据丢失和恢复时间,保留一致的独立副本,并在隔离环境中测试恢复实际应用。仅完成备份作业或完整性检查并不能证明恢复所需的所有依赖项都存在。
从您需要的恢复开始
备份计划始于两个实际问题:您可能丢失多少近期工作,以及服务可能不可用多长时间?这些答案决定计划、要包含的数据和恢复方法。每日副本可能适合很少更改的网站,但对于繁忙的应用来说间隔太大。
列出使服务正常运行所需的内容,而不仅仅是其最大的文件夹。应用数据、数据库内容、配置、上传文件以及重建环境所需的信息都可能很重要。保留一份依赖项和恢复密钥的私密清单。备份应支持一个可运行的系统,而不仅仅是生成一个其用途已被遗忘的归档文件。
在故障边界之外保留副本
同一台机器上的第二个目录可以帮助恢复误编辑,但它仍然面临该机器丢失的风险。本地快照对于快速回滚可能很有价值,但仍需要一份独立副本以应对更广泛的事件。选择一个单独的恢复目标,并决定哪些访问权限应能够读取、写入或删除备份。
如果生产凭据可以删除每一份恢复副本,那么一个被入侵的应用账户可能会使整个策略失效。尽可能分离访问权限并保护存储凭据。加密有助于保护存储的内容,但恢复过程还取决于将密钥安全地保存在受损环境之外。
捕获一致的应用状态
在没有适当方法的情况下复制打开的数据库文件可能会捕获到不可用的状态。使用应用或数据库支持的备份方法,并了解它是否需要一致性快照、逻辑导出或短暂暂停写入。协调相关数据,使上传目录及其数据库引用描述工作流中的同一时间点。
有意记录排除项。缓存和临时构建文件可能是可重现的;客户上传文件通常不是。在添加功能或移动目录后审查该列表。成功的备份作业无法保留从未包含的路径。
在隔离环境中测试恢复
将代表性数据恢复到单独位置,并验证其能否正确打开。对于应用,既要测试恢复的服务,也要测试文件。在测试环境中禁用外发电子邮件、计划任务和外部集成,以免演练对真实用户产生影响或重复生产任务。
仓库完整性检查和恢复测试回答的是不同的问题。工具可以检查存储的结构和数据,而应用仍可能缺少配置或遗忘的密钥。记录恢复需要多长时间、需要哪些手动步骤以及流程在哪些方面需要改进。在重大变更后重复该演练。
实际场景:在发布前演练恢复
考虑一个具有数据库、用户上传文件和少量私有配置文件的应用程序。所有者创建恢复清单,并选择数据库支持的一致性方法。单独的备份目标存储所需的副本,而恢复密钥保存在生产机器之外。第一次测试从空的隔离环境开始,因此隐藏的依赖项无法从正在运行的服务器借用。
所有者恢复数据和配置,然后检查登录、一条代表性记录和一个上传文件。在演练期间,外发电子邮件、计划任务和外部操作保持禁用。如果数据库启动但上传路径或密钥缺失,测试就发现了成功的归档作业不会揭示的缺口。所有者更正清单并重复受影响的恢复检查。
最后,所有者记录恢复时间和手动步骤。将计划和保留策略与可能丢失的近期工作量以及服务可能不可用的时长进行比较。这些是项目特定的决策,而不是存储标签提供的保证。经过测试的流程使可选备份或存储产品能够作为更广泛恢复策略的一部分发挥作用。
| 恢复证据 | 它检查什么 | 遗留问题 |
|---|---|---|
| 备份作业已完成 | 作业报告成功 | 是否包含了所有必需路径? |
| 仓库完整性检查 | 存储结构或数据检查 | 应用是否具备所有依赖项? |
| 隔离应用恢复 | 代表性恢复可以正常工作 | 观察到的时间是否满足你的目标? |
让故障可见并有意识地保留
静默停止的备份是未来的意外。监控作业完成情况、可用容量以及最新可用恢复点的时间。保留足够的历史记录,以便从后来发现的问题中恢复,并了解修剪如何影响该历史记录。仔细审查删除操作,因为保留策略错误可能会删除唯一有用的版本。
阅读你所选 SwissOctet 服务上任何备份选项的范围,并确认恢复过程。Vault Storage 可以作为容量组件来考虑,但仅靠存储产品并不是完整的恢复策略。决定你需要恢复什么,保持副本独立,并在服务变得关键之前验证该流程。
您的实用清单。
- 设定可接受的数据丢失和恢复时间。
- 包含数据库、上传文件和重建信息。
- 保留独立副本并分离恢复密钥。
- 在隔离环境中恢复并测试应用。
- 监控备份时间、容量和保留情况。
重要细节。
同一台服务器上的第二个目录是独立备份吗?+
不是。它仍然面临该服务器丢失的风险,尽管它可能有助于恢复本地误操作。
完整性检查能替代恢复演练吗?+
不能。有效的仓库仍可能遗漏应用所需的配置、密钥或数据。
为什么在恢复测试期间禁用集成?+
为了防止测试环境向真实用户发送电子邮件、重复作业或触发生产操作。
前往来源。
这些参考资料支持本指南中的技术概念。在更改生产系统之前,请遵循当前文档。
- restic:从备份恢复 restic.readthedocs.io
- restic:使用仓库 restic.readthedocs.io
- PostgreSQL:备份与恢复 www.postgresql.org
由 SwissOctet 提供编辑指导。示例仅作说明。服务规格、可用选项和合同条件必须单独核实。