标签: backup

减少异地备份的 ZFS 流大小

注意:自从我第一次问这个问题以来,我对这个问题的理解发生了重大变化(请参阅下面的编辑 2),但我保留了原始版本。

我们已经建立了一个异地备份系统(仍在内部测试),通过 ZFS 发送/接收进行数据传输。两端的机器都是 FreeBSD 8.2。总体而言,该设置运行良好。

但是,对于 ZFS 快照流大小,我显然有一些不了解的地方。我很难找到这方面的信息,所以我希望有更多经验的人可以启发我。

在源机器上,我有一个大约 47GB 的文件系统,我需要为其传输快照:

# zfs list -t snapshot -r -s creation stg/serverx
NAME                   USED  AVAIL  REFER  MOUNTPOINT
(.......)
stg/serverx@20110620  2.88M      -  47.1G  -
stg/serverx@20110621  2.89M      -  47.1G  -
stg/serverx@20110622  2.88M      -  47.1G  -
stg/serverx@20110623  5.44M      -  46.6G  -
Run Code Online (Sandbox Code Playgroud)

我在远程服务器上已经有了 6/22 的快照,所以我将生成的流发送给它

zfs send -i stg/serverx@20110622 stg/serverx@20110623
Run Code Online (Sandbox Code Playgroud)

这是在另一端毫无问题地接收到的;然而,生成的流超过 80 GB — 几乎是整个源文件系统大小的两倍

我是否误解了由生成的“USED”列的含义zfs list?我原以为这个快照流是 5.44M 加上一定量的开销。似乎我不太明白什么是开销。

可能有用的信息:我们将每个服务器备份(通过 rsync)到它自己的文件系统。这个特定的流似乎生成了最大的流(相对于文件系统和快照大小)。我怀疑这可能与它是一个邮件服务器有关,所以它的一些内容是非常动态的。但是,我希望这也会显示在“已使用”大小的快照中。

显然,我们可以通过压缩流来节省很多(它可能会减少到原始大小的 12-20%)。即便如此,带宽仍将是我们的限制因素,因此我们想了解是什么让这些流如此庞大,以及我们是否可以采取任何措施来缓解它。

编辑:我忘记了我们在源文件系统上启用了 zfs 压缩。因此,所使用的 47 …

freebsd backup zfs

6
推荐指数
1
解决办法
1955
查看次数

如何在 Bacula 中设置双站点存储守护程序(镜像备份)

在站点 A 上,我已经成功地在一台主机上设置了一个 bacula 控制器,在我要备份的主机上设置了几个文件守护程序,最后是一个实际存储备份的存储守护程序。

如果灾难袭击了建筑物站点 A,我希望在另一个站点站点 B 上安装第二个存储守护程序。

文件集、导演等将是相同的,除了作业也将存储在其他存储守护程序中。

是否有任何最佳实践?

backup bacula

6
推荐指数
1
解决办法
5015
查看次数

专用服务器自动备份解决方案

我在云环境中有一个专用的 Ubuntu Web 服务器,我正在寻找一种进行自动备份的好方法。

我想用网络应用程序备份一些目录,以及我所有的 MySql 数据库。至于目的地:在本地每两小时制作一次快照,每六小时制作一次到远程 ftp 服务器。同时删除超过 7 天的备份存档(本地 + ftp),并通过电子邮件通知任何问题。

现在为了实现其中的一些功能,我使用 cron + shell 脚本和http://www.mysqldumper.net/,但实际上这并不能满足我的需求。Mysqldumper 不会自动了解新数据库,并且 shell 脚本不会通知问题。这是我必须不时检查的事情,而且我不信任。

我用谷歌搜索了一段时间,似乎大多数人都用 shell 脚本解决了这个问题。这是您可以信任的方法吗?是否有任何 web-gui 工具,我不见了?也许这样做有一个更聪明的开始?我有点困惑。

mysql linux backup filesystems

6
推荐指数
1
解决办法
1251
查看次数

备份充满大型数据库备份文件的目录的最有效方法是什么?

