WEB开发网
开发学院操作系统Linux/Unix Distributed Replicated Block Device 的高可用性... 阅读

Distributed Replicated Block Device 的高可用性

 2010-09-02 00:00:00 来源:WEB开发网   
核心提示: 使用磁盘模式,DRBD 输出一个特殊设备(/dev/drbdX),Distributed Replicated Block Device 的高可用性(5),您可以像使用一个普通磁盘那样使用它,清单 1 描述如何构建一个文件系统和挂载 DRBD 供主机使用,如果散列值不相同,将过期的数据块标记为不同步, 清单 1.

使用磁盘模式,DRBD 输出一个特殊设备(/dev/drbdX),您可以像使用一个普通磁盘那样使用它。清单 1 描述如何构建一个文件系统和挂载 DRBD 供主机使用。

清单 1. 在一个主 DRBD 磁盘上构建并加载一个文件系统

# mkfs.ext3 /dev/drbd0 
# mkdir /mnt/drbd 
# mount -t ext3 /dev/drbd0 /mnt/drbd 

您可以像使用其他任何磁盘那样使用 DRBD 提供的虚拟磁盘,其后的复制操作是透明的。现在,我们来看一下 DRBD 的一些主要功能,包括自我修复功能。

DRBD 主要功能

尽管复制磁盘的思想从概念上来说是很简单的(开发也相对比较容易),但是一个健壮的实现也有很多固有的复杂性。例如,向一个网络驱动器复制块相对比较简单,但是,处理故障和暂时断电(以及随后的驱动器同步)才是真正解决方案的开始。本节将介绍 DRBD 提供的主要功能,包括各种 DRBD 支持的故障模型。

复制模式

本文前面探究了节点之间复制数据的各种方法(尤其是这两种 — 完全同步和完全异步)。DRBD 支持每种方法的变体,这些方法比异步模式提供更多的数据保护,代价是性能略有下降。内存异步模式(或半异步模式) 是介于同步模式和异步模式之间的一个变体。在这种模式下,写操作是在数据存储到本地磁盘并镜像到对等节点内存后被确认的。该模式提供更多保护,因为数据被镜像到另一个节点,这仅仅是针对易失性内存,而不是非易失性磁盘。这仍然可能丢失数据(例如,如果两个节点都发生故障),但是主节点故障不会引起数据丢失,因为数据已经被复制了。

联机设备验证

DRBD 允许对本地和远程对等设备进行联网验证(在输入/输出发生的同时)。验证意味着 DRBD 可以核实本地和远程磁盘是否是相互间的副本,这是一个耗时的操作。但是相比在节点之间移动数据进行验证,DRBD 提供了一个更为高效的方法。为了保护节点间的带宽(可能是一个受限资源),DRBD 不需要在节点间移动数据进行验证,而是移动数据(hash)的加密摘要。这样一来,一个节点可以计算一个块的散列值;将较小的签名转移到对等节点,该节点也可以计算散列值,然后对两者进行比较。如果散列值是相同的,数据块已经被正确的复制了。如果散列值不相同,将过期的数据块标记为不同步,随后的同步确保数据块是正确同步的。

上一页  1 2 3 4 5 6  下一页

Tags:Distributed Replicated Block

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接