设置基于 bacula 文件的卷保留策略?

设置基于 bacula 文件的卷保留策略?

我们正在尝试弄清楚我们的 Bacula 设置。我们有一个带有几个 LVM 逻辑卷的 SD(存储守护进程)服务器,我们正在尝试以合理的方式对其进行完整/差异/增量备份。问题是,尽管我们已经设置了卷限制,告诉它回收最旧的卷等,Bacula 仍不断抱怨“找不到任何可附加卷”。

首先,我们在 SD 服务器上定义了 (3) 个设备。一个用于“完整”,一个用于“增量”,一个用于“差异”。理想情况下,我们希望 (2) 个完整的月度数据,中间几周有差异,每天有增量。

我不会介绍 SD 配置,因为这里的主要问题是关于时间表和池。

日程 {
  名称 = SVNSchedule
  运行 = 级别=满月 第一个星期日 21:05
  运行 = 级别 = 差异 2-5 日 21:05
  运行 = 级别 = 增量 周一至周六 21:05
}


水池 {
  名称 = SVNFullPool
  存储 = svn-full
  池类型 = 备份
  回收 = 是;自动修剪 = 是;回收最旧的卷 = 是
  体积保留 = 45 天
  最大作业量 = 1
  标签格式 = “$Pool-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-${Hour:p/2/0/r}${Minute:p/2/0/r}”
  最大卷数 = 2
}

水池 {
  名称 = SVNDiffPool
  存储 = svn-diff
  池类型 = 备份
  回收 = 是;自动修剪 = 是;回收最旧的卷 = 是
  体积保留 = 40 天
  最大作业量 = 1
  标签格式 = “$Pool-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-${Hour:p/2/0/r}${Minute:p/2/0/r}”
  最大卷数 = 10
}

水池 {
  名称 = SVNIncrPool
  存储 = svn-incr
  池类型 = 备份
  回收 = 是;自动修剪 = 是;回收最旧的卷 = 是
  体积保留 = 20 天
  最大作业量 = 1
  标签格式 = “$Pool-${Year}-${Month:p/2/0/r}-${Day:p/2/0/r}-${Hour:p/2/0/r}${Minute:p/2/0/r}”
  最大音量 = 7
}

感觉我们几乎应该在“完整”池上使用“卷使用持续时间 = 1w”选项。但我们遇到的主要问题是 Bacula 不会自动回收文件卷。至少,在我们启动完整备份,然后在几个小时后启动另一个备份的测试期间不会。

另一个让我不满意的小问题是如何让 Bacula 创建具有可预测名称的备份文件,因为当前设置在尝试将文件 rsync 到异地时会造成严重破坏。

答案1

Bacula 会自动创建卷,直至达到“最大卷数”。但您始终可以使用 bacula 控制台手动创建卷。根据您的配置,您的“最大卷数”似乎设置为 2、10 和 7。

根据您的备份策略,您可能需要更多卷来进行完整备份,而增量和差异备份则需要更少的卷。我建议增加 SVNFullPool 的卷数。这取决于您的内容以及您在每个卷上定义的最大大小。

这一切还取决于您的备份计划。如果您在保留期内多次进行完整备份,则必须设置足够的卷来容纳几次完整备份。

以下文章提供了有关池定义、计划的一些反馈,并提供了有关用于一年备份的卷数量的有趣统计数据。

http://blog.vacs.fr/vacs/blogs/post.html?post=2010/04/09/One-year-of-data-backup-with-Bacula-on-a-ReadyNAS-duo

相关内容