DRBD的全称为:Distributed Replicated Block Device (DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。它允许用户在远程机器上建立一个本地块设备的实时镜像。与心跳连接结合使用,也可以把它看作是一种网络RAID。

DRBD负责接收数据,把数据写到本地磁盘,然后发送给另一个主机。另一个主机再将数据存到自己的磁盘中。目前,DRBD每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群来讲已经足够用了。以后的版本将支持两个节点进行读写存取。

一个DRBD系统由两个以上节点构成,与HA集群类似,也有主用节点和备用节点之分,在带有主要设备的节点上,应用程序和操作系统可以运行和访问DRBD设备。
在主节点写入的数据通过drbd设备存储到主节点的磁盘设备中,同时,这个数据也会自动发送到备用节点相应的drbd设备,最终写入备用节点的磁盘设备中,在备用节点上,drbd只是将数据从drbd设备写入到备用节点的磁盘设备中。
大部分现行高可用性集群都会使用共享存储,而DRBD也可以作为一个共享存储设备,使用DRBD不需要任何硬件的投资。因为它在IP网络中运行,因此,利用DRBD作为共享存储设备,要节约很多成本,因为在价格上IP网络要比专用的存储网络经济的多。

DRBD是linux的内核的存储层中的一个分布式存储系统,可用使用DRBD在两台linux服务器之间共享块设备,共享文件系统和数据。类似于一个网络RAID1的功能,如图所示:DRBD介绍_DRBD

 在 DRBD 设备上创建文件系统之前,必须先设置 DRBD 设备。只能通过 /dev/drbd<n> 设备(而非原始设备)操纵用户数据,因为 DRBD 使用原始设备的最后 128 MB 储存元数据。确保仅在 /dev/drbd<n> 设备上创建文件系统,而不在原始设备上创建。
例如,如果原始设备大小为 1024 MB,则 DRBD 设备仅有 896 MB 可用于数据,128 MB 隐藏并保留用于元数据。任何访问 896 MB 和 1024 MB 之间的空间的尝试都会失败,因为它不可用于用户数据。

主机上的DRBD设备挂载到一个目录上进行使用.备机的DRBD设备无法被挂载,因为它是用来接收主机数据的,由DRBD负责操作.