计算机之间的镜像磁盘

计算机之间的镜像磁盘

我想要一个在两台计算机之间镜像的逻辑磁盘(使用 LVM)。也就是说,我想要一个文件系统在两台不同的计算机上拥有完整的副本。我想在 Linux 上执行此操作,最好没有重要的附加组件。

理想情况下,我希望能够从任意一台计算机本地访问它,并且 NFS 将其发布到其他计算机。

一种解决方案可能是在一台具有 iSCSI 或网络块设备 (NBD) 等的计算机上发布“磁盘”,在其上使用 RAID 镜像,然后使用文件系统,然后使用 NFS 与所有人共享。除了本地访问之外,它可以执行所有操作(但如果普通主服务器失效,则可以重新配置),并且可以轻松扩展到更多机器。

另一个可能是由运行 rsync 的 cron 作业同步的两个独立文件系统。

我希望有一种先进的分布式文件系统解决方案,如果一个节点断开连接、编辑和重新连接,它也可以合并更改。

编辑:基本要求:我目前把所有的网管信息都保存在一台电脑上。时不时地,它会出现启动问题。 (它太旧了,电池已经没电了(上周四的大风暴(缅因州)断电了)。)所以我想自动将数据分发到网络中的其他机器,这样只要一台机器工作,我都能得到。

答案1

您的要求表明您确实只需要定期备份,而不是复杂的、实时的、同时分布的备份。

所以,你的 cron-job + rsync 方法听起来是正确的。我想说的是,您可能也想在关机时同步。非常适合systemd-timers执行常规执行,并将一次性服务作业添加到关闭网络断开连接之前执行的作业中。 Systemd 让这一切变得简单!

rsync在这里听起来是一个相当不错的选择,因为它简单且非常透明 - 您知道您要保持同步的内容。雷斯蒂奇(例如到 NFS 挂载或轻松到 SSH/SFTP 目标)是另一种低设置替代方案。

答案2

使用带有 zfs 的 dRAID

dRAID 是 raidz 的一个变体,它提供集成的分布式热备件,允许更快地重新同步,同时保留 raidz 的优点。 dRAID vdev 由多个内部 raidz 组构成,每个组都有 D 数据设备和 P 奇偶校验设备。这些组分布在所有子组中,以便充分利用可用的磁盘性能。这被称为奇偶分簇,它一直是一个活跃的研究领域。

或者格鲁斯特(自由开源软件可扩展网络文件系统),以获得更基本的产品,但已经推出了更长时间。

相关内容