DRBD是Linux唯一可行的块复制解决方案吗?


12

我发现自己需要块级的冗余存储。文件级复制(Gluster,GFS等)不适用于我的用例。

看起来DRBD是块复制的首选解决方案。似乎没有太多其他理智的选择。我的研究失败了吗,还是DRBD是镇上唯一的游戏?


嗨,查尔斯,您为什么不能使用文件级复制?\
nsn

用例是跨计算机复制VM磁盘设备,这些设备由LVM卷支持并通过iSCSI提供服务-块设备,而不是文件。如下面的注释所述,最终目标基本上是DIY iSCSI故障转移。
2015年

Answers:


7

是的,DRBD是唯一可以处理并发写入的复制块设备。如果您打算将文件系统放在最顶层,那么它显然也需要处理多个编写器,例如GFS(2)和OCFS(2)。

请注意,如果您可以负担得起更高层次的抽象冗余性,则文件级语义可能会幸福得多,因此在使用块级语义之前,您应该三思而后行。如果您不能使用更高级别的抽象,但是有足够的钱解决这个问题,那么使用良好的SAN可以显着提高性能。

但是您可能已经知道了。


在这种情况下,我实际上要实现的目标是对iSCSI目标进行各种热故障切换以创建简单的SAN。这主要是一项学习练习。我的选择发行版不具有本地DRBD支持,这是由于愚蠢的政治决策以及运行的内核太老了。
查尔斯

DRBD允许您执行活动/备用以及最近的活动/活动镜像。如果选择活动/活动,则必须确保文件系统支持它(因此,在上面是GFS等)。您可能需要使用像Heartbeat这样的东西来触发故障转移(或仅在需要时依靠管理员执行'drbdadm $ resource up | down')。
大卫·古德温

4

嗯,还有火星(火星)。根据文档,这在德国提供商1&1上得到了广泛使用


不只是异步吗?“同步或接近同步的操作模式已在未来计划中,但由于分布式系统的基本特性,预计只能在短距离(小于50公里)内可靠地工作。” <-来自MARS文件
BaronSamedi1958年

2

您可以使用iSCSI设备来设置RAID集,但是我要对非对称存储设备(在远程存储包括网络的情况下)进行设置时要小心-OTOH DRBD明确支持这种用法。

您是否不喜欢DRBD是有原因的吗?

我的研究失败了吗

如果您认为GFS是复制群集文件系统,那么恐怕是这样。


不是吗 好吧,是的,我想是在它自己的不是。
查尔斯

1

我听说过一种支持复制的网络块设备(NBD)的变体:ENBD。但是,我不知道该项目的状态。不过,该网站看起来好像仍受支持。


是的,自2.4内核以来没有更新?不过,很好的发现。
查尔斯

1
另一个解决方案是导出一个文件,该文件是使用带有NBD的群集文件系统复制的,但是我认为您不希望这样做。不,DRBD确实是要走的路!使用它几年来,从未丢失任何数据。
奥利弗·

0

有一种选择:您可以将SAN设备与本机复制一起使用,其中磁盘阵列的控制器自行完成所有复制工作。虽然它相当昂贵,但不需要在主机上进行配置。


碰巧我基本上是在尝试构建一个简单的SAN。
2012年

@查尔斯:我猜是这样,但这另一种选择:)
斯文

-1

问题是错误的:

DRBD是Linux唯一可行的块复制解决方案吗?我发现自己需要块级的冗余存储。

不它不是。您有例如Linux MD(软件RAID),LVM RAID。它们为块设备提供冗余。

所以您可能想问:

DRBD是Linux 唯一可行的NETWORK块复制解决方案吗?

然后,您还有其他选择。

如果客户端仅是一个节点,则可以在客户端上构建软件RAID,该软件RAID可以在多个网络存储上进行复制。

如果您有多个客户端,则可以使用群集的LVM块设备。

文件级复制(Gluster,GFS等)不适用于我的用例。

GFS(Redhat的GFS2)是一个共享的设备群集文件系统。它不提供冗余。其他本地文件系统(例如BTRFS和ZFS)也可以做到。以及其他分布式文件系统。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.