drbdlinks is a program which manages links into a DRBD partition which is shared among several machines. It is meant to be used in conjunction with the heartbeat system for simplifying management of high availability clusters. A simple configuration file, "/etc/drbdlinks.conf", specifies the links. This can be used to manage links for "/etc/apache", "/var/lib/pgsql", and other system files and directories that need to appear as if they are local to the system when running applications after a DRBD shared partition has been mounted.
A sample configuration file with annotations is included in the drbdlinks distribution.
When run with "start" as the mode, drbdlinks will rename the existing files/directories, and then make symbolic links into the DRBD partition. "stop" does the reverse.
The "monitor" and "status" modes will check the file-system against the configuration file and will report "running" (monitor mode) or "OK" (status mode) if all links appear to be up. Otherwise they report "down" or "stopped" (respectively).
By default, the rename appends .drbdlinks to the name, but this can be overridden in the configuration file.
The "list" mode just show the list of links, with each line showing the link, destination, and a 0/1 flag for bindMount status. This may be useful for user scripts without having to parse the configuration.
An init script is included which runs "stop" before heartbeat starts, and after heartbeat stops. This is done to try to ensure that when the shared partition isn't mounted, the links are in their normal state.
drbdlinks has several options, using either short or long variants.
Here are a few examples of how drbdlinks can be used.
The most straight-forward, and default, method for starting drbdlinks:
To use a suffix different from the default when linking to a file or directory, the -s option can be used, specifying the desired string:
would rename the file-system name to "name.orig".
Increase the verbosity to assist in debugging:
Use an alternate configuration file, possibly from with a DRBD mounted file-system:
This would use the specified configuration file, found on our DRBD device mounted on /shared1. This would allow us to easily keep drbdlinks configurations tied to a specific set of data on a DRBD disk in an active/active sort of HA configuration.
This manual page was written by Cyril Bouthors <firstname.lastname@example.org>, for the Debian project (but may be used by others). Sean Reifschneider modified it for status and monitor arguments, and included it in the base drbdlinks release. Mike Loseke <email@example.com> added the sections on options and examples.