注意:自从我第一次问这个问题以来,我对这个问题的理解发生了重大变化(请参阅下面的编辑 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 …
在站点 A 上,我已经成功地在一台主机上设置了一个 bacula 控制器,在我要备份的主机上设置了几个文件守护程序,最后是一个实际存储备份的存储守护程序。
如果灾难袭击了建筑物站点 A,我希望在另一个站点站点 B 上安装第二个存储守护程序。
文件集、导演等将是相同的,除了作业也将存储在其他存储守护程序中。
是否有任何最佳实践?
我在云环境中有一个专用的 Ubuntu Web 服务器,我正在寻找一种进行自动备份的好方法。
我想用网络应用程序备份一些目录,以及我所有的 MySql 数据库。至于目的地:在本地每两小时制作一次快照,每六小时制作一次到远程 ftp 服务器。同时删除超过 7 天的备份存档(本地 + ftp),并通过电子邮件通知任何问题。
现在为了实现其中的一些功能,我使用 cron + shell 脚本和http://www.mysqldumper.net/,但实际上这并不能满足我的需求。Mysqldumper 不会自动了解新数据库,并且 shell 脚本不会通知问题。这是我必须不时检查的事情,而且我不信任。
我用谷歌搜索了一段时间,似乎大多数人都用 shell 脚本解决了这个问题。这是您可以信任的方法吗?是否有任何 web-gui 工具,我不见了?也许这样做有一个更聪明的开始?我有点困惑。
我们在 Stack Exchange 使用 NetBackup,我正在努力改进我们的备份策略以提高效率。
目前,我们使用 SQL 2008 R2 并让 SQL 运行维护计划将数据备份到 .bak 文件。写入该文件后,我们将备份存储 .bak 文件的目录。
我们不使用 NetBackup 的 SQL 代理,因为我们将 .bak 文件用于简单备份之外的其他用途。
我正在考虑制定每周/差异/累积轮换的时间表,但考虑到目录将包含保证每天都是新的大文件的事实,并且考虑到我们的系统会自动老化超过特定天数的备份,我认为标准的“办公室文件服务器”方案可能比其他方法效率低。
有没有“最有效”的方法来处理这个问题?
问题
我们想将多个网络共享中的关键文件备份到可移动硬盘驱动器。我们希望自动备份,因此我们不必记住运行它。它需要在一夜之间完成。此外,我们希望能够保留每个文件的多个版本,以便我们可以更轻松地解决用户的错误。
背景资料
我在一家基于 Windows 的大型企业工作,有一个集中的 IT 部门负责所有备份。他们的备份面向灾难恢复而不是用户错误,并且需要上级管理人员批准任何非灾难恢复。有几次我们注意到我们的备份失败了,我们没有收到通知。我没有服务器或桌面的管理权限。我们正在尝试备份大约 240 GB 的大约 198,000 个文件。这些文件很少更改。我们的备份驱动器是 1 TB。
我建议的解决方案
我想要做的是使用带有 /mir 选项的Robocopy和Mercurial SCM编写一个批处理文件来存储文件的所有版本。我会在每次执行 Robocopy 之前先执行 hg add 和 hg commit,以保存当前状态,然后制作文件结构的镜像副本。问题是 /mir 将删除源中不存在的每个文件夹,而 Mercurial 将存储库存储在目标文件夹中的 .hg 文件夹中。
有谁知道我如何说服 Mercurial 将 .hg 文件夹存储在其他地方,或者说服 Robocopy 不要从目的地删除它?
我试图避免编写自定义程序来进行复制。
在我们的研究小组中,我们需要以某种方式备份在 MRI 扫描仪上获取的数据,以保留任何已获取的扫描(即使数据可能由于空间或其他原因从扫描仪中删除)。我们称之为我们的保险库。
要存储到vault,单独的机器 nfs-mount 扫描仪的数据分区并将数据复制到它自己的本地备份硬盘:
rsync -au /nfsmount/data /pvbackup-vault >> $LOGFILE
Run Code Online (Sandbox Code Playgroud)
我的问题是:这安全吗?我们的数据有时会在之前处理过一次后被重新处理。所以我想要 -u 标志。
对于实际的原始数据(这是神圣的),我可以预见一个问题:由于某些错误/错误/不可预见的情况,扫描仪上的文件被覆盖,然后保险库中的数据将被覆盖。我不确定如何防止这种情况发生。一方面,我希望允许重新处理数据,甚至可能重新获取数据,另一方面,我希望创建一个不受未来变化影响的保险库,至少在数据方面。我应该标记这些情况并手动处理它们吗?乏味。
注意: 我有一个不同的增量策略 (rsnapshot) 来防止用户错误,该策略允许恢复无意中删除/更改的数据,这些数据可以追溯到一定数量的小时/天/周/月。
注2: 也许我应该提一下,我们目前正在处理大约 250GB 的数据,每周大约有 10GB 的新获取的数据。因此,DVD 已成为替代品...
因为我买了一台服务器,它有一个 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,许可证是试用版(据我所知,应该提供全套功能,包括来宾迁移)。
这是一个假设性的问题,但我敢肯定有人以前一定遇到过和/或考虑过这个问题。
情况: 考虑一下,一家小型企业正在运行一个 Active Directory 域,并且在其办公室中有两个域控制器。域控制器都是物理服务器(无虚拟化)。
域控制器的系统状态备份每天运行。
公司遭遇灾难(火灾或洪水),导致其服务器无法修复。
该公司希望使用备份重建他们的域控制器,但是他们无法获得相同品牌和型号的服务器(因为它们已经使用了几年)。这给他们带来了一个问题,因为 Active Directory 作为“系统状态”的一部分进行备份,这意味着它与原始硬件紧密耦合。
总结: 除非小型企业有能力在异地托管一个域控制器(以防止潜在灾难损坏其办公室的所有服务器),否则必须对他们的域控制器中的至少一个域控制器进行虚拟化,以便使恢复过程成为硬件不可知论(因此不需要他们购买完全相同型号的服务器)。你会同意吗?
backup disaster-recovery windows-server-2003 windows-server-2008 active-directory
我想使用 FTP 位置作为预定 Windows Server 2012 备份的备份。
我无法让它工作,因为 Windows 拒绝接受网络位置作为驱动器。即使使用“FTPUse”(出现套接字错误,不知道为什么......)或“WebDrive”也没有解决。
许多人认为 WebDrive 将是一个不错的解决方案。我能够为 FTP 位置分配一个驱动器号,它在 Windows 资源管理器中看起来像那样。但是当我想使用“备份到卷”或“备份到共享网络文件夹”时,服务器的备份应用程序并没有让我选择它。
知道如何获得解决方法吗?
我正在寻找有关 AWS 托管环境中 MongoDB 灾难恢复的最佳实践建议。
我们的设置在这一点上是相当标准的,3 个服务器的副本集(1 个主服务器、1 个辅助服务器和 1 个仲裁器),主服务器和辅助服务器上的 mongo 卷是 EBS 支持的。所有这些都在一个区域中,分布在多个可用区中。最终我们需要跨越区域,但这是改天的讨论。
我在 Mongo 文档中看到的备份建议谈到了 EBS 快照(这很容易实现自动化)。然而,如果灾难来袭,它们不会让我们回到失败的时代。
我正在寻找可用的最强大的策略。高达第二次数据保护和故障后系统恢复速度的优先级高于价格。我们可以稍后优化价格。
在此先感谢您的所有建议...
backup ×10
bacula ×1
batch-file ×1
filesystems ×1
freebsd ×1
ftp ×1
linux ×1
mercurial ×1
migration ×1
mongodb ×1
mysql ×1
replica-set ×1
robocopy ×1
rsync ×1
service ×1
snapshot ×1
sql-server ×1
vmware-esxi ×1
windows ×1
zfs ×1