DRBD 是由内核模块和相关脚本而构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。您可以把它看作是一种网络RAID。 DRBD负责接收数据,把数据写到本地磁盘,然后发送给另一个主机。另一个主机再将数据存到自己的磁盘中。其他所需的组件有集群成员服 务,如TurboHA 或 心跳连接,以及一些能在块设备上运行的应用程序。例如:裸I/O、文件系统及fsck、具有恢复能力的数据库。 下面是DRBD的系统结构图 该版本新增的功能如下: 1. a new "check-offline" command to detect offline resize and relocate meta-data accordingly, 2. a new "initial-split-brain" handler for better notification,... 3. a new "--assume-clean" resize option that skips synchronization of new space after resize, 4. improvements in resync for WAN/proxy connections ChangeLog: * Do not expose failed local READs to upper layers, regression introduced in 8.3.3 * Fixed support for devices with 4k hard sector size (again) * Fixed a potential Oops in the disconnect code * Fixed a race condition that could cause DRBD to consider the peers disk as Inconstent after resync instead of UpToDate (Bugz 271) * Fixed a reace condition that could cause DRBD to consider the peers disk as Outdated instead of Inconsistent during resync (Bugz 277) * Disallow to start a resync with invalidate / invalidate-remote when the source disk is not UpToDate * Forcing primary works now also for Consistent, not only for Outdated and Inconsistent (Bugz 266) * Improved robustness against corrupt or malicous sector addresses when receiving data * Added the initial-split-brain, it gets called also if the split-brain gets automatically resolved * Added the --assume-clean option for the resize command, it causes drbd to not resync the new storage after an online grow operation * drbdadm: Do not segfault if stacked-on-top-of refers to an undefined res * drbdadm: Do not consider configs with invalid after statements as invalid * drbdadm: Do not segfault if the peer's proxy section is missing * drbdadm: Allow nullglob in include statement * drbdadm: Fixed the use of waitpid * init script: fix insserv headers (Debian 576901) * Gave the receiving code the ability to use multiple BIOs for writing a single data packet; now DRBD works with BIOs up to 32kByte also on LVM devices; from now on the use_bmbv config option does nothing * New command check-resize, that allows DRBD to detect offline resizing and to move internal meta-data accordingly * Added a control loop, that allows DRBD to find auto tune the resync speed, on connections with large queues (drbd-proxy) * --dry-run option for connect; disconnects after sync handshake * --overwrite-data-of-peer got an alias named --force * Improvements to crm-fence-peer * Fixed option parsing and stacking in snapshot-resync-target-lvm.sh * Compiles on 2.6.33 and 2.6.34 |