DRBDのデフォルトパラメータ

DRBDはいろいろなパラメータを設定できます。パラメータに関連してよく質問をいただくものに「このパラメータの初期値は何ですか?』というのがあります。例えば「disk-timeoutの初期値は幾つでしょう?」というような質問です。
DRBDの設定値はdrbd.confのオンラインマニュアルやWebサイトを調べるとわかります。先ほどの「disk-timeout」について調べると;

disk-timeout

DRBD デバイスのデータを格納する下位レベルデバイスが、指定した disk-timeout 以内で I/O リクエストを完了しない場合、DRBD はこれを障害とみなす。下位デバイスは切り離され、デバイスのディスク状態はディスクレス状態になる。DRBD が 1 台以上の対向ノードに接続したとき、失敗したリクエストはそのうちの 1 台に伝えられる。
<<途中省略>>
disk-timeout のデフォルト値は 0 であり、無限のタイムアウトを意味する。タイムアウトは 0.1 秒単位で指定する。このオプションは DRBD 8.3.12. から有効である。

とあるので、デフォルト値が0であることが判ります。また、0.1秒単位で指定するという記述から、30を設定するとタイムアウト値は3秒になります。

このように1つ1つの値を確認するのは面倒なので、デフォルト値の一覧が欲しくなると思います。マニュアルには一覧がありませんが、DRBDの設定コマンドdrbdsetupで値を表示することができます。

# drbdsetup show --show-defaults 
resource "r0" {
    options {
        cpu-mask        	""; # default
        on-no-data-accessible	io-error; # default
        auto-promote    	yes; # default
        peer-ack-window 	4096s; # bytes, default
        peer-ack-delay  	100; # milliseconds, default
        twopc-timeout   	300; # 1/10 seconds, default
        twopc-retry-timeout	1; # 1/10 seconds, default
        auto-promote-timeout	20; # 1/10 seconds, default
        max-io-depth    	8000; # default
        quorum          	off; # default
        on-no-quorum    	suspend-io; # default
        quorum-minimum-redundancy	off; # default
        on-suspended-primary-outdated	disconnect; # default
    }
 ・・・・・
以下省略

このようにDRBDの設定パラメータが全て表示され、# defaultと書かれているのがDRBDとしての初期値になります。先ほどのdisk-timeoutについては次のように調べることができます。

# drbdsetup show --show-defaults | grep disk-timeout
                disk-timeout    	0; # 1/10 seconds, default

drbdsetupで表示された結果をgrepでフィルターして、disk-timeoutを取り出しています。コマンドでの結果でもデフォルト値が0で単位が1/10 secondsであることが確認できました。