DRBDMETA(8)

NAME
drbdmeta - ディスク上の DRBD メタデータを操作する

SYNOPSIS

drbdmeta [--force] [--ignore-sanity-checks] {device} {v06 minor | v07 meta_dev index | v08 meta_dev index | v09 meta_dev index} {command} [cmd args...]

DESCRIPTION

drbdmeta ユーティリティは、 DRBD のディスク上のメタデータの作成、表示、および変更に使用される。ユーザは通常、 drbdmeta でなく、DRBD に対してより高度なインタフェースを提供する drbdadm ユーティリティを通して使用する。(drbdadm が drbdmeta をどのように使うかを表示するには drbdadm の --dry-run オプションを使用する。)

このユーティリティは、カーネルが現在使用していないデバイスのみで使用できる。

最初の引数 （device） は、ボリュームに関連付けられている drbd デバイスを指定する。 そのボリュームに関連付けられているデバイスがない場合 “-” を指定する。drbd デバイスが指定されている場合、 drbdmeta ユーティリティは、アクティブボリュームのメタデータが破壊されないよう、drbd デバイスにボリュームが現在、接続されていないことを確認する。

2番目の引数は、使用するメタデータのバージョンを指定する （v06、v07、v08、v09）。ほとんどのメタデータバージョンでは、3番目の引数 （meta_dev） は、メタデータを含むデバイスを指定する。この引数はdevice と同じにできる。第 4 引数 （index） は次のいづれかのキーワードである: internal （内部メタデータ用）、 flex-internal （v07 の場合、可変サイズのメタデータ、そうでない場合、デフォルトは固定サイズの内部メタデータ）、 flex-external （可変サイズの外部メタデータ）、数値メタデータインデックス（固定サイズの外部メタデータ）。次のコマンドの meta-disk パラメータを参照: drbd.conf(5)。

OPTIONS

--force
    drbdmeta が尋ねるすべての質問に対する答えを yes とする。

--ignore-sanity-checks
    通常、drbdmeta はメタデータデバイスに書き込む前に健全性チェックを実行する。たとえば、デバイスにファイルシステムが含まれているように見える場合、書き込むことによってファイルシステムを破壊することを拒否する。これらのチェックを無視するには、このオプションを使用する。

COMMANDS

create-md [--peer-max-bio-size=val] (メタデータバージョン v06、 v07、v08),
create-md {number-of-bitmap-slots} [--peer-max-bio-size=val] [--initialize-bitmap-mode={automatic|zeroout|pwrite|skip}] [--al-stripes=val] [--al-stripe-size-kB=val] (metadata version v09)
    メタデータを初期化する。これは、 DRBD リソースを接続する前に必要である。drbdmeta デバイス上で古いバージョンの DRBD メタデータが見つかると、そのフォーマットを変換する必要があるかどうかを尋ねる。

    drbdadm が device に対して drbdmeta の create-md コマンドを呼びだすと, number-of-bitmap-slots 引数をリソース内の対向ノード数にセットする。追加のビットマップスロット （将来的に対向ノードを追加できるようにする） を予約するには、 代わりに drbdmeta を直接呼び出す。

    デバイスが最初に対向ノードに接続される前に使用される場合、DRBD は対向ノードがデフォルトで 4KiB リクエストしか処理できないとみなす。--peer-max-bio-size オプションにより柔軟な値を設定できる。このデバイスが接続する DRBD のバージョンがわかっている場合は、これを使用する。DRBD は、バージョン 8.3.8 以降 32 KiB の 最大 bio サイズ、バージョン 8.3.9 以降は 128 KiB、バージョン 8.4.0 以降は 1 MiB の最大 bio サイズをサポートする。

    By default, we explicitly initialize the bitmap area to all zero. With --initialize-bitmap-mode you can chose to only try the fast method (zeroout, try ioctl BLKZEROOUT only), only use explicit pwrite calls, or skip this bitmap initialization phase completely. If you intend to do an initial full sync anyways, you can use skip to leave the bitmap initialization to the kernel. This can make a noticable difference when initializing huge volumes. Default is automatic, which is zeroout with an implicit fallback to pwrite.

    If you want to use more than 6433 activity log extents, or live on top of a spriped RAID, you may specify the number of stripes (--al-stripes, default 1), and the stripe size (--al-stripe-size-kB, default 32). To just use a larger linear on-disk ring-buffer, leave the number of stripes at 1, and increase the size only:

    drbdmeta 0 v08 /dev/vg23/lv42 internal create-md --al-stripe-size 1M

    To avoid a single "spindle" from becoming a bottleneck, increase the number of stripes, to achieve an interleaved layout of the on-disk activity-log transactions. What you give as "stripe-size" should be what is a.k.a. "chunk size" or "granularity" or "strip unit": the minimum skip to the next "spindle".

    drbdmeta 0 v08 /dev/vg23/lv42 internal create-md --al-stripes 7 --al-stripe-size 64

get-gi [--node-id=id]
    特定の接続上のデバイスのデータ世代識別子を表示する。DRBD バージョン 9.0.0 以降は複数の対向ノードをサポートする。 node-id オプションを使用して、表示する対向ノードのデータ世代識別子を定義する。

show-gi [--node-id=id]
    get-gi に似ているが、説明テキストとともに表示する。

dump-md
    ビットマップおよびアクティビティログを含むデバイスのメタデータをテキスト形式でダンプする。

outdate
    下位デバイスのデータ内容が「無効」であるとマークする。次のマニュアルを参照: drbdsetup(8)

dstate
    下位デバイスの現在のディスク状態を表示する。

check-resize
    下位デバイスのデバイスサイズと最後に認識されたデバイスサイズを調べる（drbdsetup check-resize により /var/lib/drbd/drbd-minor-minor.lkbd にセーブされる）。内部メタデータの場合、下位レベルのデバイスのサイズが変更され、メタデータが前の位置にある場合は、メタデータをブロックデバイスの最後の新しい位置に移動する。

apply-al
    指定したデバイスのアクティビティログを適用する。デバイスがカーネルによって再び接続される前にこれが必要である。

EXPERT COMMANDS

drbdmeta ユーティリティを使用してメタデータを微調整することができる。これはメタデータの破壊やデータそのものの破損につながる可能性がある。細心の注意を払って使用すること。

set-gi gi [--node-id=id]

    世代識別子を設定する。gi 引数にはバージョン 0.6 および 0.7 では世代カウンタを、バージョン 8.x では UUID を指定する。get-gi の出力と同じ文法を指定できる。DRBD バージョン 9.0.0 以降は複数の対向ノードをサポートする。 --node-id オプションを使用して、設定する対向ノードのデータ世代識別子を定義する。

restore-md dump_file
    デバイスのメタデータを dump_file の内容に置き換える。 ダンプファイルのフォーマットは、 dump-md コマンドの出力で定義される。

VERSION

このドキュメントは DRBD バージョン 9.0.0 向けに改訂されている。

AUTHOR

Written by Philipp Reisner <philipp.reisner@linbit.com> and Lars Ellenberg <lars.ellenberg@linbit.com>.

REPORTING BUGS

Report bugs to <drbd-user@lists.linbit.com>.

COPYRIGHT

Copyright 2001-2008,2012 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

drbdadm(8) drbd.conf(5)