我们在 Stack Exchange 使用 NetBackup,我正在努力改进我们的备份策略以提高效率。

目前,我们使用 SQL 2008 R2 并让 SQL 运行维护计划将数据备份到 .bak 文件。写入该文件后,我们将备份存储 .bak 文件的目录。

我们不使用 NetBackup 的 SQL 代理,因为我们将 .bak 文件用于简单备份之外的其他用途。

我正在考虑制定每周/差异/累积轮换的时间表,但考虑到目录将包含保证每天都是新的大文件的事实,并且考虑到我们的系统会自动老化超过特定天数的备份,我认为标准的“办公室文件服务器”方案可能比其他方法效率低。

有没有“最有效”的方法来处理这个问题?

backup sql-server

6
推荐指数
1
解决办法
1117
查看次数

使用 Mercurial 和 Robocopy 备份?

问题

我们想将多个网络共享中的关键文件备份到可移动硬盘驱动器。我们希望自动备份,因此我们不必记住运行它。它需要在一夜之间完成。此外,我们希望能够保留每个文件的多个版本,以便我们可以更轻松地解决用户的错误。

背景资料

我在一家基于 Windows 的大型企业工作,有一个集中的 IT 部门负责所有备份。他们的备份面向灾难恢复而不是用户错误,并且需要上级管理人员批准任何非灾难恢复。有几次我们注意到我们的备份失败了,我们没有收到通知。我没有服务器或桌面的管理权限。我们正在尝试备份大约 240 GB 的大约 198,000 个文件。这些文件很少更改。我们的备份驱动器是 1 TB。

我建议的解决方案

我想要做的是使用带有 /mir 选项的RobocopyMercurial SCM编写一个批处理文件来存储文件的所有版本。我会在每次执行 Robocopy 之前先执行 hg add 和 hg commit,以保存当前状态,然后制作文件结构的镜像副本。问题是 /mir 将删除源中不存在的每个文件夹,而 Mercurial 将存储库存储在目标文件夹中的 .hg 文件夹中。

有谁知道我如何说服 Mercurial 将 .hg 文件夹存储在其他地方,或者说服 Robocopy 不要从目的地删除它?

我试图避免编写自定义程序来进行复制。

windows backup robocopy batch-file mercurial

6
推荐指数
1
解决办法
1083
查看次数

用于备份的 rsync 被认为是危险的?

在我们的研究小组中,我们需要以某种方式备份在 MRI 扫描仪上获取的数据,以保留任何已获取的扫描(即使数据可能由于空间或其他原因从扫描仪中删除)。我们称之为我们的保险库

要存储到vault,单独的机器 nfs-mount 扫描仪的数据分区并将数据复制到它自己的本地备份硬盘:

rsync -au /nfsmount/data /pvbackup-vault >> $LOGFILE
Run Code Online (Sandbox Code Playgroud)

我的问题是:这安全吗?我们的数据有时会在之前处理过一次后被重新处理。所以我想要 -u 标志。

对于实际的原始数据(这是神圣的),我可以预见一个问题:由于某些错误/错误/不可预见的情况,扫描仪上的文件被覆盖,然后保险库中的数据将被覆盖。我不确定如何防止这种情况发生。一方面,我希望允许重新处理数据,甚至可能重新获取数据,另一方面,我希望创建一个不受未来变化影响的保险库,至少在数据方面。我应该标记这些情况并手动处理它们吗?乏味。

注意: 我有一个不同的增量策略 (rsnapshot) 来防止用户错误,该策略允许恢复无意中删除/更改的数据,这些数据可以追溯到一定数量的小时/天/周/月。

注2: 也许我应该提一下,我们目前正在处理大约 250GB 的数据,每周大约有 10GB 的新获取的数据。因此,DVD 已成为替代品...

backup rsync

6
推荐指数
1
解决办法
1250
查看次数

如何将 VMware ESXi 5 VM 导出到文件中以便稍后恢复?

