The guide is constantly being updated. This guide assumes, throughout, that you are using DRBD version 8. If you are using a pre Please use the drbd-user mailing list to submit comments. Recent changes is an overview of changes in DRBD 8.
|Published (Last):||17 January 2004|
|PDF File Size:||17.9 Mb|
|ePub File Size:||16.43 Mb|
|Price:||Free* [*Free Regsitration Required]|
The file format was designed as to allow to have a verbatim copy of the file on both nodes of the cluster. It is highly recommended to do so in order to keep your configuration manageable.
In this example, there is a single DRBD resource called r0 which uses protocol C for the connection between its devices. The IP addresses are used to specify the networking interfaces to be used. There may be multiple resource sections in a single drbd. The braces enclose the parameters. A special case are Boolean parameters which consist only of the identifier. Some parameter values have default units which might be overruled by K, M or G. Subsequent characters are ignored until the end of the line.
Everything enclosed by the braces is skipped. Currently only minor-count, dialog-refresh, disable-ip-verification and usage-count are allowed here. You may only have one global section, preferably as the first section.
The common section might have a startup, a syncer, a handlers, a net and a disk section. Each resource section needs to have two or more on host sections and may have a startup, a syncer, a handlers, a net and a disk section. Required parameter in this section: protocol. Or you may list more than two such sections. Required parameters in this section: device, disk, address, meta-disk, flexible-meta-disk.
Required parameters in this section: device and address. This section is very similar to the on section. The difference to the on section is that the matching of the host sections to machines is done by the IP-address instead of the node name. Required parameters in this section: device, disk, meta-disk, flexible-meta-disk, all of which may be inherited from the resource section, in which case you may shorten this section down to just the address identifier. Please refer to drbdsetup 8 for detailed description of the parameters.
Optional parameters: on-io-error, size, fencing, use-bmbv, no-disk-barrier, no-disk-flushes, no-disk-drain, no-md-flushes, max-bio-bvecs, disk-timeout. Optional parameters: wfc-timeout, degr-wfc-timeout, outdated-wfc-timeout, wait-after-sb, stacked-timeouts and become-primary-on. Optional parameters: rate, after, al-extents, use-rle, cpu-mask, verify-alg, csums-alg, c-plan-ahead, c-fill-target, c-delay-target, c-max-rate, c-min-rate and on-no-data-accessible.
Optional parameters: pri-on-incon-degr, pri-lost-after-sb, pri-lost, fence-peer formerly oudate-peer , local-io-error, initial-split-brain, split-brain, before-resync-target, after-resync-target. Please note that not all of these might be set for all handlers, and that some values might not be useable for a floating definition.
Use minor-count if you want to define massively more resources later without reloading the DRBD kernel module. Per default the module loads with 11 more resources than you have currently in your config but at least The user dialog redraws the second count every time seconds or does no redraws if time is 0. The default value is 1. You can disable the IP verification with this option.
The most convenient way to do so is to set this option to yes. Valid options are: yes, no and ask. Valid protocol specifiers are A, B, and C. Protocol B: write IO is reported as completed, if it has reached local disk and remote buffer cache. Protocol C: write IO is reported as completed, if it has reached both local and remote disk.
You must use this device with your application file system and you must not use the low level block device which is specified with the disk parameter. One can ether omit the name or minor and the minor number. Never access such a device while DRBD is running on top of it. This also holds true for dumpe2fs 8 and similar commands. AF must be one of ipv4, ipv6, ssocks or sdp for compatibility reasons sci is an alias for ssocks.
It may be omited for IPv4 addresses. The actual IPv6 address that follows the ipv6 keyword must be placed inside brackets: ipv6 [fdabcd] Two different DRBD resources may not use the same addr:port combination on the same node. You must not use [index] with internal. Note: Regardless of whether you use the meta-disk or the flexible-meta-disk keyword, it will always be of the size needed for the remaining storage size. You can use a single block device to store meta-data of multiple DRBD devices.
In this case the meta-disk would need to be at least MB in size. With the flexible-meta-disk keyword you specify a block device as meta-data storage. You usually use this with LVM, which allows you to have many variable sized block devices. Round this number to the next 4kb boundary up and you have the exact size. Valid fencing policies are: This is the default policy. No fencing actions are taken. This is done by calling the fence-peer handler. In case it cannot reach the peer it should stonith the peer.
IO is resumed as soon as the situation is resolved. In case your handler fails, you can resume IO with the resume-io command. At the time of writing the only known drivers which have such a function are: md software raid driver , dm device mapper - LVM and DRBD itself. Use this option only if you know what you are doing.
DRBD will use the first method that is supported by the backing storage device and that is not disabled by the user. When selecting the method you should not only base your decision on the measurable performance. In case your backing storage device has a volatile write cache plain disks, RAID of plain disks you should use one of the first two.
In case your backing storage device has battery-backed write cache you may go with option 3. Do not use no-disk-drain. Unfortunately device mapper LVM might not support barriers.
The use of this method can be disabled by the no-disk-barrier option. Note: Since Linux The use of this method can be disabled using the no-disk-flushes option. This was the only implementation before 8. See the notes on no-disk-flushes. The best workaround is to proper align the partition within the VM E. This costs KiB of storage. Unfortunately the default of most Linux partitioning tools is to start the first partition at an odd number The default value of max-bio-bvecs is 0, which means that there is no user imposed limitation.
The disk state advances to diskless, as soon as the backing block device has finished all IO requests. The default value of is 0, which means that no timeout is enforced. The default unit is ms. This option is available since 8.
The default value is 0, i. You can specify smaller or larger values. Larger values are appropriate for reasonable write throughput with protocol A over high latency networks.
Values below 32K do not make sense. Since 8. Usually this should be left at its default. Setting the size value to 0 means that the kernel should autotune this.
This must be lower than connect-int and ping-int. With this option you can set the time between two retries. The default value is 10 seconds, the unit is 1 second. The default is 10 seconds, the unit is 1 second.
The default value is ms, the default unit are tenths of a second. To avoid possible distributed deadlocks on congestion, this setting is used as a throttle threshold rather than a hard limit. Once more than max-buffers pages are in use, further allocation from this pool is throttled.
You want to increase max-buffers if you cannot saturate the IO backend on the receiving side. To disable this feature, you should explicitly set it to 0; defaults may change between versions.
If you set this smaller than 10, you might decrease your performance. You only should use this option if you use a shared storage file system on top of DRBD. If you use this option with any other file system, you are going to crash your nodes and to corrupt your data! When the number of pending write requests on the standby secondary node exceeds the unplug-watermark, we trigger the request processing of our backing storage device.
The DRBD User’s Guide