Data volumes and DRBD

Data volumes and DRBD

The SC//Reliantâ„¢ platform uses DRBD (Distributed Replicated Block Device) to replicate data volumes between the two nodes of an HA cluster. DRBD operates at the block-device level inside the Linux kernel, creating a mirrored block device across the nodes. This integration ensures that data volumes persist beyond the lifecycle of any single container or virtual machine.

How DRBD operates

DRBD presents a virtual block device (for example, /dev/drbdX) to the operating system on each node. Writes on the primary node are replicated synchronously to the secondary node over a dedicated, high-speed replication link.

In the event of a node failure, the DRBD resource on the secondary node is promoted to the primary role. Because the filesystem contains the replicated data, containers or virtual machines can be started on the new primary node and immediately access the persistent data volume; no data restore from a backup is required for the failover itself.

If the replication link drops, the primary node tracks which blocks change while the peer is unreachable, so on reconnect only those changed blocks are resynchronized rather than the entire device.

Where DRBD fits in the cluster

DRBD is one of the resources managed by Pacemaker in the SC//Reliant platform's HA cluster. Pacemaker coordinates the failover sequence: STONITH fences the unresponsive node, DRBD is promoted on the survivor, the filesystem is mounted, the application services are started, and the Virtual IP is assigned.

Checking replication status

You can confirm that the two nodes are holding identical data by running cat /proc/drbd on a node. On nodes whose DRBD utilities are version 9.x, sudo drbdadm status reports the same information keyed by resource name. For help choosing between the two and interpreting the role, disk-state, and connection-state fields, see DRBD replication status reference.

Shared vs. exclusive volumes

The SC//Reliant platform supports both shared volumes and exclusive volumes for containers, configured through the SC//Reliant Platform Manager. The distinction affects how a volume is allocated across the cluster and which workload can mount it. For details, see container data management with volumes.