一个完整的备份系统需要什么?

Bra*_*don 6 linux ubuntu backup

对于我的新服务器,我想设置一个合适的备份解决方案。我找到了一个很棒的设置,可以通过 Dropbox 每天进行两次增量备份。我计划备份我的各种数据库、webroot 目录、/etc 目录/存储库和 /var/log。

我还需要知道什么才能进行正确的备份,这里的标准设置是什么,以确保您可以在系统出现故障时快速从备份中恢复?

我正在考虑使用 Puppet,因为它描述了系统应该如何。我的恢复过程如下所示:

  1. 安装人偶
  2. 运行我的人偶配置
  3. 从 Dropbox 恢复我的备份(我应该创建一个脚本来执行此操作吗?可能)

这也应该让我创建生产服务器的克隆以用于开发环境,对吗?我错过了什么重要的东西吗?

Mic*_*ton 22

我们为一个目的构建备份系统:启用恢复。没有人关心备份;他们关心恢复。

可能需要恢复文件的三个原因:意外文件删除、硬件故障或存档/法律原因。“完整的”备份系统将使您能够在所有这些情况下恢复文件。

对于意外的文件删除,Dropbox 和 RAID 之类的东西会失败,因为它们只是反映对文件系统所做的所有更改,并且在这些情况下删除的文件已经消失。您的备份系统应该能够相当快地将文件恢复到最近的时间点;最好是在几秒到几分钟内完成恢复。

对于硬件故障,您应该尽可能使用 RAID 等解决方案和其他高可用性方法来确保您的服务保持正常运行,因为由于需要进行读写,系统的完整恢复可能需要数小时甚至数天时间到(相对)慢速媒体。

最后,系统在特定时间点的存档或完整备份(或等效备份)可以在合法和灾难恢复场景中提供恢复服务。这些通常会存储在场外,以防流星将您的数据中心变成冒烟的火山口……

您的完整备份系统应该能够支持这三种类型中任何一种的恢复,具有不同的服务级别 (SLA)。例如,您可以决定将删除的文件恢复为过去六个月的一个工作日粒度和过去三年的一个月粒度;并且磁盘故障应该能够在四小时内恢复,数据丢失不超过两个工作日。备份系统必须能够在备份计划中实施 SLA。

您的备份系统必须完全自动化。这一点怎么强调都不为过。如果备份不是完全自动化的,它们就不会发生。您的备份系统必须能够进行全自动备份,开箱即用,几乎不需要特殊配置或脚本。

您必须定期测试还原。如果从备份恢复失败,任何备份系统都将毫无用处。我想我们大多数人都有这样的恐怖故事。您的备份系统必须能够在您实施的 SLA 内恢复单个文件或整个系统。

您必须持续购买备份媒体。无论您只是进行现场磁带备份,还是使用异地云备份全力以赴,请确保预算中有足够的资金来支付所需的千兆字节(或太字节!)空间。


是系统和网络管理实践,第二版的第 26 章的一个非常简短的总结,任何是或立志成为系统管理员的人都应该拥有、阅读和记住这些内容。

我已经掩盖了很多不一定适用于您的特定情况或在您所描述的小环境中没有意义的事情。尽管如此,它应该是对“完整”备份系统应该具有的功能的合理描述,以及它们为什么是必要的。

  • @RogueCoder 不,RAID 1 是容错系统的一个例子。任何形式的 RAID 1 或镜像永远都不是备份。备份意味着历史保留以及远离系统本身的保护。 (4认同)

Chr*_*s S 10

  1. DropBox 将是一种有风险的备份方式。没有 SLA/QoS,而且以自动化方式将那么多数据转储到他们的服务器可能违反了他们的正常 TOS。他们明确声明对访问您的数据不承担任何责任——他们可能会在没有警告的情况下自行决定切断访问、破坏数据或破产。
  2. 在您实际从中恢复之前,没有任何备份过程是“有效的”,这是唯一可以确定的方法。许多大多数备份软件提供了“验证”功能,这是比无用对于大多数人来说更糟糕,因为它仅验证的东西被写入到备份介质,事情是恢复运作系统真正有用的。
  3. 无情的完整文档确保您能够在灾难发生时遵循恢复程序 - 测试文档应该是测试系统恢复的一部分。此外,如果您被公共汽车撞到,其他人将能够完成程序(墨菲定律等等)。
  4. 恢复只有在有意义的时间段内完成时才有用。例如,如果需要一年时间来恢复您的数据,那将是无用的。您应该根据您的情况确定三个级别的功能所需的时间范围:最小功能、日常操作、完成。测试您提出的解决方案,看看是否符合时间要求。