Distributed Replicated Block Device (DRBD)

(Lab Series)

1 Overview

        VM1                 VM2
    192.0.0.10           192.0.0.20
       eth1                 eth1
        +                    +
        +--------------------+
                  +
                 br0
              192.0.0.254
               Container

2 Setup

host$ cd lab/drbd/setup-1
host$ find . -type f -exec docker cp {} apk:/ws \;
cont$ ./drbd_install_packages.sh
host$ ./drbd_create_partitions.sh
host$ ./drbd_setup_devices.sh
vm1$ mkfs.ext4 /dev/drbd0
vm1$ mkdir -p /mnt/drbd0
vm1$ mount /dev/drbd0 /mnt/drbd0

3 Check

vm1$ lsblk
NAME      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sdb         8:16   0    4G  0 disk 
└─sdb1      8:17   0    2G  0 part 
  └─drbd0 147:0    0    2G  0 disk /mnt/drbd0

vm2$ drbdadm status
drbd0 role:Primary
  disk:UpToDate
  peer role:Secondary
    replication:Established peer-disk:UpToDate
vm2$ lsblk
NAME      MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sdb         8:16   0    8G  0 disk 
└─sdb1      8:17   0    2G  0 part 

vm2$ drbdadm status
drbd0 role:Secondary
  disk:UpToDate
  peer role:Primary
    replication:Established peer-disk:UpToDate

4 References