NAME
drbd.conf - DRBD デ バ イ ス の 設 定 フ ァ イ ル
INTRODUCTION
/etc/drbd.conf フ ァ イ ル は drbdadm コ マ ン ド か ら 読 み 込 ま れ る 。 本 フ ァ イ ル の 形 式 は 、 ク ラ ス タ を 構 成 す る 2 つ の ノ ー ド 間 で そ の ま ま コ ピ ー し て も 問 題 が な い よ う に デ ザ イ ン さ れ て い る 。 設 定 を 管 理 し や す く す る た め 、 設 定 フ ァ イ ル を そ の ま ま コ ピ ー す る こ と を 強 く 推 奨 す る 。 /etc/drbd.conf フ ァ イ ル は 、 ク ラ ス タ を 構 成 す る 2 つ の ノ ー ド で 同 じ 内 容 で な け れ ば な ら な い 。 /etc/drbd.conf へ の 変 更 は た だ ち に 反 映 さ れ る も の で は な い 。 通 例 、 メ イ ン 設 定 フ ァ イ ル は 2 つ の イ ン ク ル ー ド ス テ ー ト メ ン ト が 含 ま れ て い る 。 1 つ 目 は /etc/drbd.d/global_common.conf で あ り 、 2 つ 目 は .res の 付 い た す べ て の フ ァ イ ル の サ フ ィ ッ ク ス で あ る 。
resource r0 {
net { |
||||
protocol C; | ||||
cram-hmac-alg sha1; | ||||
shared-secret "FooFunFactory"; | ||||
} |
||||
disk { |
||||
resync-rate 10M; | ||||
} |
||||
on alice { |
||||
volume 0 { | ||||
device minor 1; | ||||
disk /dev/sda7; | ||||
meta-disk internal; | ||||
} | ||||
address 10.1.1.31:7789; | ||||
} |
||||
on bob { |
||||
volume 0 { | ||||
device minor 1; | ||||
disk /dev/sda7; | ||||
meta-disk internal; | ||||
} | ||||
address 10.1.1.32:7789; | ||||
} } 上 の 例 は r0 と い う 名 前 の 1 つ の DRBD リ ソ ー ス を 設 定 し て い る 。 ノ ー ド 間 の 通 信 プ ロ ト コ ル は C で あ る 。 ホ ス ト alice で は 1 つ の ボ リ ュ ー ム 含 ん で い て 、 /dev/drbd1 を ア プ リ ケ ー シ ョ ン 用 の デ バ イ ス と し て 使 用 し 、 /dev/sda7 を デ ー タ 用 の 下 位 デ バ イ ス と し て い る 。 IP ア ド レ ス に は 2 ノ ー ド 間 の 通 信 に 使 う ネ ッ ト ワ ー ク イ ン タ フ ェ ー ス の IP ア ド レ ス を 指 定 し て い る 。 DRBD の 再 同 期 に は 10 メ ガ バ イ ト /秒 の 帯 域 幅 を 使 う こ と が で き る 。 こ の resync-rate ス テ ー ト メ ン ト は ボ リ ュ ー ム 0 に 対 し て 有 効 だ が 、 追 加 の ボ リ ュ ー ム に も 有 効 で あ る 。 こ の 例 で は 各 ボ リ ュ ー ム に 10MB/秒 フ ル で 指 定 し て い る 。 |
1つ の drbd.conf に 複 数 の リ ソ ー ス セ ク シ ョ ン を 書 く こ と も で き る 。 他 の 設 定 例 に つ い て は DRBD User's Guide [1] を 参 照
FILE FORMAT
本 フ ァ イ ル は セ ク シ ョ ン と パ ラ メ ー タ で 構 成 さ れ る 。 各 セ ク シ ョ ン は キ ー ワ ー ド で 始 ま り 、 任 意 指 定 の パ ラ メ ー タ 、 開 き 中 括 弧 (“{”) で 始 ま る 。 閉 じ 中 括 弧 (“}”) で セ ク シ ョ ン が 終 わ る 。 中 括 弧 は パ ラ メ ー タ を 囲 む の に も 使 わ れ る 。
section
[name] { parameter value; [...] } パ ラ メ
ー タ 名 と 値 の
間 に ホ ワ イ ト
ス ペ ー ス が 必
要 で あ る 。 パ
ラ メ ー タ 名 の
後 ろ の 文 字 列
は パ ラ メ ー タ
に 対 す る 値 と
見 な さ れ る 。
ブ ー ル パ ラ メ
ー タ は 特 別 な
パ ラ メ ー タ で
、 パ ラ メ ー タ
名 だ け で 構 成
さ れ る 。 パ ラ
メ ー タ の 最 後
に セ ミ コ ロ ン
(“;”) が 必 要 で
あ る 。 い く つ
か の パ ラ メ ー
タ 値 は デ フ ォ
ル ト の 単 位 を
持 つ が 、 K 、 M 、
ま た は G を 明 示
的 に 指 定 す る
こ と に よ っ て
単 位 を 変 え ら
れ る 。 こ れ ら
の 単 位 は コ ン
ピ ュ ー タ で お
な じ み の 方 法
で 定 義 さ れ る
(K=2^10=1024, M=1024K, G=1024M)。 設 定
フ ァ イ ル に コ
メ ン ト を 記 述
で き る 。 コ メ
ン ト 行 は ハ ッ
シ ュ 記 号 (“#”)
で 始 ま ら な け
れ ば な ら な い
。 こ の 文 字 以
降 行 末 ま で の
文 字 が コ メ ン
ト と 見 な さ れ
る 。 セ ク シ ョ
ン
skip こ の セ ク シ
ョ ン 内 の テ キ
ス ト は 、 複 数
行 に わ た っ て
す べ て コ メ ン
ト と 見 な さ れ
る 。 キ ー ワ ー
ド の skip と 開 き
中 括 弧 (“{”) の
間 に あ る 文 字
は 無 視 さ れ る
。 中 括 弧 で 囲
ま れ た す べ て
が 無 視 さ れ る
。 何 か 'resource [name] {...}'
セ ク シ ョ ン を
コ メ ン ト ア ウ
ト し た い と き
、 'skip' を 前 に 置
け ば よ い の で
便 利 で あ る
。
global い く つ か の 全 般 的 な パ ラ メ ー タ を 記 述 す る 。 現 在 minor-count, dialog-refresh, disable-ip-verification, usage-count が 許 可 さ れ て い る 。 global セ ク シ ョ ン は 1 回 だ け 記 述 で き 、 設 定 フ ァ イ ル の 先 頭 に 書 く の が 望 ま し い 。
common
common セ ク シ ョ ン に 記 述 し た パ ラ メ ー タ は す べ て の リ ソ ー ス に 継 承 さ れ る 。 こ の セ ク シ ョ ン に は 、 startup, options, handlers, net, disk セ ク シ ョ ン が あ る 。
resource name
DRBD リ ソ ー ス を 定 義 す る セ ク シ ョ ン で あ る 。 各 リ ソ ー ス セ ク シ ョ ン は 、 2 つ (ま た は そ れ 以 上 ) の on host セ ク シ ョ ン を 持 つ 必 要 が あ り 、 必 要 に 応 じ て startup, options, handlers, net, disk セ ク シ ョ ン を 書 く こ と が で き る 。 volume セ ク シ ョ ン を 含 ま せ る こ と も で き る 。
on host-name こ の セ ク シ ョ ン を 取 り 囲 む resource セ ク シ ョ ン の 中 の DRBD デ バ イ ス の 設 定 を 指 定 す る 。 host-name は 必 須 で 、 各 ノ ー ド の Linux ホ ス ト 名 (uname -n) で な け れ ば な ら な い 。 複 数 の ホ ス ト 名 を 指 定 し て も 構 わ な い が 、 こ の 場 合 、 そ れ ぞ れ の ホ ス ト は 同 じ 設 定 で な け れ ば な ら な い 。 た だ し 、 IP ア ド レ ス に 関 し て は 、 複 数 の ホ ス ト の 間 で 変 更 す る 必 要 が あ る 。 も し く は 、 こ の セ ク シ ョ ン を 複 数 指 定 で き る 。
resource r1 { | ||||
protocol C; | ||||
device minor 1; | ||||
meta-disk internal; | ||||
on alice bob { | ||||
address 10.2.2.100:7801; | ||||
disk /dev/mapper/some-san; | ||||
} | ||||
on charlie { | ||||
address 10.2.2.101:7801; | ||||
disk /dev/mapper/other-san; | ||||
} | ||||
on daisy { | ||||
address 10.2.2.103:7801; | ||||
disk /dev/mapper/other-san-as-seen-from-daisy; | ||||
} | ||||
} |
floating セ ク シ ョ ン の キ ー ワ ー ド も 参 照 す る こ と 。 こ の セ ク シ ョ ン で の 必 要 な ス テ ー ト メ ン ト は address と volume で あ る 。 上 位 互 換 性 と 利 便 性 の た め 、 直 接 ホ ス ト セ ク シ ョ ン に 1 つ の ボ リ ュ ー ム の ス テ ー ト メ ン ト を 埋 め 込 む こ と が 有 効 で あ る 。
volume vnr コ ネ ク シ ョ ン の 範 囲 で ボ リ ュ ー ム を 定 義 す る 。 別 の ホ ス ト で は 、 レ プ リ ケ ー ト さ れ た ボ リ ュ ー ム の マ イ ナ ー 番 号 が 異 な っ て い る 事 が あ る た め 、 ボ リ ュ ー ム 番 号 (vnr) は こ れ ら を 結 び つ け る 。 こ の セ ク シ ョ ン で 必 要 な パ ラ メ ー タ は device, disk, meta-disk で あ る 。
stacked-on-top-of resource
3 ま た は 4 ノ ー ド 構 成 の と き の ス タ ッ ク し た DRBD リ ソ ー ス (上 位 リ ソ ー ス )を 指 定 す る と き に 、 on セ ク シ ョ ン の 代 わ り に stacked-on-top-of を 指 定 す る 。 こ の セ ク シ ョ ン に は device, address が 必 須 で あ る 。
floating AF addr:port こ の セ ク シ ョ ン を 取 り 囲 む resource セ ク シ ョ ン の 中 の DRBD デ バ イ ス の 設 定 を 指 定 す る 。 こ の セ ク シ ョ ン は 、 on セ ク シ ョ ン と 非 常 に 類 似 性 が あ る 。 on セ ク シ ョ ン と の 違 い は 、 ホ ス ト 名 で は な く IP ア ド レ ス で ホ ス ト 名 を 照 合 す る こ と で あ る 。 こ の セ ク シ ョ ン に は 、 device, disk, meta-disk が 必 要 で あ る 。 こ れ ら の パ ラ メ ー タ を resource セ ク シ ョ ン に 記 述 す る と 、 こ の セ ク シ ョ ン は こ れ ら の 値 を 継 承 で き る 。 す べ て を 継 承 す る 場 合 、 IP ア ド レ ス を 指 定 す る だ け で よ い 。
resource r2 {
protocol C; | ||||
device minor 2; | ||||
disk /dev/sda7; | ||||
meta-disk internal; | ||||
# short form, device, disk and meta-disk inherited | ||||
floating 10.1.1.31:7802; | ||||
# longer form, only device inherited | ||||
floating 10.1.1.32:7802 { | ||||
disk /dev/sdb; | ||||
meta-disk /dev/sdc8; | ||||
} | ||||
} |
disk こ の セ ク シ ョ ン は 、 下 位 ス ト レ ー ジ に 対 す る DRBD の 取 り 扱 い を チ ュ ー ニ ン グ す る パ ラ メ ー タ で 構 成 さ れ る 。 詳 細 は 次 の ド キ ュ メ ン ト を 参 照 : drbdsetup(8) 。 指 定 で き る パ ラ メ ー タ は 次 の と お り : on-io-error, size, fencing, disk-barrier, disk-flushes, disk-drain, md-flushes, max-bio-bvecs, resync-rate, resync-after, al-extents, al-updates, c-plan-ahead, c-fill-target, c-delay-target, c-max-rate, c-min-rate, disk-timeout, discard-zeroes-if-aligned, rs-discard-granularity, read-balancing.
net こ の セ ク シ ョ ン は 、 DRBD の プ ロ パ テ ィ の 取 り 扱 い を チ ュ ー ニ ン グ す る パ ラ メ ー タ で 構 成 さ れ る 。 詳 細 は 次 の ド キ ュ メ ン ト を 参 照 : drbdsetup(8) 。 指 定 で き る パ ラ メ ー タ は 次 の と お り : protocol, sndbuf-size, rcvbuf-size, timeout, connect-int, ping-int, ping-timeout, max-buffers, max-epoch-size, ko-count, allow-two-primaries, cram-hmac-alg, shared-secret, after-sb-0pri, after-sb-1pri, after-sb-2pri, data-integrity-alg, no-tcp-cork, on-congestion, congestion-fill, congestion-extents, verify-alg, use-rle, csums-alg, socket-check-timeout.
startup こ の セ ク シ ョ ン は 、 DRBD の プ ロ パ テ ィ の 取 り 扱 い を チ ュ ー ニ ン グ す る パ ラ メ ー タ で 構 成 さ れ る 。 詳 細 は 次 の ド キ ュ メ ン ト を 参 照 : drbdsetup(8) 。 指 定 で き る パ ラ メ ー タ は 次 の と お り : wfc-timeout, degr-wfc-timeout, outdated-wfc-timeout, wait-after-sb, stacked-timeouts and become-primary-on.
options こ の セ ク シ ョ ン は リ ソ ー ス オ ブ ジ ェ ク ト の 取 り 扱 い を チ ュ ー ニ ン グ す る パ ラ メ ー タ で 構 成 さ れ る 。 詳 細 は 次 の ド キ ュ メ ン ト を 参 照 : drbdsetup(8) 。 指 定 で き る パ ラ メ ー タ は 次 の と お り : cpu-mask, and on-no-data-accessible.
handlers こ の セ ク シ ョ ン で は 、 特 定 の イ ベ ン ト へ に 応 答 し て DRBD に よ っ て 起 動 さ れ る ( 実 行 可 能 な ) ハ ン ド ラ を 指 定 で き る 。 指 定 で き る パ ラ メ ー タ は 次 の と お り : 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. 環 境 変 数 が イ ン タ フ ェ ー ス と な る :
• DRBD_RESOURCE は リ ソ ー ス 名 で あ る 。
• DRBD_MINOR は DRBD デ バ イ ス の 10 進 法 の マ イ ナ ー 番 号 で あ る 。
• DRBD_CONF は プ ラ イ マ リ 設 定 フ ァ イ ル へ の 入 り 口 で あ る 。 設 定 を 複 数 フ ァ イ ル に 分 割 し た 場 合 (例 え ば /etc/drbd.conf.d/ な ど ) に は 、 あ ま り 役 に た た な い 。
• DRBD_PEER_AF , DRBD_PEER_ADDRESS , DRBD_PEERS は そ れ ぞ れ 、 ア ド レ ス フ ァ ミ リ (ipv6 な ど )、 対 向 ホ ス ト の ア ド レ ス 、 対 向 ホ ス ト の ホ ス ト 名 と な る 。
DRBD_PEER は 推 奨 し な い 。 こ れ ら の 設 定 が す べ て の ハ ン ド ラ に 設 定 さ れ る わ け で は な い 。 い く つ か の 値 は floating 設 定 で は 無 効 に な る 。 パ ラ メ ー タ
minor-count count
count に は 1 か ら 1048575 の 値 を 指 定 で き る 。
Minor-count は DRBD の サ イ ジ ン グ た め の 手 が か り で あ る 。 こ れ は 様 々 な メ モ リ プ ー ル を 適 正 サ イ ズ に す る の に 役 立 つ 。 実 際 に 使 っ て い る マ イ ナ ー 番 号 よ り も 大 き な 数 を 順 に 指 定 し な け れ ば い け な い 。 デ フ ォ ル ト で は 、 現 在 定 義 さ れ て い る リ ソ ー ス の 数 に 加 え て さ ら に 11 個 の リ ソ ー ス を 定 義 で き る 。 た だ し 最 低 で も 32 個 は 定 義 で き る 。
dialog-refresh time
time は 0 ま た は 正 の 数 を 指 定 す る 。 ユ ー ザ ダ イ ア ロ グ は time 秒 ご と に 秒 を 作 画 す る (time が 0 だ と 再 作 画 し な い )。 デ フ ォ ル ト 値 は 1 で あ る 。
disable-ip-verification 何 ら か の 理 由 で drbdadm が ip ま た は ifconfig コ マ ン ド で 正 常 さ を 確 認 で き な い 場 合 disable-ip-verification を 指 定 す る 。 こ の オ プ シ ョ ン を 指 定 す る こ と に よ っ て 、 IP ア ド レ ス を 検 証 し な い よ う に で き る 。
udev-always-use-vnr
udev が drbdadm に デ バ イ ス 関 連 の シ ン ボ リ ッ ク リ ン ク の リ ス ト を 要 求 す る と 、 drbdadm は 、 リ ソ ー ス に 明 示 的 な volume VNR { } 定 義 が あ る か 、 暗 黙 的 な ボ リ ュ ー ム 番 号 0 を 持 つ 単 一 の ボ リ ュ ー ム し か な い か に よ っ て 、 異 な る 命 名 規 則 で シ ン ボ リ ッ ク リ ン ク を 提 示 す る :
#
implicit single volume without "volume 0 {}" block
DEVICE=drbd<minor>
SYMLINK_BY_RES=drbd/by-res/<resource-name>
#
explicit volume definition: volume VNR { }
DEVICE=drbd<minor>
SYMLINK_BY_RES=drbd/by-res/<resource-name>/VNR
global セ ク シ ョ ン で こ の パ ラ メ ー タ を 定 義 す る と 、 drbdadm は 常 に .../VNR の 部 分 を 追 加 し 、 ボ リ ュ ー ム 定 義 が 暗 黙 的 で あ る か 明 示 的 で あ る か を 気 に し な い 。 過 去 と の 互 換 性 の た め に 、 こ れ は デ フ ォ ル ト で は 無 効 に な っ て い る が 、 有 効 に す る こ と を 推 奨 す る 。
usage-count val
DRBD の 利 用 者 統 計 [2] に 参 加 す る 。 最 も 簡 単 な 方 法 は 、 こ の オ プ シ ョ ン を yes に 指 定 す る 。 指 定 で き る 値 は yes, no, ask で あ る 。
protocol prot-id
DRBD の TCP/IP の 通 信 の 際 に 使 わ れ る プ ロ ト コ ル を 指 定 す る 。 指 定 で き る プ ロ ト コ ル は A, B, C で あ る 。 プ ロ ト コ ル A: ロ ー カ ル デ ィ ス ク と ロ ー カ ル TCP 送 信 バ ッ フ ァ に デ ー タ を 書 き 込 ん だ ら デ ィ ス ク へ の 書 き 込 み が 完 了 し た と 判 断 す る 。 プ ロ ト コ ル B: ロ ー カ ル デ ィ ス ク と リ モ ー ト バ ッ フ ァ キ ャ ッ シ ュ に デ ー タ を 書 き 込 ん だ ら デ ィ ス ク へ の 書 き 込 み が 完 了 し た と 判 断 す る 。 プ ロ ト コ ル C: ロ ー カ ル デ ィ ス ク と リ モ ー ト デ ィ ス ク の 両 方 に デ ー タ を 書 き 込 ん だ ら デ ィ ス ク へ の 書 き 込 み が 完 了 し た と 判 断 す る 。
device name minor nr 定 義 し て い る DRBD リ ソ ー ス に 対 応 す る ブ ロ ッ ク デ バ イ ス 名 を 指 定 す る 。 ア プ リ ケ ー シ ョ ン で は 、 こ こ で 指 定 す る 名 前 を デ バ イ ス 名 と し て 指 定 す る ( フ ァ イ ル シ ス テ ム と し て ) 。 逆 に 、 disk に 指 定 し た デ バ イ ス 名 を 決 し て 指 定 し て は な ら な い 。
name, minor, minor number は 省 略 す る 事 が で き る 。 name を 省 略 す る と 、 デ フ ォ ル ト の /dev/drbdminor が 使 わ れ る 。
udev は 自 動 的 に /dev/drbd/by-res と /dev/drbd/by-disk の 中 の シ ン ボ リ ッ ク リ ン ク を 作 成 す る 。
disk name
DRBD は こ の ブ ロ ッ ク デ バ イ ス に 実 際 に デ ー タ の 読 み 書 き を 行 う 。 DRBD 動 作 中 は 、 こ の デ バ イ ス に 絶 対 に 別 の 方 法 で ア ク セ ス し て は な ら な い 。 こ の 禁 止 事 項 に は 、 次 の コ マ ン ド や そ の 他 の 類 似 コ マ ン ド も 含 ま れ る : dumpe2fs(8)。
address AF addr:port そ れ ぞ れ が 各 対 向 デ バ イ ス か ら の 接 続 を 待 ち 受 け る た め に 、 デ バ イ ス ご と に 全 て の リ ソ ー ス に IP ア ド レ ス が 必 要 で あ る 。 AF は ipv4, ipv6, ssocks or sdp (互 換 性 の た め sci は ssocks へ の エ イ リ ア ス に な っ て い る ) の な か か ら 選 択 さ れ る 。 IPv4 の 場 合 、 こ れ を 省 略 で き る 。 IPv6 を 使 う 場 合 は 、 ipv6 の キ ー ワ ー ド に 続 け て 角 括 弧 の 中 に 記 載 す る 。 例 : ipv6 [fd01:2345:6789:abcd::1]:7800。 各 DRBD リ ソ ー ス は 、 ノ ー ド の パ ー ト ナ ー デ バ イ ス と 接 続 す る た め に TCP port が 必 要 で あ る 。 2 つ の 別 の DRBD リ ソ ー ス が 同 じ addr:port の 組 み 合 わ せ を 同 一 ノ ー ド で 使 用 す る こ と は で き な い
meta-disk
internal,
meta-disk device,
meta-disk device [index]
内 部 (internal) を 指 定
す る と 、 下 位
デ バ イ ス の 最
後 の 部 分 に メ
タ デ ー タ が 作
ら れ る 。 メ タ
デ ー タ の サ イ
ズ は デ バ イ ス
の サ イ ズ か ら
計 算 さ れ る
。
device が 指 定 さ れ る と 、 index が あ る 場 合 で も な い 場 合 で も 、 DRBD は そ の デ バ イ ス に メ タ デ ー タ を 保 存 す る 。 index が な い 場 合 、 メ タ デ ー タ の サ イ ズ は デ ー タ デ バ イ ス の サ イ ズ か ら 決 定 さ れ る 。 こ の キ ー ワ ー ド は 通 常 LVM と 組 み 合 わ せ て 使 用 さ れ 、 様 々 な サ イ ズ の ブ ロ ッ ク デ バ イ ス を 扱 う と き に 使 用 す る 。 メ タ デ ー タ の サ イ ズ は 36KB + 下 位 デ バ イ ス の サ イ ズ / 32K で あ り 、 4KB 単 位 で 切 り 上 げ る 。 (お お ま か な 目 安 と し て 、 ス ト レ ー ジ サ イ ズ 1GB あ た り 32KB の メ タ デ ー タ 領 域 が 必 要 で 、 こ れ を MB 単 位 に 切 り 上 げ る )。
index が 指 定 さ れ る と 、 各 イ ン デ ッ ク ス 数 は 128MB の メ タ デ ー タ ス ロ ッ ト を 参 照 す る 。 こ れ は 最 大 4TiB ま で 指 定 す る こ と が で き る 。 こ の 方 法 に よ り 複 数 の DBRD デ バ イ ス が 同 一 の メ タ デ ー タ デ バ イ ス を 共 有 で き る よ う に な る 。 例 え ば /dev/sde6[0] と /dev/sde6[1] を 使 用 す る と き 、 /dev/sde6 は 最 低 で も 256MB 以 上 で な け れ ば い け な い 。 ハ ー ド サ イ ズ の 制 限 の た め 、 メ タ デ ィ ス ク の イ ン デ ッ ク ス は 推 奨 さ れ な い 。
on-io-error handler 下 位 デ バ イ ス が I/O エ ラ ー を 上 位 に 伝 え た と き に 実 行 す る handler を 指 定 す る 。
handler に は pass_on, call-local-io-error, detach の い ず れ か を 指 定 で き る 。
pass_on: ノ ー ド は デ ィ ス ク の ス テ ー タ ス を inconsistent(不 整 合 ) に し 、 I/O エ ラ ー を 起 こ し た ブ ロ ッ ク に 対 応 す る ビ ッ ト マ ッ プ に マ ー ク を つ け る 。 そ し て 、 リ モ ー ト の ノ ー ド 上 で 入 出 力 を 再 度 行 う 。
call-local-io-error: ハ ン ド ラ ス ク リ プ ト local-io-error を 呼 び 出 し て 実 行 す る 。
detach: 低 レ ベ ル デ バ イ ス を 切 り 離 し て 、 デ ィ ス ク レ ス モ ー ド で 処 理 を 続 行 す る 。
fencing fencing_policy
fencing は 、 2 つ の ノ ー ド が と も に プ ラ イ マ リ で 切 り 離 さ れ た 状 態 (ス プ リ ッ ト ブ レ イ ン ) に な る 事 を 防 ぐ 手 段 で あ る 。 次 の フ ェ ン シ ン グ ポ リ シ ー を 指 定 で き る :
dont-care デ フ ォ ル ト の 設 定 値 で 、 フ ェ ン シ ン グ の た め の ア ク シ ョ ン を 実 行 し な い 。
resource-only ノ ー ド が 切 り 離 さ れ た プ ラ イ マ リ 状 態 に な る と 、 他 ノ ー ド を 無 効 状 態 に 変 え よ う と す る 。 こ の 動 作 は fence-peer ハ ン ド ラ に よ っ て 行 わ れ る 。 こ の ハ ン ド ラ は 他 ノ ー ド に レ プ リ ケ ー シ ョ ン 用 と は 別 の ネ ッ ト ワ ー ク 経 由 で ア ク セ ス し 、 'drbdadm outdate res' を 実 行 す る こ と を 想 定 し て い る 。
resource-and-stonith ノ ー ド が 切 り 離 さ れ た プ ラ イ マ リ 状 態 に な る と 、 DRBD は す べ て の デ ィ ス ク I/O を 停 止 し て fence-peer ハ ン ド ラ を 呼 び 出 す 。 こ の ハ ン ド ラ に は 、 レ プ リ ケ ー シ ョ ン 用 と は 別 の ネ ッ ト ワ ー ク 経 由 で 他 ノ ー ド に ア ク セ ス し 、 'drbdadm outdate res' を 実 行 す る と い う 機 能 を 想 定 し て い る 。 ハ ン ド ラ が 他 ノ ー ド に 到 達 で き な い 場 合 、 DRBD は STONITH 機 能 を 使 っ て 他 ノ ー ド を 強 制 排 除 す る 。 こ れ ら が 完 了 し た ら 、 デ ィ ス ク I/O を 再 開 す る 。 ハ ン ド ラ が 失 敗 し た 場 合 に は 、 resume-io コ マ ン ド で デ ィ ス ク I/O を 再 開 で き る 。
disk-barrier,
disk-flushes,
disk-drain
DRBD は 下 位 デ バ イ ス に 対 す る 複 数 の デ ィ ス ク 書 き 込 み の 間 の 依 存 関 係 を 指 定 す る た め の 4 種 類 の オ プ シ ョ ン を 用 意 し て い る 。 そ の う ち 、 下 位 デ バ イ ス が サ ポ ー ト し て い て ユ ー ザ が 無 効 に 設 定 し て い な い 最 初 の オ プ シ ョ ン が 使 用 さ れ る 。 デ フ ォ ル ト で は flush メ ソ ッ ド が 使 わ れ る 。
drbd-8.4.2 か ら disk-barrier は 、 linux-2.6.36 (及 び RHEL6 の 2.6.32) 以 降 で の 正 常 動 作 が 確 認 で き な い た め デ フ ォ ル ト で 無 効 に な っ た 。 注 意 : 有 識 者 に よ る 指 示 の も と で の み 使 用 す る こ と 。 手 法 を 選 択 す る に あ た っ て は 、 測 定 可 能 な パ フ ォ ー マ ン ス デ ー タ の み に 頼 る べ き で は な い 。 下 位 デ バ イ ス が 揮 発 性 の 書 き 込 み キ ャ ッ シ ュ し か 持 た な い 場 合 (通 常 の ハ ー ド デ ィ ス ク や 通 常 の ハ ー ド デ ィ ス ク だ け で 構 成 さ れ る RAID な ど )、 最 初 の 2 つ の オ プ シ ョ ン の ど ち ら か を 使 う べ き で あ る 。 下 位 デ バ イ ス に バ ッ テ リ バ ッ ク ア ッ プ 機 能 付 き の 書 き 込 み キ ャ ッ シ ュ が あ る 場 合 に は 、 3 番 目 の オ プ シ ョ ン が 利 用 で き る 。 4番 目 の オ プ シ ョ ン (す べ て を 無 効 に す る 場 合 は "none") は 、 ほ と ん ど の I/O ス タ ッ ク に お い て 危 険 で 、 デ ィ ス ク へ の 書 き 込 み 順 序 が 入 れ 替 わ っ て し ま う 可 能 性 が あ る 。 no-disk-drain を 使 っ て は な ら な い 。 残 念 な こ と に 、 デ バ イ ス マ ッ パ (LVM) は バ リ ア を サ ポ ー ト し て い な い 。
/proc/drbd の "wo:" の 文 字 の 後 ろ に 、 下 位 デ バ イ ス に 対 す る 現 在 の 設 定 が b, f, d, n の 文 字 で 表 示 さ れ る 。 オ プ シ ョ ン は 次 の と お り :
barrier 下 位 デ バ イ ス が バ リ ア (SCSI で は "tagged command queuing"、 SATA で は "native com-mand queuing" と 呼 ば れ る ) を サ ポ ー ト し て い る 場 合 、 こ の オ プ シ ョ ン を 選 択 で き る 。 こ の オ プ シ ョ ン を 有 効 に す る に は disk-barrier オ プ シ ョ ン を yes に す る 。
flush 下 位 デ バ イ ス が デ ィ ス ク フ ラ ッ シ ュ (ベ ン ダ ー は "force unit access" と 呼 ん で い る ) を サ ポ ー ト し て い る 場 合 、 こ の オ プ シ ョ ン を 選 択 で き る 。 こ の オ プ シ ョ ン を 無 効 に す る に は disk-flushes を no に 設 定 す る 。
drain
3 番 目 の 方 法 は 、 単 純 に 、 最 初 の 書 き 込 み は 次 の 書 き 込 み リ ク エ ス ト を 処 理 す る 前 に 吐 き 出 す 、 方 法 で あ る 。 8.0.9 ま で は こ れ が 唯 一 の オ プ シ ョ ン で あ っ た 。
none
4 番 目 の 方 法 は 、 no-disk-drain を 指 定 し 、 下 位 デ バ イ ス へ の 書 き 込 み の 依 存 関 係 を 一 切 指 示 し な い 方 法 で あ る 。 こ れ は ほ と ん ど の I/O ス タ ッ ク に お い て 危 険 で あ り 、 デ ィ ス ク へ の 書 き 込 み 順 序 が 入 れ 替 わ っ て し ま う 可 能 性 が あ る 。 そ う な る と 、 理 論 的 に は デ ー タ 破 損 の 原 因 、 ま た は DRBD プ ロ ト コ ル を 乱 し 、 再 接 続 と 切 断 を 繰 り 返 す よ う な 状 態 に 陥 る 可 能 性 が あ る 。 no-disk-drain を 使 っ て は な ら な い 。
md-flushes メ タ デ ー タ デ バ イ ス へ の ア ク セ ス に あ た っ て バ リ ア や フ ラ ッ シ ュ を 使 用 し な い 。 disk-flushes に つ い て の 説 明 を 参 照 の こ と 。
max-bio-bvecs あ る 特 別 な 環 境 に お い て 、 デ バ イ ス マ ッ パ ー ス タ ッ ク は 、 複 数 の bvec を 持 つ 制 約 に 違 反 す る BIO を merge_bvec( ) 関 数 の 4 番 目 の 引 数 に 設 定 し DRBD に 渡 す 。 例 え ば 、 物 理 デ ィ ス ク → DRBD → LVM → Xen → 誤 っ た パ ー テ ィ シ ョ ン (63) → DomU FS の 場 合 で あ る 。 Dom0 の カ ー ネ ル ロ グ に は 、 "bio would need to, but cannot, be split:" と 記 録 さ れ る 。 最 も 良 い 回 避 方 法 は 、 VM の 内 部 に パ ー テ ィ シ ョ ン を 適 切 に 配 置 す る (例 え ば 、 セ ク タ 1024 か ら 開 始 す る ) こ と で あ る 。 こ れ は 、 ス ト レ ー ジ 領 域 を 480 KiB を 消 費 す る 。 残 念 な が ら 、 ほ と ん ど の Linux パ ー テ ィ シ ョ ン ツ ー ル は 、 奇 数 (63) で パ ー テ ィ シ ョ ン を 開 始 す る 。 そ の た め 、 ほ と ん ど の デ ィ ス ト リ ビ ュ ー シ ョ ン は 、 仮 想 Linux マ シ ン に イ ン ス ト ー ル を 行 う と 、 誤 っ た パ ー テ ィ シ ョ ン で 終 了 し て し ま う 。 第 2 の 回 避 方 法 は 、 BIO あ た り の 最 大 DRBD bvecs (= max-bio-bvecs) を 1 に す る こ と で あ る 。 し か し 、 パ フ ォ ー マ ン ス は 低 下 す る 。
max-bio-bvecs の デ フ ォ ル ト 値 は 0 で 、 こ れ は ユ ー ザ に 制 限 が 無 い こ と を 意 味 す る 。
disk-timeout
DRBD デ バ イ ス が デ ー タ を 格 納 す る 下 位 レ ベ ル デ バ イ ス が 、 指 定 し た disk-timeout 以 内 で I/O リ ク エ ス ト を 完 了 し な い 場 合 、 DRBD は こ れ を 障 害 と み な す 。 下 位 デ バ イ ス は 切 り 離 さ れ 、 デ バ イ ス の デ ィ ス ク 状 態 は デ ィ ス ク レ ス 状 態 に な る 。 DRBD が 1 台 以 上 の 対 向 ノ ー ド に 接 続 し た と き 、 失 敗 し た リ ク エ ス ト は そ の う ち 1 台 に 伝 え ら れ る 。 こ の オ プ シ ョ ン は カ ー ネ ル パ ニ ッ ク を 引 き 起 こ す 可 能 性 が あ り 、 注 意 が 必 要 で あ る 。 リ ク エ ス ト の 「 中 断 」 あ る い は デ ィ ス ク の 強 制 切 り 離 し は 、 完 全 に 下 位 デ バ イ ス を ブ ロ ッ ク ま た は ハ ン ギ ン グ し て 、 リ ク エ ス ト を ま っ た く 処 理 せ ず エ ラ ー も 処 理 し な く な る 。 こ の 状 況 で は ハ ー ド リ セ ッ ト と フ ェ イ ル オ ー バ 以 外 に な す 術 が な い 。 「 中 断 」 す る と 、 基 本 的 に ロ ー カ ル エ ラ ー の 完 了 を 装 い 、 す み や か に サ ー ビ ス の 移 行 を 行 う こ と で 安 全 な 切 り 替 え を 行 う 。 そ れ で も な お 、 影 響 を 受 け る ノ ー ド は "す ぐ " に 再 起 動 さ れ る 必 要 は あ る 。 リ ク エ ス ト を 完 了 す る こ と で 、 上 位 レ イ ヤ ー に 関 連 す る デ ー タ ペ ー ジ を 再 利 用 さ せ る こ と が で き る 。 後 に ロ ー カ ル の 下 位 デ バ イ ス が 「 復 帰 」 す る と 、 デ ィ ス ク か ら 元 の リ ク エ ス ト ペ ー ジ へ の DMA の デ ー タ は 、 う ま く い く と 未 使 用 の ペ ー ジ へ ラ ン ダ ム な デ ー タ を 送 る が 、 多 く の 場 合 そ の 間 に 関 係 の な い デ ー タ に 変 形 し て し ま い 、 様 々 な ダ メ ー ジ の 原 因 に な る 。 つ ま り 遅 延 し た 正 常 な 完 了 は 、 特 に 読 み 込 み リ ク エ ス ト の 場 合 panic() の 原 因 に な る 。 遅 延 し た 「 エ ラ ー 」 完 了 は 、 そ の 都 度 に 通 知 は 行 う が 、 問 題 な い と 考 え て よ い 。
disk-timeout の デ フ ォ ル ト 値 は 0 で あ り 、 無 限 の タ イ ム ア ウ ト を 意 味 す る 。 タ イ ム ア ウ ト は 0.1 秒 単 位 で 指 定 す る 。 こ の オ プ シ ョ ン は DRBD 8.3.12. か ら 利 用 で き る 。
discard-zeroes-if-aligned {yes | no}
Linux の ブ ロ ッ ク デ バ イ ス で discard/trim/unmap の サ ポ ー ト に は い く つ か の 側 面 が あ る 。 discard が 一 般 的 に サ ポ ー ト さ れ て い て も 、 暗 黙 に 失 敗 し た り 、 discard 要 求 を 部 分 的 に 無 視 し た り す る こ と が あ る 。 デ バ イ ス は 、 ま た 、 マ ッ プ さ れ て い な い ブ ロ ッ ク か ら の 読 み 込 み が 、 定 義 済 み の デ ー タ ( 通 常 は ゼ ロ ) 、 未 定 義 の デ ー タ ( お そ ら く 古 い デ ー タ か 、 ゴ ミ ) の ど ち ら を 返 す か 通 知 す る 。 異 な る ノ ー ド で DRBD が discard 特 性 が 異 な る デ バ イ ス に よ っ て 構 成 さ れ て い る 場 合 、 discard は デ ー タ の 不 一 致 ( 古 い デ ー タ ま た は ゴ ミ が 1 つ の バ ッ ク エ ン ド に 残 り 、 別 の バ ッ ク エ ン ド で は ゼ ロ が 残 る ) の 原 因 と な る 。 オ ン ラ イ ン 照 合 は 、 数 多 く の 偽 の 差 異 を 報 告 す る 可 能 性 が あ る 。 た ぶ ん ほ と ん ど の ユ ー ス ケ ー ス ( フ ァ イ ル シ ス テ ム 上 の fstrim) で は 無 害 で あ る が 、 DRBD は そ れ を 持 つ こ と は で き ま せ ん 。 安 全 に 動 作 さ せ る に は 、 ロ ー カ ル の バ ッ ク エ ン ド ( プ ラ イ マ リ 上 ) が "discard_zeroes_data=true" を サ ポ ー ト し て い な い 場 合 、 discard の サ ポ ー ト を 無 効 に す る 必 要 が あ る 。 受 信 側 ( セ カ ン ダ リ ) が マ ッ プ さ れ て い な か っ た 領 域 を 割 り 当 て 、 "discard_zeroes_data = true" を サ ポ ー ト し て い な い 場 合 、 受 信 側 で discard を 明 示 的 に ゼ ロ に 変 換 す る 必 要 が あ る 。
discard を サ ポ ー ト し て い る の に 、 discard_zeroes_data = false を ア ナ ウ ン ス す る デ バ イ ス ( 特 に LVM/DM シ ン プ ロ ビ ジ ョ ニ ン グ ) が あ る 。 DM-thin の 場 合 、 チ ャ ン ク サ イ ズ に 合 わ せ た discard は マ ッ プ さ れ ず 、 マ ッ ピ ン グ さ れ て い な い セ ク タ か ら の 読 み 込 み は ゼ ロ を 返 す 。 た だ し 、 discard 要 求 の ア ラ イ メ ン ト さ れ て い な い 部 分 ヘ ッ ド ま た は テ ー ル 領 域 は 暗 黙 に 無 視 さ れ る 。 整 列 し た フ ル ・ チ ャ ン ク の discard を パ ス し 、 こ れ ら の 整 列 し て い な い 部 分 領 域 を 明 示 的 に ゼ ロ ・ ア ウ ト す る ヘ ル パ ー を 追 加 す る と 、 そ の よ う な デ バ イ ス で は discard_zeroes_data = true を 効 果 的 に 達 成 す る 。
discard-zeroes-if-aligned を yes に 設 定 す る と 、 discard_zeroes_data = false を 通 知 す る バ ッ ク エ ン ド で あ っ て も DRBD は discard を 使 用 し 、 discard_zeroes_data = true を 通 知 す る 。
discard-zeroes-if-aligned を no に 設 定 す る と 、 そ れ ぞ れ の バ ッ ク エ ン ド が discard_zeroes_data = false を ア ナ ウ ン ス す る 場 合 、 DRBD は 常 に 受 信 側 で ゼ ロ ア ウ ト に フ ォ ー ル バ ッ ク し 、 プ ラ イ マ リ 側 で は discard に 関 し て 通 知 し な い 。 私 た ち は 、 discard_zeroes_data 設 定 を 完 全 に 無 視 し て い ま し た 。 確 立 し 、 期 待 さ れ た 動 作 を 壊 さ ず 、 シ ン プ ロ ビ ジ ョ ニ ン グ LV の fstrim が ス ペ ー ス を 解 放 す る 代 わ り に ス ペ ー ス を 使 い 果 た さ な い た め の デ フ ォ ル ト 値 は yes で あ る 。 こ の オ プ シ ョ ン は 8.4.7 か ら 有 効 で あ る 。
--disable-write-same {yes | no} 一 部 の デ ィ ス ク は 、 WRITE_SAME サ ポ ー ト を カ ー ネ ル に 通 知 す る が 、 実 際 に そ の よ う な リ ク エ ス ト を 受 信 す る と 、 I/O エ ラ ー で 失 敗 す る 。 こ れ は 主 に 、 仮 想 化 さ れ た デ ィ ス ク を 使 用 し て い る と き に 発 生 す る 。 特 に 、 こ の 動 作 は VMware の 仮 想 デ ィ ス ク で 観 察 さ れ て い る 。
disable-write-same を yes に 設 定 す る と 、 WRITE_SAME サ ポ ー ト が 手 動 で 無 効 に で き る 。
disable-write-same の デ フ ォ ル ト 値 は no で あ る 。 こ の オ プ シ ョ ン は 8.4.7 か ら 有 効 で あ る 。
read-balancing method 読 み 込 み リ ク エ ス ト の 負 荷 分 散 で 使 用 で き る methods は prefer-local, prefer-remote, round-robin, least-pending, when-congested-remote, 32K-striping, 64K-striping, 128K-striping, 256K-striping, 512K-striping, 1M-striping で あ る 。
read-balancing の デ フ ォ ル ト 値 は prefer-local で あ る 。 こ の オ プ シ ョ ン は 8.4.1 か ら 有 効 で あ る 。
rs-discard-granularity byte
rs-discard-granularity が ゼ ロ 以 外 の 正 の 値 に 設 定 さ れ て い る 場 合 、 DRBD は こ の サ イ ズ で 再 同 期 操 作 を 要 求 す る 。 そ の よ う な ブ ロ ッ ク が 同 期 ソ ー ス ノ ー ド 上 に ゼ ロ バ イ ト し か 含 ま な い 場 合 、 同 期 タ ー ゲ ッ ト ノ ー ド は 、 そ の 領 域 に 対 し て discard/trim/unmap コ マ ン ド を 発 行 す る 。 こ の 値 は 、 下 位 ブ ロ ッ ク デ バ イ ス の discard 粒 度 に よ っ て 制 約 さ れ る 。 rs-discard-granularity が 下 位 ブ ロ ッ ク デ バ イ ス の discard 粒 度 の 乗 数 で な い 場 合 、 DRBD は そ れ を 切 り 上 げ る 。 こ の 機 能 は 、 下 位 ブ ロ ッ ク デ バ イ ス が discard コ マ ン ド の 後 に 、 ゼ ロ を 読 み 戻 す 場 合 に の み ア ク テ ィ ブ に な る 。
rs-discard-granularity の デ フ ォ ル ト 値 は 0 で あ る 。 こ の オ プ シ ョ ン は 8.4.7 か ら 有 効 で あ る 。
sndbuf-size size
size は TCP ソ ケ ッ ト の セ ン ド バ ッ フ ァ で あ る 。 デ フ ォ ル ト 値 は 0 で 自 動 調 整 さ れ る 。 こ れ よ り 小 さ い 値 も 大 き い 値 も 指 定 で き る 。 遅 延 が 大 き い ネ ッ ト ワ ー ク に 対 し て プ ロ ト コ ル A を 指 定 す る 場 合 に 大 き な 値 を 指 定 す る と 、 書 き 込 み ス ル ー プ ッ ト を 向 上 で き る 。 32K よ り 小 さ い 値 は 現 実 的 で は な い 。 8.0.13 か ら 8.2.7 ま で は 、 手 動 で 0 を 設 定 し な い と 自 動 調 整 に な ら な い 。
rcvbuf-size size
size は TCP ソ ケ ッ ト の 受 信 バ ッ フ ァ サ イ ズ で あ る 。 デ フ ォ ル ト 値 は 0 で 自 動 調 整 さ れ る 。 こ れ よ り 小 さ い 値 も 大 き い 値 も 指 定 で き る 。 通 常 は 、 こ の オ プ シ ョ ン は デ フ ォ ル ト 値 の ま ま 運 用 す る 。 size に 0 指 定 す る と 、 カ ー ネ ル が 自 動 的 に 設 定 し た バ ッ フ ァ を 使 う 。
timeout time 対 向 ノ ー ド か ら の 応 答 パ ケ ッ ト が 1/10 の time 倍 の 時 間 以 内 に 返 っ て こ な い 場 合 、 対 向 ノ ー ド が 死 ん だ と 判 断 し て TCP/IP コ ネ ク シ ョ ン を 切 断 す る 。 こ の 値 は connect-int お よ び ping-int よ り も 小 さ く な け れ ば な ら な い 。 デ フ ォ ル ト 値 は 60 で 、 こ れ は 6 秒 に 相 当 す る 。 す な わ ち こ の パ ラ メ ー タ の 単 位 は 0.1 秒 で あ る 。
connect-int time 対 向 ノ ー ド に た だ ち に 接 続 で き な い 場 合 、 DRBD は 接 続 を 繰 り 返 し 試 行 す る 。 こ の パ ラ メ ー タ は 試 行 間 隔 を 指 定 す る 。 デ フ ォ ル ト 値 は 10 で 、 こ の パ ラ メ ー タ の 単 位 は 秒 で あ る 。
ping-int time
DRBD デ バ イ ス 間 の TCP/IP 接 続 が あ り 、 対 向 ノ ー ド か ら time 秒 の 間 に 何 も 通 信 が 行 わ れ な か っ た 場 合 、 DRBD は 死 活 確 認 の た め キ ー プ ア ラ イ ブ パ ケ ッ ト を 生 成 す る 。 デ フ ォ ル ト 値 は 10 で 、 こ の パ ラ メ ー タ の 単 位 は 秒 で あ る 。
ping-timeout time こ の パ ラ メ ー タ で 指 定 し た 時 間 内 に キ ー プ ア ラ イ ブ パ ケ ッ ト に 応 答 し な け れ ば な ら な い 。 応 答 パ ケ ッ ト が 返 っ て こ な い 場 合 、 そ の 対 向 ノ ー ド は 死 ん だ と 判 断 さ れ る 。 デ フ ォ ル ト 値 は 500ms で 、 100ms 単 位 で 指 定 す る 。
max-buffers number 再 同 期 、 オ ン ラ イ ン 照 合 を 行 う 際 に 、 受 信 側 で DRBD マ イ ナ ー デ バ イ ス あ た り に 使 用 す る メ モ リ を 制 限 す る 。 単 位 は PAGE_SIZE で 、 ほ と ん ど の シ ス テ ム で 4KiB で あ る 。 設 定 で き る 最 小 値 は 32 (=128 KiB) で ハ ー ド コ ー ド さ れ て い る 。 こ れ ら バ ッ フ ァ は デ ィ ス ク か ら の 読 み 書 き の 際 に デ ー タ ブ ロ ッ ク を 保 持 す る た め に 使 用 さ れ る 。 輻 輳 時 の デ ッ ド ロ ッ ク を 回 避 す る た め に 、 こ の 設 定 は ハ ー ド 制 限 と い う よ り は 閾 値 と し て 使 用 さ れ る 。 最 大 バ ッ フ ァ ペ ー ジ が 使 用 さ れ る と 、 プ ー ル か ら の そ れ 以 上 の 割 り 当 て が 制 限 さ れ る 。 受 信 側 の I/O バ ッ ク エ ン ド に 余 裕 が な い 場 合 に は 、 max-buffers を 増 や す と よ い 。
ko-count number セ カ ン ダ リ ノ ー ド が 1 回 の 書 き 込 み リ ク エ ス ト に count 回 以 上 失 敗 し た 場 合 、 そ の セ カ ン ダ リ ノ ー ド は ク ラ ス タ か ら 排 除 さ れ る 。 ( つ ま り 、 プ ラ イ マ リ ノ ー ド が 接 続 を い っ た ん 終 了 し 、 再 接 続 す る ) 。 こ の 機 能 を 無 効 に す る に は 、 明 示 的 に 0 に 設 定 す る 必 要 が あ る 。 デ フ ォ ル ト は バ ー ジ ョ ン 間 で 変 更 さ れ て い る 。 8.4 は 7 が デ フ ォ ル ト 値 で あ る 。
max-epoch-size number 書 き 込 み バ リ ア 間 に 処 理 す る デ ー タ ブ ロ ッ ク の 最 大 数 を 指 定 す る 。 10 未 満 の 値 を 指 定 す る と パ フ ォ ー マ ン ス が 低 下 す る こ と が あ る 。
allow-two-primaries こ の オ プ シ ョ ン を 指 定 す る と 、 両 ノ ー ド に プ ラ イ マ リ を 割 り 当 て ら れ る 。 こ の オ プ シ ョ ン は 分 散 共 有 フ ァ イ ル シ ス テ ム を 使 う と き の み 指 定 す る 。 現 在 DRBD が サ ポ ー ト す る フ ァ イ ル シ ス テ ム は OCFS2 と GFS で あ る 。 こ れ ら 以 外 の フ ァ イ ル シ ス テ ム を 使 う と き に こ の オ プ シ ョ ン を 指 定 す る と 、 デ ー タ の 破 損 と ノ ー ド の ダ ウ ン を 引 き 起 こ す 。
unplug-watermark number こ の 設 定 は 、 最 近 の 明 示 的 に ス タ ッ ク プ ラ ギ ン グ を 使 用 す る カ ー ネ ル に は 効 果 が な い (Linux kernel 2.6.39 に は 移 植 さ れ て い る )。 ス タ ン バ イ (セ カ ン ダ リ ) ノ ー ド で 書 き 込 ま れ て い な い 書 き 込 み リ ク エ ス ト 数 が unplug-watermark を 上 回 る と 、 下 位 デ バ イ ス に 対 し て 書 き 込 み リ ク エ ス ト を 送 る 。 ス ト レ ー ジ に よ っ て は 小 さ い 値 で も 良 好 な 結 果 が 得 ら れ る が 、 多 く の デ バ イ ス で は max-buffers と 同 じ 値 を 指 定 す る と き に 最 良 の 結 果 が 得 ら れ る 。 デ フ ォ ル ト 値 は 128 で 、 指 定 で き る 最 小 値 は 16、 最 大 値 は 131072 で あ る 。
cram-hmac-alg 対 向 ノ ー ド の 認 証 を 行 い た い 場 合 、 +HMAC ア ル ゴ リ ズ ム を 指 定 す る 。 対 向 ノ ー ド の 認 証 は 行 う べ き で あ る 。 チ ャ レ ン ジ -レ ス ポ ン ス 方 式 で 対 向 ノ ー ド を 認 証 す る の に 、 HMA CFC ア ル ゴ リ ズ ム が 使 わ れ る 。 /proc/crypto に 記 録 さ れ て い る 任 意 の ダ イ ジ ェ ス ト ア ル ゴ リ ズ ム を 指 定 で き る 。
shared-secret 対 向 ノ ー ド の 認 証 に は 共 有 秘 密 鍵 が 使 用 さ れ 、 64文 字 ま で で 指 定 す る 。 cram-hmac-alg を 指 定 し な い と 対 向 ノ ー ド の 認 証 は 行 わ れ な い 。
after-sb-0pri policy 指 定 で き る ポ リ シ ー は 以 下 の 通 り :
disconnect 自 動 再 同 期 を 行 わ ず 接 続 を 切 断 す る 。
discard-younger-primary ス プ リ ッ ト ブ レ イ ン 発 生 前 に プ ラ イ マ リ で あ っ た ノ ー ド か ら の 再 同 期 を 自 動 的 に 実 行 す る 。
discard-older-primary ス プ リ ッ ト ブ レ イ ン 発 生 時 に プ ラ イ マ リ に な っ た ノ ー ド か ら の 再 同 期 を 自 動 的 に 実 行 す る 。
discard-zero-changes プ リ ッ ト ブ レ イ ン 発 生 後 ど ち ら か 一 方 の ノ ー ド に 書 き 込 み が ま っ た く 行 わ れ な か っ た こ と が 明 白 な 場 合 、 書 き 込 み が 行 わ れ た ノ ー ド か ら 行 わ れ な か っ た ノ ー ド に 対 す る 再 同 期 が 実 行 さ れ る 。 ど ち ら も 書 き 込 ま れ な か っ た 場 合 は 、 DRBD は ラ ン ダ ム な 判 断 に よ っ て 0 ブ ロ ッ ク の 再 同 期 を 実 行 す る 。 両 ノ ー ド に 書 き 込 み が 行 わ れ た 場 合 、 こ の ポ リ シ ー は ノ ー ド の 接 続 を 切 断 す る 。
discard-least-changes ス プ リ ッ ト ブ レ イ ン 発 生 後 、 よ り 多 く の ブ ロ ッ ク を 書 き 込 ん だ ノ ー ド か ら 他 方 に 対 す る 再 同 期 を 実 行 す る 。
discard-node-NODENAME 指 定 し た 名 前 の ノ ー ド に 対 す る 再 同 期 を 実 行 す る 。
after-sb-1pri policy 指 定 で き る ポ リ シ ー は 以 下 の 通 り :
disconnect 自 動 再 同 期 を 行 わ ず 接 続 を 切 断 す る 。
consensus
after-sb-0pri ア ル ゴ リ ズ ム の 結 果 が 現 在 の セ カ ン ダ リ ノ ー ド の デ ー タ を 壊 す こ と に な る 場 合 、 セ カ ン ダ リ ノ ー ド の デ ー タ を 捨 て る 。 そ う で は な い 場 合 は 接 続 を 切 断 す る 。 そ う で は な い 場 合 は 接 続 を 切 断 す る 。
violently-as0p プ ラ イ マ リ の デ ー タ に 大 き な 変 更 が あ る 場 合 で も 、 常 に after-sb-0pri ア ル ゴ リ ズ ム の 判 断 を 採 用 す る 。 こ の ポ リ シ ー は allow-two-primaries オ プ シ ョ ン を 指 定 し た う え で 1 ノ ー ド フ ァ イ ル シ ス テ ム (OCF2 や GFS で は な い ) を 使 用 し 、 か つ 十 分 に 理 解 し て い る 場 合 の み 有 用 で あ る 。 プ ラ イ マ リ ノ ー ド で フ ァ イ ル シ ス テ ム を マ ウ ン ト し て い る 場 合 、 こ の ポ リ シ ー は 危 険 で あ り 、 マ シ ン を 破 壊 す る 可 能 性 が あ る 。
discard-secondary セ カ ン ダ リ 側 の デ ー タ を 捨 て る 。
call-pri-lost-after-sb
after-sb-0pri ア ル ゴ リ ズ ム の 判 断 を 常 に 採 用 す る 。 セ カ ン ダ リ 側 の デ ー タ が 正 し い と 判 断 さ れ た 場 合 に は 、 現 在 の プ ラ イ マ リ 側 で "pri-lost-after-sb" ハ ン ド ラ が 呼 び 出 さ れ る 。
after-sb-2pri policy 指 定 で き る ポ リ シ ー は 以 下 の 通 り :
disconnect 自 動 再 同 期 を 行 わ ず 接 続 を 切 断 す る 。
violently-as0p プ ラ イ マ リ の デ ー タ に 大 き な 変 更 が あ る 場 合 で も 、 常 に after-sb-0pri ア ル ゴ リ ズ ム の 判 断 を 採 用 す る 。 こ の ポ リ シ ー は allow-two-primaries オ プ シ ョ ン を 指 定 し た う え で 1 ノ ー ド フ ァ イ ル シ ス テ ム (OCF2 や GFS で は な い ) を 使 用 し 、 か つ 十 分 に 理 解 し て い る 場 合 の み 有 用 で あ る 。 プ ラ イ マ リ ノ ー ド で フ ァ イ ル シ ス テ ム を マ ウ ン ト し て い る 場 合 、 こ の ポ リ シ ー は 危 険 で あ り 、 マ シ ン を 破 壊 す る 可 能 性 が あ る 。
call-pri-lost-after-sb ど ち ら か 一 方 の マ シ ン で "pri-lost-after-sb" ハ ン ド ラ を 呼 び 出 す 。 こ の プ ロ グ ラ ム に は 、 マ シ ン を リ ブ ー ト し て そ の マ シ ン を セ カ ン ダ リ に す る よ う な 機 能 が 要 求 さ れ る 。
always-asbp 通 常 、 3 番 目 の ノ ー ド が 存 在 し な い こ と が 現 在 の UUID 値 か ら 明 ら か な 場 合 の み 、 ス プ リ ッ ト ブ レ イ ン 発 生 後 の 修 復 ポ リ シ ー だ け が 適 用 さ れ る 。 こ の オ プ シ ョ ン を 指 定 す る と 、 両 ノ ー ド の デ ー タ に 関 連 性 が あ る と し て 、 ス プ リ ッ ト ブ レ イ ン 発 生 後 の ポ リ シ ー が 適 用 さ れ る 。 UUID の 分 析 に よ り 3 番 目 の ノ ー ド の 存 在 が 疑 わ れ る 場 合 に は 、 フ ル 同 期 が 行 わ れ る こ と が あ る 。 (ま た は 、 な ん ら か の 別 の 原 因 に よ っ て 間 違 っ た UUID セ ッ ト で 判 断 し て し ま っ た 場 合 )
rr-conflict policy こ の オ プ シ ョ ン は 、 再 同 期 決 定 の 結 果 が ク ラ ス タ 内 の 現 在 の ロ ー ル 割 り 当 て と 互 換 性 が な い 場 合 を 解 決 す る の に 役 立 つ 。
disconnect 自 動 再 同 期 を 行 わ ず 接 続 を 切 断 す る 。
violently プ ラ イ マ リ ノ ー ド へ の 同 期 が 許 可 さ れ 、 ブ ロ ッ ク デ バ イ ス 上 の デ ー タ が ノ ー ド の 1 つ に 対 し て 安 定 し て い る と い う 前 提 に 反 す 。 危 険 な の で 使 っ て は な ら な い 。
call-pri-lost そ の マ シ ン が セ カ ン ダ リ に 降 格 で き る 場 合 を 除 い て 、 い ず れ か の マ シ ン の pri-lost-after-sb ヘ ル パ ー プ ロ グ ラ ム を 呼 び 出 す 。 ヘ ル パ ー プ ロ グ ラ ム は マ シ ン を 再 起 動 す る こ と が 期 待 さ れ 、 ノ ー ド を セ カ ン ダ リ に す る 。 ど の マ シ ン が ヘ ル パ ー プ ロ グ ラ ム を 実 行 す る か は 、 after-sb-0pri ポ リ シ ー に よ っ て 決 定 さ れ る 。
data-integrity-alg alg ネ ッ ト ワ ー ク 経 由 で 受 け 渡 さ れ る デ ー タ の 整 合 性 を 担 保 す る た め に 、 DRBD は ハ ッ シ ュ 値 を 比 較 す る 機 能 を 備 え て い る 。 通 常 は 、 TCP/IP パ ケ ッ ト 自 体 の ヘ ッ ダ に 含 ま れ る 16 ビ ッ ト チ ェ ッ ク サ ム で 保 証 さ れ る 。 こ の オ プ シ ョ ン 値 に は 、 カ ー ネ ル が サ ポ ー ト す る 任 意 の ダ イ ジ ェ ス ト ア ル ゴ リ ズ ム を 指 定 で き る 。 一 般 的 な カ ー ネ ル の 場 合 、 少 な く と も md5, sha1, crc32c の ど れ か が 利 用 で き る 。 デ フ ォ ル ト で は 、 こ の 機 能 は 無 効 で あ る 。 デ ー タ 整 合 性 に 関 す る 説 明 も 参 照 の こ と 。
tcp-cork
DRBD は 、 TCP ソ ケ ッ ト の TCP_CORK オ プ シ ョ ン を 使 っ て 、 い つ 追 加 デ ー タ を 受 け 取 る か 、 あ る い は 送 信 キ ュ ー の デ ー タ を い つ フ ラ ッ シ ュ す る か の ヒ ン ト を 得 て い る 。 こ の 方 法 が 悪 影 響 を 及 ぼ す ネ ッ ト ワ ー ク ス タ ッ ク が 少 な く と も 存 在 す る 。 し た が っ て 、 こ の オ プ シ ョ ン を 導 入 さ れ た 。 tcp-cork を no に セ ッ ト す る と 、 DRBD に よ る TCP_CORK ソ ケ ッ ト オ プ シ ョ ン の 設 定 を 無 効 に す る 。
on-congestion
congestion_policy,
congestion-fill fill_threshold,
congestion-extents active_extents_threshold
デ フ ォ ル ト で
は 、 TCP 送 信 キ ュ
ー が 一 杯 に な
る と 、 DRBD は 書 き
込 み を ブ ロ ッ
ク す る 。 こ の
こ と は DRBD が TCP で
送 信 で き る デ
ー タ 量 を 越 え
て デ ィ ス ク に
書 き こ も う と
す る ア プ リ ケ
ー シ ョ ン の 処
理 速 度 が 低 下
す る こ と を 意
味 す る 。
DRBD-Proxy を 使 っ て い る 場 合 、 送 信 キ ュ ー が 満 杯 に な る 直 前 に AHEAD/BEAIND モ ー ド に 移 行 す る の が 望 ま し い 。 AHEAD/BEHIND モ ー ド で は 、 DRBD 間 の 通 信 は 切 断 し な い が 、 デ ー タ レ プ リ ケ ー シ ョ ン は 行 わ れ な く な る 。
AHEAD/BEHIND モ ー ド の 利 点 は 、 た と え DRBD-Proxy の バ ッ フ ァ が す べ て の 書 き 込 み 要 求 を 受 け 入 れ る の に 十 分 で な く て も 、 ア プ リ ケ ー シ ョ ン が 遅 く な ら な い こ と で あ る 。 欠 点 は 、 対 向 ノ ー ド が 後 れ を と っ て い る た め 、 同 期 状 態 に 戻 す た め に 再 同 期 が 必 要 に な る こ と で あ る 。 再 同 期 中 対 向 ノ ー ド の デ ー タ は 不 整 合 状 態 の ま ま と な る 。
congestion_policy で は block と pull-ahead が 使 用 で き る 。 デ フ ォ ル ト は block で あ る 。 Fill_threshold は 0 か ら 10GiB ま で の 値 を 指 定 で き る 。 デ フ ォ ル ト 値 は 0 で 、 こ れ は チ ェ ッ ク が 無 効 に な る こ と を 意 味 す る 。 Active_extents_threshold は 、 al-extents と 同 じ 制 限 が あ る 。
AHEAD/BEHIND は DRBD8.3.10 以 降 で 利 用 で き る 。
wfc-timeout time 接 続 確 立 ま で の 待 機 時 間 に タ イ ム ア ウ ト 値 を 設 定 す る 。 init ス ク リ プ ト drbd(8) は 、 DRBD リ ソ ー ス の 接 続 が 確 立 す る ま で 待 ち 続 け る 。 後 に 起 動 さ れ る ク ラ ス タ 管 理 シ ス テ ム は 、 通 常 は リ ソ ー ス 内 の ス プ リ ッ ト ブ レ イ ン 状 態 ま で は チ ェ ッ ク し な い 。 待 ち 時 間 を 制 限 し た い 場 合 に は 、 こ の パ ラ メ ー タ 値 を 設 定 す る 。 デ フ ォ ル ト 値 は 0 で 、 タ イ ム ア ウ ト せ ず に 待 ち 続 け る 。 単 位 は 秒 で あ る 。
degr-wfc-timeout time ク ラ ス タ が 縮 退 し た 場 合 に は 、 コ ネ ク シ ョ ン タ イ ム ア ウ ト を 待 つ 。 縮 退 と は 、 片 方 の ノ ー ド し か 動 作 し て い な い 状 態 を 表 す 。 こ の よ う な ク ラ ス タ を リ ブ ー ト し た 場 合 に は 、 対 向 ノ ー ド が 一 定 時 間 内 に 起 動 す る 可 能 性 が 低 い た め 、 wfc-timeout で は な く degr-wfc-timeout が 使 わ れ る 。 0 を 指 定 す る と 、 タ イ ム ア ウ ト し な く な る 。
outdated-wfc-timeout time 相 手 ノ ー ド が 無 効 に な っ て か ら 、 接 続 確 立 ま で の 待 機 時 間 に タ イ ム ア ウ ト 値 を 設 定 す る 。 無 効 に な っ た 相 手 ノ ー ド が 再 起 動 さ れ て い る デ グ レ ー ド ク ラ ス タ (1 つ の ノ ー ド し か 残 っ て い な い ク ラ ス タ ) で は 、 こ の タ イ ム ア ウ ト 値 は wfc-timeout の 代 わ り に 使 用 さ れ る 。 な ぜ な ら 、 相 手 ノ ー ド は そ の 間 プ ラ イ マ リ に な る こ と を 許 可 さ れ て い な い た め で あ る 。 0 を 指 定 す る と 、 タ イ ム ア ウ ト し な く な る 。
wait-after-sb こ の パ ラ メ ー タ を 指 定 す る と 、 ス プ リ ッ ト ブ レ イ ン 状 態 に あ っ て 接 続 自 体 が 拒 否 さ れ る よ う な 状 態 で も 、 起 動 ス ク リ プ ト は 接 続 ま で 待 ち 続 け る よ う に な る 。
become-primary-on node-name 起 動 時 に プ ラ イ マ リ に な る べ き ノ ー ド の 名 前 を 指 定 す る 。 node-name は ホ ス ト 名 ま た は キ ー ワ ー ド の 両 方 か も し れ な い 。 こ の パ ラ メ ー タ が 指 定 さ れ て い な い 場 合 は 、 両 ノ ー ド と も セ カ ン ダ リ 状 態 で 起 動 す る 。 通 常 は 、 役 割 の 決 定 を ク ラ ス タ 管 理 シ ス テ ム (heartbeat な ど ) に 委 ね る こ と が 多 い 。
stacked-timeouts ス タ ッ ク し た 上 位 デ バ イ ス に つ い て 、 通 常 は wfc-timeout お よ び degr-wfc-timeout は 無 視 さ れ る 。 コ ネ ク シ ョ ン タ イ ム ア ウ ト 値 に は 、 代 わ り に connect-int の 2 倍 の 時 間 が 使 わ れ る 。 stacked-timeouts を 指 定 す る と 、 DRBD は wfc-timeout お よ び degr-wfc-timeout に も と づ い て 動 作 す る よ う に な る 。 ス タ ッ ク デ バ イ ス の 対 向 ノ ー ド が 多 く の 場 合 に 利 用 で き な い ケ ー ス や 対 向 ノ ー ド が プ ラ イ マ リ に な ら な い 場 合 に 限 っ て 、 こ の オ プ シ ョ ン を 指 定 す べ き で あ る 。 誤 用 す れ ば 、 予 期 し な い ス プ リ ッ ト ブ レ イ ン が 起 き る リ ス ク が 生 じ る 。
resync-rate rate
DRBD の 上 位 で 動 作 す る ア プ リ ケ ー シ ョ ン の 円 滑 な 実 行 の た め に 、 バ ッ ク グ ラ ウ ン ド の 同 期 作 業 が 利 用 す る 帯 域 幅 を 制 限 で き る 。 デ フ ォ ル ト 値 は 250KB/秒 、 デ フ ォ ル ト 単 位 は KB/秒 で あ る 。 K、 M、 G の 接 尾 語 を 補 っ て 単 位 を 変 更 で き る 。
use-rle 再 同 期 開 始 時 の ハ ン ド シ ェ ー ク の 過 程 で 各 ノ ー ド の ビ ッ ト マ ッ プ が 交 換 さ れ 、 ビ ッ ト 単 位 の OR 計 算 が 行 わ れ る 。 こ れ に よ っ て 、 ど の ブ ロ ッ ク が ダ ー テ ィ (不 一 致 ) で あ る か に つ い て 、 そ れ ぞ れ の ノ ー ド は 共 通 の 認 識 を 持 つ 。 大 容 量 デ バ イ ス で は ビ ッ ト マ ッ プ も 大 き く な り 、 帯 域 幅 が 小 さ い ネ ッ ト ワ ー ク で は そ の 交 換 に 時 間 を 要 す る 。 典 型 的 な ビ ッ ト マ ッ プ は 、 す べ て が セ ッ ト さ れ て い な い (ク リ ー ン ) あ る い は セ ッ ト さ れ て い る (ダ ー テ ィ ) い く つ か の エ リ ア に 分 か れ て い る 。 こ の た め 、 単 純 で は あ る が ラ ン レ ン グ ス 符 号 化 を 採 用 す る こ と に よ り 、 ビ ッ ト マ ッ プ 交 換 の た め の ネ ッ ト ワ ー ク ト ラ フ ィ ッ ク を 顕 著 に 減 ら す こ と が で き る 。 過 去 の バ ー ジ ョ ン と の 互 換 性 の た め 、 ま た 高 速 ネ ッ ト ワ ー ク で は 転 送 時 間 改 善 効 果 が 少 な く CPU 使 用 量 が 増 え る た め 、 デ フ ォ ル ト で は こ の 機 能 は 無 効 で あ る 。
socket-check-timeout value
DRBD-Proxy を 使 っ て い て 大 量 の バ ッ フ ァ を 確 保 す る 必 要 が あ る 環 境 で は ping-timeout に 非 現 実 的 な 大 き な 値 を 指 定 し な け れ ば な ら な い こ と が あ る 。 TCP コ ネ ク シ ョ ン が 開 始 し た と き の 安 定 す る の を 待 つ 局 面 で も 、 DRBD は デ フ ォ ル ト で ping-timeout を 使 っ て し ま う 。 DRBD-Proxy は 通 常 、 同 じ デ ー タ セ ン タ ー に 配 置 さ れ て い る た め 、 長 い 待 機 時 間 は DRBD の 接 続 プ ロ セ ス を 妨 げ る 可 能 性 が あ る 。 こ の よ う な 場 合 、 socket-check-timeout に DRBD と DRBD-Proxy 間 の round trip time(RTT) を 設 定 す る と よ い 。 た い て い の 場 合 1 で あ る 。 デ フ ォ ル ト の 単 位 は 10 分 の 1 秒 で あ る 。 デ フ ォ ル ト 値 は 0 で socket-check-timeout 値 の 代 わ り に ping-timeout 値 を 使 用 す る 。 8.4.5 か ら 導 入 さ れ た 。
resync-after res-name デ フ ォ ル ト で は 全 て の デ バ イ ス の 再 同 期 処 理 が 並 行 し て 行 わ れ る 。 resync-after で 依 存 性 を 定 義 す る と 、 リ ソ ー ス res-name が connected 状 態 (つ ま り 再 同 期 の 完 了 後 ) に な っ て か ら リ ソ ー ス の 再 同 期 を 開 始 す る 。
al-extents extents
DRBD は ホ ッ ト エ リ ア を 自 動 的 に 検 出 す る 。 こ の パ ラ メ ー タ を 指 定 す る と 、 ホ ッ ト エ リ ア の 大 き さ を 制 御 で き る 。 各 エ ク ス テ ン ト は 、 下 位 デ バ イ ス の 4MB の 領 域 に な る 。 予 定 外 の 事 情 に よ っ て プ ラ イ マ リ ノ ー ド が ク ラ ス タ か ら 切 り 離 さ れ る と 、 そ の と き の ホ ッ ト エ リ ア の デ ー タ は 、 次 回 接 続 し た と き の 再 同 期 の 対 象 に な る 。 こ の デ ー タ 構 造 は 、 メ タ デ ー タ 領 域 に 書 き 込 ま れ る 。 し た が っ て 、 ホ ッ ト エ リ ア の 状 態 更 新 は 、 メ タ デ ー タ デ バ イ ス へ の 書 き 込 み を 引 き 起 こ す 。 エ ク ス テ ン ト 値 を 大 き く す る と 、 再 同 期 所 要 時 間 が 長 く な る が 、 メ タ デ ー タ の 更 新 頻 度 を 減 ら す こ と が で き る 。 extents の デ フ ォ ル ト 値 は 1237 で あ る 。 (最 小 値 :7、 最 大 値 :65534) 有 効 な 最 大 値 は も っ と 小 さ く な る 点 に 注 意 が 必 要 で あ り 、 メ タ デ ー タ の デ バ イ ス の 作 成 方 法 に よ っ て も 異 な る 。 次 の マ ニ ュ ア ル ペ ー ジ を 参 照 、 drbdmeta(8) を 参 照 。 有 効 な 最 大 値 は 919 * (使 用 で き る オ ン デ ィ ス ク の ア ク テ ィ ビ テ ィ ロ グ の リ ン グ バ ッ フ ァ 領 域 /4KB -1) で あ る 。 リ ン グ バ ッ フ ァ は デ フ ォ ル ト で 32KB で 、 有 効 な 最 大 値 は 6433 で あ る (デ ー タ は 25GiB 以 上 カ バ ー し て い る )。 下 位 デ バ イ ス の 量 と レ プ リ ケ ー シ ョ ン リ ン ク 全 体 が 5 分 以 内 で 再 同 期 で き る よ う に す る こ と を 推 奨 す る 。
al-updates {yes | no}
DRBD の ア ク テ ィ ビ テ ィ ロ グ 処 理 の 書 き 込 み に よ っ て 、 プ ラ イ マ リ ノ ー ド の ク ラ ッ シ ュ 後 の 部 分 的 な (ビ ッ ト マ ッ プ に 基 づ く ) 再 同 期 で ノ ー ド を up-to-date に 復 帰 さ せ る 事 が で き る よ う に な る 。 al-updates を no に 設 定 す る と 通 常 の 運 用 パ フ ォ ー マ ン ス が 向 上 す る か も し れ な い が 、 ク ラ ッ シ ュ 時 に プ ラ イ マ リ が 再 接 続 し た 際 に は フ ル 同 期 と な る 。 デ フ ォ ル ト 値 は yes で あ る 。
verify-alg hash-alg
verify サ ブ コ マ ン ド で デ ィ ス ク 内 容 を オ ン ラ イ ン 照 合 す る 際 、 DRBD は ビ ッ ト 単 位 の 比 較 で は な く 、 ブ ロ ッ ク ご と の ハ ッ シ ュ 値 を 計 算 し 、 対 向 ノ ー ド の ハ ッ シ ュ 値 と 比 較 す る 。 照 合 に 利 用 す る ハ ッ シ ュ ア ル ゴ リ ズ ム は 、 こ の パ ラ メ ー タ で 指 定 す る 。 オ プ シ ョ ン 値 に は 、 カ ー ネ ル が サ ポ ー ト す る 任 意 の ダ イ ジ ェ ス ト ア ル ゴ リ ズ ム を 指 定 で き る 。 一 般 的 な カ ー ネ ル の 場 合 、 少 な く と も md5, sha1, crc32c の ど れ か が 利 用 で き る 。 デ フ ォ ル ト で は 、 こ の 機 能 は 無 効 で あ る 。 オ ン ラ イ ン 照 合 を 有 効 に す る に は 、 こ の パ ラ メ ー タ を 明 示 的 に 設 定 す る 必 要 が あ る 。 デ ー タ 整 合 性 に 関 す る 説 明 も 参 照 の こ と 。
csums-alg hash-alg
csums-alg が 指 定 さ れ て い な い 場 合 、 再 同 期 プ ロ セ ス は す べ て の マ ー ク さ れ た デ ー タ ブ ロ ッ ク を コ ピ ー 元 か ら コ ピ ー 先 に 転 送 す る こ の オ プ シ ョ ン を 指 定 す る と 、 マ ー ク さ れ た デ ー タ ブ ロ ッ ク の ハ ッ シ ュ 値 を 最 初 に 送 り 、 ハ ッ シ ュ 値 が 一 致 し な い ブ ロ ッ ク に つ い て の み デ ー タ を 転 送 す る 。 帯 域 幅 が 小 さ い 回 線 を 使 う と き 、 こ の オ プ シ ョ ン は 有 用 で あ る 。 ク ラ ッ シ ュ し た プ ラ イ マ リ ノ ー ド が 復 帰 し た と き 、 ア ク テ ィ ビ テ ィ ロ グ に 記 録 さ れ た す べ て の ブ ロ ッ ク が 再 同 期 の 対 象 と な る 。 し か し 大 部 分 の ブ ロ ッ ク は 同 期 が 取 れ て い る 。 こ の た め 、 csums-alg を 指 定 す る こ と に よ っ て 、 CPU の 使 用 量 と 引 き 換 え に 必 要 な 転 送 量 を 減 ら せ る 。
c-plan-ahead
plan_time,
c-fill-target fill_target,
c-delay-target delay_target,
c-max-rate max_rate
plan_time に 正 の 値 を 指 定 す る と 、 再 同 期 速 度 を 動 的 に 調 整 で き る よ う に な る 。 こ れ は 、 fill_target に 指 定 し た 一 定 速 度 で 、 あ る い は delay_target に 指 定 し た 一 定 の 遅 延 で デ ー タ を 送 信 バ ッ フ ァ に 送 り 込 む こ と に よ っ て 実 現 さ れ る 。 調 整 に お け る 最 大 値 は max_rate で 指 定 す る 。
plan_time パ ラ メ ー タ で 調 節 機 能 の 機 敏 さ を 設 定 す る 。 大 き な 値 を 設 定 す る と 、 調 節 機 能 の レ ス ポ ン ス が 低 下 す る 。 こ の 値 は 最 低 で も ネ ッ ト ワ ー ク の RTT の 5 倍 以 上 を 指 定 す る 。 通 常 の デ ー タ 経 路 で は fill_target に 4k か ら 100k を 指 定 す る の が 適 切 で あ る 。 DRBD-Proxy を 使 用 す る 場 合 に は 、 代 わ り に delay_target を 使 用 す る の が 望 ま し い 。 delay_target は fill_target が 0 の 場 合 に の み 使 用 で き る 。 初 期 値 は RTT の 5 倍 が 適 切 で あ る 。 Max_rate に は DRBD 間 ま た は DRBD-Proxy 間 の 帯 域 幅 あ る い は デ ィ ス ク 帯 域 幅 を 指 定 す る 。
plan_time の デ フ ォ ル ト 値 は 0 で 、 0.1 秒 単 位 で 指 定 す る 。 Fill_target の デ フ ォ ル ト 値 は 0 で セ ク タ 数 を 指 定 す る 。 Delay_target の デ フ ォ ル ト 値 は 1 (100 ミ リ 秒 ) で 0.1 秒 単 位 で 指 定 す る 。 Max_rate の デ フ ォ ル ト 値 は 10240 (100MiB/s) で 、 KiB/s 単 位 で 指 定 す る 。 動 的 な 再 同 期 速 度 の 調 整 と 設 定 は 、 DRBD 8.3.9 か ら 使 用 で き る 。
c-min-rate min_rate 同 期 元 の プ ラ イ マ リ ノ ー ド は 、 ア プ リ ケ ー シ ョ ン の 書 き 込 み と 再 同 期 の 書 き 込 み の 配 分 を 管 理 す る 必 要 が あ る 。 min_rate を 指 定 す る と 、 再 同 期 の た め の 帯 域 幅 の 最 大 値 が min_rate に な り 、 利 用 可 能 な 帯 域 幅 の 残 り の 部 分 を ア プ リ ケ ー シ ョ ン I/O の た め に 確 保 す る 。
0 と い う 値 に は 特 別 な 意 味 が あ る 事 に 注 意 が 必 要 で あ る 。 0 は 再 同 期 速 度 の 制 限 を 完 全 に な く す た め 、 ア プ リ ケ ー シ ョ ン の 速 度 を 劇 的 に 低 下 さ せ る 可 能 性 が あ る 。 ア プ リ ケ ー シ ョ ン の 速 度 低 下 を 避 け た い 場 合 に は 、 こ の 値 に 1 を 指 定 す る 。 注 意 :こ の パ ラ メ ー タ 名 は 動 的 な 調 整 速 度 の 下 限 値 の よ う に 見 え る が 、 実 際 は 異 な る 。 DRBD-Proxy の バ ッ フ ァ が 満 杯 の と き 、 動 的 調 整 機 能 は c-min-rate の 設 定 か ら 独 立 し て 、 再 同 期 速 度 を 0 ま で 下 げ る こ と が で き る 。
min_rate の デ フ ォ ル ト 値 は 250 で あ り 、 KiB/s 単 位 で 指 定 す る 。
on-no-data-accessible ond-policy こ の 設 定 は 、 デ ィ ス ク レ ス モ ー ド が 発 生 し た 際 の 操 作 を 指 定 す る 。 設 定 で き る ポ リ シ ー は io-error と suspend-io で あ る 。
ond-policy に suspend-io を 設 定 す る と 、 最 後 に 接 続 し て い た デ ー タ ス ト レ ー ジ か ら 、 も し く は 、 drbdadm resume-io res コ マ ン ド に よ り 、 I/O を 再 開 す る こ と が で き る 。 後 者 は も ち ろ ん I/O エ ラ ー を 発 生 さ せ る 。 デ フ ォ ル ト は io-error で あ る 。 こ の 設 定 は 、 DRBD 8.3.9 か ら 有 効 で あ る 。
cpu-mask cpu-mask
DRBD の カ ー ネ ル ス レ ッ ド に CPU ア フ ィ ニ テ ィ マ ス ク を 設 定 す る 。 cpu-mask の デ フ ォ ル ト 値 は 0 で 、 DRBD の カ ー ネ ル ス レ ッ ド が マ シ ン 全 体 の CPU に ま た が っ て 動 作 す る こ と を 意 味 し て い る 。 こ の 値 は 16 進 表 現 で 指 定 す る 必 要 が あ る 。 値 が 大 き す ぎ る と 切 り 捨 て ら れ る 。
pri-on-incon-degr cmd こ の パ ラ メ ー タ で 指 定 す る ハ ン ド ラ は 、 ノ ー ド が プ ラ イ マ リ で 、 縮 退 (片 方 の ノ ー ド し か 動 作 し て い な い 状 態 ) し 、 ロ ー カ ル の コ ピ ー デ ー タ に 不 整 合 が あ る 場 合 に 呼 び 出 さ れ る 。
pri-lost-after-sb cmd こ の パ ラ メ ー タ で 指 定 す る ハ ン ド ラ は ノ ー ド が 現 在 プ ラ イ マ リ で 、 ス プ リ ッ ト ブ レ イ ン 後 の 自 動 回 復 プ ロ セ ス が 失 敗 し た と き に 呼 び 出 さ れ る 。 そ の 結 果 、 こ の ノ ー ド の デ ー タ が 放 棄 さ れ る よ う に す る 。
pri-lost cmd こ の パ ラ メ ー タ に 指 定 し た ハ ン ド ラ は 、 ノ ー ド が 現 在 プ ラ イ マ リ で あ る に も か か わ ら ず 、 DRBD の ア ル ゴ リ ズ ム が 同 期 先 だ と 判 断 し た 場 合 に 実 行 さ れ る 。 こ の よ う な 状 態 に な っ た 場 合 、 こ の ノ ー ド は プ ラ イ マ リ で あ る こ と を や め る べ き で あ る 。
fence-peer cmd こ の パ ラ メ ー タ は フ ェ ン シ ン グ メ カ ニ ズ ム の 一 部 を 構 成 す る 。 こ の パ ラ メ ー タ に 指 定 し た ハ ン ド ラ は 、 対 向 ノ ー ド を 無 効 状 態 に す る 必 要 が 生 じ た と き に 実 行 さ れ る 。 呼 び 出 さ れ た コ マ ン ド は 、 DRBD が 使 っ て い る 通 信 経 路 と は 別 の 経 路 を 使 う べ き で あ る 。
local-io-error cmd こ の パ ラ メ ー タ に 指 定 し た ハ ン ド ラ は DRBD が ロ ー カ ル の I/O サ ブ シ ス テ ム か ら I/O エ ラ ー を 受 け た 時 に 実 行 さ れ る 。
initial-split-brain cmd
DRBD が ス プ リ ッ ト ブ レ イ ン を 検 出 し た 場 合 に 使 用 さ れ る 。 こ の ハ ン ド ラ は ス プ リ ッ ト ブ レ イ ン が 発 生 し た 場 合 に 警 告 を 通 知 す る 。 問 題 が 解 決 し た 場 合 で も 通 知 す る 。
split-brain cmd こ の パ ラ メ ー タ に 指 定 し た ハ ン ド ラ は 、 ス プ リ ッ ト ブ レ イ ン 状 態 が 検 出 さ れ 、 回 復 で き な い 場 合 に 呼 び 出 さ れ る 。 修 復 の た め の 手 作 業 が 必 要 な の で 、 こ の ハ ン ド ラ は 、 誰 か に こ の こ と を 通 知 す る の が 望 ま し い 。
before-resync-target cmd こ の パ ラ メ ー タ で 指 定 し た ハ ン ド ラ は 、 同 期 先 で 再 同 期 が 開 始 さ れ る 直 前 に 呼 び 出 さ れ る 。 下 位 ブ ロ ッ ク デ バ イ ス の ス ナ ッ プ シ ョ ッ ト を 取 得 す る 、 な ど の 用 途 が 考 え ら れ る 。
after-resync-target cmd こ の パ ラ メ ー タ で 指 定 し た ハ ン ド ラ は 、 不 整 合 状 態 だ っ た ノ ー ド で 、 デ ィ ス ク の 再 同 期 が 完 了 し た 直 後 に 呼 び 出 さ れ る 。 before-resync-target ハ ン ド ラ で 作 成 し た ス ナ ッ プ シ ョ ッ ト を 削 除 す る 、 な ど の 用 途 が 考 え ら れ る 。
Other
Keywords
include file-pattern
file-pattern に 指 定 し た ワ イ ル ド カ ー ド 形 式 に 合 致 す る 全 て の フ ァ イ ル を 組 み 込 む 。 include ス テ ー ト メ ン ト は ト ッ プ レ ベ ル で の み 使 用 で き 、 セ ク シ ョ ン 内 で は 使 用 で き な い 。
NOTES ON DATA INTEGRITY
DRBD が ミ ラ ー し た デ ー タ の 整 合 性 を 保 証 す る 方 法 は 2 つ あ り 、 こ れ ら は そ れ ぞ れ 別 々 の も の で あ る 。 オ ン ラ イ ン 照 合 と network セ ク シ ョ ン の data-integrity-alg で あ る 。 ど ち ら の メ カ ニ ズ ム の 場 合 で も 、 デ ー タ の 転 送 中 に DRBD の 上 位 プ ロ グ ラ ム が デ ィ ス ク に 書 き 込 み を 行 っ た 場 合 、 不 整 合 で は な い の に 不 整 合 と 判 断 さ れ る こ と が あ る 。 そ れ は ス ワ ッ プ の 発 生 、 グ ロ ー バ ル 同 期 中 の 付 加 、 ワ ー ク ロ ー ド の 打 ち 切 り や 書 き 換 え で あ る か も し れ ず 、 必 ず し も デ ー タ 整 合 性 の 問 題 を も た ら さ な い 。 通 常 イ ニ シ エ ー タ が デ ー タ 転 送 を 行 う 際 に は 、 デ ー タ ブ ロ ッ ク が デ ィ ス ク 上 の デ ー タ 構 造 の 一 部 で な い 事 を 認 識 し て い る か 、 す ぐ に 正 確 な デ ー タ で 再 実 行 さ れ る 。
data-integrity-alg は 、 "Digest integrity check FAILED: Ns |x\n" と い う エ ラ ー を 受 信 側 の ロ グ に 書 き だ す 。 N は 相 殺 さ れ た セ ク タ の オ フ セ ッ ト で 、 x は バ イ ト 単 位 の リ ク エ ス ト サ イ ズ で あ る 。 そ れ か ら 接 続 を 切 り 、 再 接 続 し て 、 迅 速 に 再 同 期 を す る 。 同 時 に 送 信 側 が 変 更 を 検 知 し た 場 合 、 "Digest mismatch, buffer modified by upper layers during write: Ns +x\n" と い う 警 告 が で る が 、 こ れ は 誤 検 出 で あ る 。 変 更 さ れ て い な い デ ー タ が tcp バ ッ フ ァ に コ ピ ー さ れ る と 、 送 信 側 は こ れ ら の バ ッ フ ァ の 変 化 を す ぐ に 検 出 す る か も し れ な い 。 こ の 場 合 、 受 信 側 は そ れ に 気 づ か な い 。 直 近 の 例 (2007 年 ) で は 系 統 的 な デ ー タ 損 傷 の ケ ー ス が あ り 、 ギ ガ ビ ッ ト NIC の TCP/IP オ フ ロ ー ド エ ン ジ ン と ド ラ イ バ が 原 因 だ っ た 。 メ イ ン メ モ リ か ら NIC へ の DMA デ ー タ 転 送 時 に デ ー タ 破 壊 が 起 き て い た 。 TCP チ ェ ッ ク サ ム は NIC 側 で 計 算 さ れ る た め 、 こ の 種 の デ ー タ エ ラ ー は オ ン ラ イ ン 照 合 verify ま た は data-integrity-alg を 使 わ な い 限 り 検 出 で き な い 。
data-integrity-alg は CPU 負 荷 が 大 き い た め 、 テ ス ト 期 間 中 の み 使 う こ と を 推 奨 す る 。 そ の 後 は 、 た と え ば 月 に 1 回 程 度 、 負 荷 が 低 い 時 間 帯 に オ ン ラ イ ン 照 合 を 実 施 す る の が 望 ま し い 。
VERSION
こ の ド キ ュ メ ン ト は DRBD バ ー ジ ョ ン 8.4.0 向 け に 改 訂 さ れ て い る 。
AUTHOR
Written by Philipp Reisner <philipp.reisner [AT] linbit.com> and Lars Ellenberg <lars.ellenberg [AT] linbit.com>.
REPORTING BUGS
Report bugs to <drbd-user [AT] lists.com>.
COPYRIGHT
Copyright 2001-2008 LINBIT Information Technologies, Philipp Reisner, Lars Ellenberg. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO
drbd(8), drbddisk(8), drbdsetup(8), drbdmeta(8), drbdadm(8), DRBD User's Guide [1] , DRBD web site [3]
NOTES
1. |
DRBD User’s Guide |
http://www.drbd.org/users-guide/
2. |
DRBD の 利 用 者 統 計 |
3. |
DRBD web site |