分布式块设备复制(Distributed Replicated Block Device,DRBD),是一种基于软件、网络的块复制存储解决方案,主要用于对服务器之间的磁盘、分区、逻辑卷等进行数据镜像
当用户将数据写入本地磁盘时,还会将数据发送到网络中另一台主机的磁盘上,这样本地主机与远程主机的数据就可以保证实时同步,当本地主机出现问题,远程主机上还保留着一份相同的数据,可以继续使用,保证了数据的安全
DRBD的核心功能就是数据的镜像,其实现方式是通过网络来镜像整个磁盘设备或磁盘分区,这有点类似于一个网络RAID1的功能
特点:
实时性 - 当应用对磁盘数据有修改操作时,数据复制立即发生
透明性 - 应用程序的数据存储在镜像设备上是透明和独立的。数据可以存储在基于网络的不同服务器上
同步镜像 - 当本地应用申请写操作时,同时也在远程主机上开始进行写操作
异步镜像 - 当本地写操作已经完成时,才开始对远程主机进行写操作
一个DRBD系统有两个以上节点构成,分为主用节点和备用节点两个角色,在主用节点上,可以对DRBD设备进行不受限制的读写操作,可以用来初始化、创建、挂载文件系统。在备用节点上,只能用来接收主用节点发送过来的数据,不能用于读写访问,目的是保证数据缓冲区的一致性
DRBD设备在整个DRBD系统中位于物理块设备之上,文件系统之下,在文件系统和物理磁盘之间形成了一个中间层
当用户在主用节点的文件系统中写入数据时,数据会被DRBD系统截获,同时,DRBD在捕捉到有磁盘写入的操作时,就会通知用户空间管理程序把这些数据复制一份,写入远程主机的DRBD镜像,然后存入DRBD镜像所映射的远程主机磁盘