因为我买了一台服务器,它有一个 RAID 控制器,VMWare ESXi 5 不支持它,所以我不得不将它安装在一个裸非 RAID 配置中。现在,因为我已经购买了受支持的 RAID 控制器,我将安装它,并将所有连接的 HDD 重新配置为新的 RAID 1+0 阵列并重新安装 VMWare ESXi 5。然后我需要恢复所有 VM。为此,我想将所有 VM 保存到 USB 连接(到服务器或连接到千兆位连接的笔记本电脑 - 无论哪个更容易)。我怎样才能做到这一点?如何将 VM 映像导出到文件?

PS:VMWare ESXi Server 和 vSphere Client 都是 5.0.0,许可证是试用版(据我所知,应该提供全套功能,包括来宾迁移)。

virtualization backup migration vmware-esxi vmware-vsphere

6
推荐指数
2
解决办法
4万
查看次数

小型企业中的 Active Directory 灾难恢复

这是一个假设性的问题,但我敢肯定有人以前一定遇到过和/或考虑过这个问题。

情况: 考虑一下,一家小型企业正在运行一个 Active Directory 域,并且在其办公室中有两个域控制器。域控制器都是物理服务器(无虚拟化)。

域控制器的系统状态备份每天运行。

公司遭遇灾难(火灾或洪水),导致其服务器无法修复。

该公司希望使用备份重建他们的域控制器,但是他们无法获得相同品牌和型号的服务器(因为它们已经使用了几年)。这给他们带来了一个问题,因为 Active Directory 作为“系统状态”的一部分进行备份,这意味着它与原始硬件紧密耦合。

总结: 除非小型企业有能力在异地托管一个域控制器(以防止潜在灾难损坏其办公室的所有服务器),否则必须对他们的域控制器中的至少一个域控制器进行虚拟化,以便使恢复过程成为硬件不可知论(因此不需要他们购买完全相同型号的服务器)。你会同意吗?

backup disaster-recovery windows-server-2003 windows-server-2008 active-directory

6
推荐指数
1
解决办法
1305
查看次数

如何使用 FTP 服务器作为 Windows Server 2012 的备份空间

我想使用 FTP 位置作为预定 Windows Server 2012 备份的备份。

我无法让它工作,因为 Windows 拒绝接受网络位置作为驱动器。即使使用“FTPUse”(出现套接字错误,不知道为什么......)或“WebDrive”也没有解决。

许多人认为 WebDrive 将是一个不错的解决方案。我能够为 FTP 位置分配一个驱动器号,它在 Windows 资源管理器中看起来像那样。但是当我想使用“备份到卷”或“备份到共享网络文件夹”时,服务器的备份应用程序并没有让我选择它。

知道如何获得解决方法吗?

backup ftp service windows-server-2012

6
推荐指数
1
解决办法
7699
查看次数

AWS 上的 MongoDB 灾难准备

我正在寻找有关 AWS 托管环境中 MongoDB 灾难恢复的最佳实践建议。

我们的设置在这一点上是相当标准的,3 个服务器的副本集(1 个主服务器、1 个辅助服务器和 1 个仲裁器),主服务器和辅助服务器上的 mongo 卷是 EBS 支持的。所有这些都在一个区域中,分布在多个可用区中。最终我们需要跨越区域,但这是改天的讨论。

我在 Mongo 文档中看到的备份建议谈到了 EBS 快照(这很容易实现自动化)。然而,如果灾难来袭,它们不会让我们回到失败的时代。

  • 我是否需要记录 oplog 并结合使用它们来在故障后恢复?
  • 我是否应该在副本集中启动另一个实例,专门用于备份和快照,而不是拍摄主要和次要快照?如果是这样,我们又回到了 oplog 问题,不是吗?
  • 我是否应该对每个副本卷进行快照并完全依赖副本集来覆盖故障和最后一个快照之间的时间?

我正在寻找可用的最强大的策略。高达第二次数据保护和故障后系统恢复速度的优先级高于价格。我们可以稍后优化价格。

在此先感谢您的所有建议...

backup snapshot amazon-web-services mongodb replica-set

6
推荐指数
1
解决办法
1124
查看次数