drbdadm - DRBD
の高レベル管理ツール
drbdadm [-d] [-c {file}]
[-t {file}] [-s {cmd}] [-m {cmd}]
[-S] [-h {host}] [-- {backend-options}]
{command} [{all} | {resource[/volume>]...}]
Drbdadm は DRBD
プログラム群の中で高レベルの管理ツールである。Drbdadm
は drbdsetup と drbdmeta
の上位レベルのインタフェースである。これは、ifconfig
の ifup/ifdown
コマンドに対する関係と同様である。Drbdadm
は設定ファイルを読み込んで、
drbdsetup や drbdmeta
を呼び出してコマンドを実行する。
Drbdadm
は全リソース、リソース中のボリュームに対して操作が行える。サブコマンドには次のものがある。
attach, detach, primary, secondary,
invalidate, invalidate-remote, outdate, resize,
verify, pause-sync, resume-sync, role,
csytate, dstate, create-md, show-gi,
get-gi, dump-md, wipe-md
。これらは全リソースとボリュームに対して機能する。
リソースレベルのみのコマンドには次のものである。
connect, disconnect, up, down,
wait-connect and dump。
-d, --dry-run
実行する drbdsetup
コマンドを標準出力に書き出すが、実際にコマンドは実行しない。
-c, --config-file file
drbdadm
が使う設定ファイルを指定する。このパラメータを省略すると、
/etc/drbd-84.conf, /etc/drbd-83.conf, /etc/drbd-08.conf,
/etc/drbd.conf
が参照される。
-t, --config-to-test file
drbdadm
にチェックさせる設定ファイルを指定する。dump
コマンドまたは sh-nop
コマンドと共に使用する場合のみ有効である。
-s, --drbdsetup file
drbdsetup
プログラムのフルパスを指定する。省略すると、自身のコマンド配置場所配下と、$PATH
が参照される。
-m, --drbdmeta file
drbdmeta
プログラムのフルパスを指定する。省略すると、自身のコマンド配置場所配下と、$PATH
が参照される。
-S, --stacked
積み重ねた上位リソースに対する操作を指示する場合に指定する。
-P, --peer
どの対向ノードと接続するかを指定する。リソースの定義に3台以上のホストを指定した場合にのみ必要である。
-- backend-options
二重ハイフンの後に続くオプションはすべて
backend-options
として認識される。これらはバックエンドコマンドに渡される。つまり
drbdsetup、drbdmeta、drbd-proxy-ctl
などに渡される。
attach
DRBD
リソースに対応する低レベルのローカルブロックデバイスを接続する。
detach
DRBD
リソースデバイスから下位ストレージデバイスを切り離す。
connect
リソースデバイスに対するネットワーク設定を有効にする。対応する接続先がすでに設定されていれば、2
台の DRBD
デバイスは相互に接続される。リソース定義中に
3
台以上のホストを指定してある場合、接続先ホストを指定するために
--peer
も指定する必要がある。
disconnect
リソースに対するネットワーク設定を無効にする。デバイスは当然ながらスタンドアローン状態になる。
syncer
デバイスの再同期に関するパラメータを読み込む。
up
attach と connect
の両方を実行するショートカット。
down
attach と connect
の両方を実行するショートカット。
primary
リソースのデバイスをプライマリ状態に昇格する。DRBD
が管理するデバイスにファイルシステムを作成したりそれをマウントする前に、必ずこのコマンドを実行する必要がある。
secondary
デバイスをセカンダリ状態に切り替える。接続された
DRBD
デバイスペアのどちらか一方しかプライマリ状態になれないので、このコマンドが必要である(設定ファイル中に
allow-two-primaries
が明示的に指定されている場合を除く)。
invalidate
ローカル下位デバイスが不整合になったと
DRBD
に判断させる。したがって、両デバイスが同期状態になるよう、DRBD
はすべてのブロックを他方のノードからコピーする。このとき、レプリケーションリンクを確率させておく必要があり、そうでないと
disconnected Secondary
の状態になる。
invalidate-remote
invalidate
コマンドに似ているが、対向ノードの下位デバイスが非同期状態になったとみなす。したがって、ローカルノードのデータが他ノードにコピーされる。このとき、レプリケーションリンクを確率させておく必要があり、そうでないと
disconnected Primary
の状態になる。
resize
DRBD
にディスクサイズ関連の状態を再評価させ、必要ならデバイスのサイズを変更する。例えば両ノードで下位デバイスのサイズを拡張した場合には、どちらか一方のノードでこのコマンドを実行した後で、DRBD
は新しいサイズを受け入れる。新しいストレージ領域は同期される必要があるため、最低でも
1
つのプライマリノードが存在する場合にのみ、このコマンドは機能する。
以下のオプションはすべて
backend-options である ("--"
で分離される)。
--size オプションは
DRBD
デバイスで使用できるサイズのオンライン縮小に使用される。ファイルシステムがこの操作によって破損しないことはユーザ責任において確認する。例:
# drbdadm -- --size=10G resize r0
--assume-peer-has-space
オプションは、現在対向ノードに接続されていないデバイスのサイズ変更ができる。対向ノードのディスクサイズを同様に変更しないと、以降接続が失敗するので注意すること。
--assume-clean
オプションは、既存のデバイスのサイズを変更し、新しい領域の同期を回避できる。空のストレージをデバイスに追加する場合に有用である。例:
# drbdadm -- --assume-clean resize r0
--al-stripes と --al-stripe-size-kB
オプションはオンラインでアクティビティログのレイアウトを変更する。内部メタデータの場合には、同時に、下位デバイスのユーザーに見えるサイズ(--size
を使用して)の縮小、または拡大が必要である。
check-resize
内部メタデータの移動のために
drbdmeta を呼び出す。DRBD
の停止中に下位デバイスのサイズが変更された場合、次回の
attach
コマンドが成功するように、メタデータをデバイスの最後に移動する必要がある。
create-md
メタデータ領域を初期化する。DRBD
リソースを初めて利用する場合、オンラインにする前にこのコマンドを実行する必要がある。問題が起きた場合には、次のマニュアルを参照:drbdmeta(8)
get-gi
データ世代識別子の情報を簡潔なテキスト情報として表示する。
show-gi
データ世代識別子の情報を、説明テキストとともにテキスト情報として表示する。
dump-md
メタデータの全内容をテキスト形式でダンプする。ダンプにはビットマップとアクティビティログも含まれる。
outdate
メタデータに outdated
フラグをたてる。
adjust
設定ファイルの設定値にしたがってデバイスの設定状態を調整する。実際に実行する前に、あらかじめ
dry-run
モードを実行して、得られた出力を吟味すべきである。
wait-connect
他ノードのデバイスと接続するまで待機する。
role
自機および対向ノードのデバイスの現在の役割を
"自機/対向ノード"
の形式で表示する。例、
Primary/Secondary
state
廃止された "role"
の別名。前項を参照。
cstate
両ノードのデバイスの接続状態を表示する。
dump
設定ファイルを解析して標準出力に出力する。設定ファイルの構文上の修正を行うときに有用である。
outdate
ノードのデータ状態を
outdated(無効)
にする。通常は、他ノードの
fence-peer
ハンドラによってセットされる。
verify
オンライン照合を開始する。両ノードのデータが比較され、不整合がないか検査される。進行状況は
/proc/drbd
に表示される。非同期ブロックが見つかった場合でも、再同期は
自動的には行われない。同期するには、検査の終了後に
disconnect してから
connect
する。
drbd.conf
マニュアルページのデータ整合性に関する説明も参照のこと。
pause-sync
ローカルメタデータの一時停止フラグをセットして、進行中の再同期を一時停止する。再開させるには、ローカルと他ノードの両方の一時停止フラグをクリアする必要がある。下位デバイスの
RAID
を再構成している場合などに、一時的に
DRBD
の再同期を停止できる。
resume-sync
自機の一時停止フラグをクリアする。
new-current-uuid
新しいカレント
UUID
を生成し、他のすべての
UUID をローテートする。
初期同期時間を短縮するためにこのコマンドを利用できる。詳細については
drbdsetup
マニュアルページを参照。
dstate
下位デバイスの同期状況を表示する。(local/peer)
hidden-commands
このマニュアルに記載されていない全部のコマンドを表示する。
このドキュメントは
DRBD バージョン 8.4.0
向けに改訂されている。
Written by Philipp Reisner <philipp.reisner@linbit.com> and
Lars Ellenberg <lars.ellenberg@linbit.com>
Report bugs to <drbd-user@lists.linbit.com>.
Copyright 2001-2011 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.
drbd.conf(5), drbd(8), drbddisk(8),
drbdsetup(8), drbdmeta(8) and the DRBD project web
site[1]
- 1.
- DRBD project web site
http://www.drbd.org/