Provided by: drbd-utils_9.11.0-1build1_amd64 bug

NAME

       drbdsetup - DRBD カーネルモジュールを構成する

SYNOPSIS

       drbdsetup command {argument...} [option...]

DESCRIPTION

       drbdsetup ユーティリティは、DRBD カーネルモジュールを構成し、また現在の構成を表示す
       る。ユーザは通常、 drbdsetup でなく、DRBD に対してより高度なインタフェースを提供する
       drbdadm ユーティリティを通して使用する。(drbdadmdrbdsetup をどのように使うかを表示する
       には drbdadm--dry-run オプションを使用する。)

       一部のオプション引数には、素の数値が指定されたときに適用されるデフォルトのスケールがある(
       たとえば、Kilo は数値の1024倍)。このようなデフォルトのスケールは、接尾辞を使用して上書き
       することができる。(メガの場合は M)。共通の接尾語 K = 2^10 = 1024, M = 1024 K, G = 1024 M
       はサポートされている。

COMMANDS

       drbdsetup attach minor lower_dev meta_data_dev meta_data_index,
       drbdsetup disk-options minor
           attach コマンドは、下位デバイスを既存の複製デバイスに接続する。disk-options コマンド
           は、接続された下位デバイスのディスクオプションを変更する。複製されたデバイスは、
           drbdsetup new-minor で作られている必要がある。

           複製されたデバイスをその minor 番号で指定する。lower_devは、下位レベルデバイスの名前で
           ある。meta_data_dev は、メタデータを含むデバイスの名前であり、 lower_dev と同じにでき
           る。meta_data_index は、数値のメタデータインデックス、内部メタデータ用のキーワード
           internal 、または可変サイズの外部メタデータ用のキーワード flexible のどれかである。利
           用可能なオプション:

           --al-extents extents
               DRBD は、直近の書き込み活動に基づいて、すぐに書き直される可能性のある「ホット」ま
               たは「アクティブ」ディスク領域を自動的に維持する。「アクティブ」ディスク領域はすぐ
               に書き込むことができるが、「非アクティブ」ディスク領域は最初に「アクティブ化」する
               必要があり、このためのメタデータ書き込みが必要である。このアクティブなディスク領域
               を「アクティビティログ」として参照する。

               アクティビティーログはメタデータに書き込まれるが、失敗したノードのリカバリー時には
               ログ全体を再同期化する必要がある。アクティビティログのサイズは、再同期にかかる時間
               やクラッシュ後に複製されるディスクが整合状態になる時間に影響を与える。

               アクティビティログは、4メガバイトのセグメントから構成される。その al-extents パラ
               メータは、同時にアクティブにできるセグメントの数を決定する。al-extents のデフォル
               ト値は 1237、 最小値は 7、 最大値は 65536 である。

               有効な最大値はもっと小さくなる点に注意が必要であり、メタデータのデバイスの作成方法
               によっても異なる。次のマニュアルページを参照、drbdmeta(8)。有効な最大値は 919 *
               (使用できる オンディスクのアクティビティログのリングバッファ領域 /4KB -1) であ
               る。リングバッファはデフォルトで 32KB で、有効な最大値は 6433 である (データは
               25GiB 以上カバーしている)。下位デバイスの量とレプリケーションリンク全体が 5 分以内
               で再同期できるようにすることを推奨する。

           --al-updates {yes | no}
               このパラメータを使用すると、アクティビティログを完全にオフにすることができる
               (al-extents パラメータを参照)。メタデータの書き込みが少なくて済むため、書き込み
               が高速になるが、故障したプライマリノードの回復のためにデバイス全体を再同期する必要
               がある。al-updates のデフォルト値は yes である。

           --disk-barrier,
           --disk-flushes,
           --disk-drain
               DRBD は、依存書き込みリクエストの順序を処理する 3 つの方法がある:

               disk-barrier
                   ディスクバリアを使用して、リクエストが正しい順序でディスクに書き込まれるように
                   する。バリアの前に提出されたすべてのリクエストが、バリアの後に提出されたリクエ
                   ストの前にディスクに書き込まれることを保証する。これは、SCSI デバイスの
                   'tagged command queuing' と SATA デバイスの 'native command queuing' を使用し
                   て実装される。一部のデバイスおよびデバイススタックのみがこの方法をサポートす
                   る。デバイスマッパー (LVM) は、一部の構成でのみバリアをサポートする。

                   ディスクバリアをサポートしていないシステムで、このオプションを有効にするとデー
                   タが消失または破損する可能性がある。DRBD 8.4.1 までは、下位デバイスがバリアを
                   サポートする場合 disk-barrier が有効でした。しかし、linux-2.6.36 (または
                   RHEL6 の 2.6.32) 以降のカーネルでは、バリアがサポートされているかどうかを検出
                   できなくなりました。drbd-8.4.2 以降、このオプションはデフォルトでは無効であ
                   り、使用する場合は明示的に有効にする必要がある。

               disk-flushes
                   依存書き込みリクエスト間でディスクフラッシュを使用する(ドライブベンダーにより
                   'force unit access' とも呼ばれる)。これにより、すべてのデータが強制的にディス
                   クに格納される。このオプションは、デフォルトで有効である。

               disk-drain
                   依存書き込みリクエストを送信する前に、リクエストキューが排出されるまで待つ(つ
                   まり、リクエストが完了するのを待つ)。この方法は、リクエストが完了するとディス
                   ク上で安定している。DRBD 8.0.9 より前は、これが実装された唯一の方法でした。こ
                   のオプションは、デフォルトで有効である。運用環境では無効にしないことを推奨す
                   る。

               これらの3つの方法から、DRBD は設定が有効で、下位デバイスもサポートしている最初のも
               のを使用する。これらの3つのオプションがすべて無効になっている場合、DRBD は依存関係
               を気にせずに書き込みリクエストを送信する。下位デバイスによって、書き込みリクエスト
               を並べ替えることができ、異なるクラスタノード上で異なる順序で書き込みリクエストを送
               信できる。これは、データの損失または破損の原因となる。したがって、書き込み順序を制
               御する 3 つの方法をすべて無効にしないことを推奨する。

               書込み順序を設定する一般的なガイドラインは、揮発性書込みキャッシュを備えた通常の
               ディスク(または通常のディスクアレイ)を使用する場合は、disk-barrier または
               disk-flushes を使用することである。キャッシュを持たないストレージまたはバッテリ
               バックアップのライトキャッシュでは、 disk-drain が適している。

           --disk-timeout
               DRBD デバイスのデータを格納する下位レベルデバイスが、指定した disk-timeout 以内で
               I/O リクエストを完了しない場合、DRBD はこれを障害とみなす。下位デバイスは切り離さ
               れ、デバイスのディスク状態はディスクレス状態になる。DRBD が 1 台以上の対向ノードに
               接続したとき、失敗したリクエストはそのうちの 1 台に伝えられる。

               このオプションは カーネルパニックを引き起こす可能性があり、注意が必要である。

               リクエストの「中断」あるいはディスクの強制切り離しは、完全に下位デバイスをブロック
               またはハンギングして、リクエストをまったく処理せずエラーも処理しなくなる。この状況
               ではハードリセットとフェイルオーバ以外になす術がない。

               「中断」すると、基本的にローカルエラーの完了を装い、すみやかにサービスの移行を行う
               ことで安全な切り替えを行う。それでもなお、影響を受けるノードは "すぐ" に再起動され
               る必要はある。

               リクエストを完了することで、上位レイヤーに関連するデータページを再利用させることが
               できる。

               後にローカルの下位デバイスが「復帰」すると、ディスクから元のリクエストページへの
               DMA のデータは、うまくいくと未使用のページへランダムなデータを送るが、多くの場合そ
               の間に関係のないデータに変形してしまい、様々なダメージの原因になる。

               つまり遅延した正常な完了は、特に読み込みリクエストの場合 panic() の原因になる。遅
               延した「エラー」完了は、その都度に通知は行うが、問題ないと考えてよい。

               disk-timeout のデフォルト値は 0 であり、無限のタイムアウトを意味する。タイムアウト
               は 0.1 秒単位で指定する。このオプションは DRBD 8.3.12. から有効である。

           --md-flushes
               メタデータデバイスでディスクフラッシュとディスクバリアを有効にする。このオプション
               は、デフォルトで有効である。disk-flushes のパラーメータを参照。

           --on-io-error handler
               DRBD が下位レベルデバイスの I/O エラーにどのように反応するかを設定する。次のポリ
               シーが定義される:

               pass_on
                   ディスクのステータスを inconsistent(不整合) にし、 I/O エラーを起こしたブロッ
                   クに対応するビットマップにマークをつけ、リモートのクラスターノード上で I/O 操
                   作を再度行う。

               call-local-io-error
                   local-io-error ハンドラを呼び出す (handlers セクションを参照)。

               detach
                   下位レベルデバイスを切り離し、ディスクレスモードで続行する。

           --read-balancing policy
               policy 定義された読み取りリクエストで、クラスターノード間に負荷分散する。次のポリ
               シーがサポートされる: prefer-local (デフォルト), prefer-remote, round-robin,
               least-pending, when-congested-remote, 32K-striping, 64K-striping, 128K-striping,
               256K-striping, 512K-striping and 1M-striping.

               このオプションは、DRBD 8.4.1 から有効である。

           resync-after minor
               デバイスは、指定されたデバイスの後でのみ再同期する必要があることを定義する。デフォ
               ルトでは、デバイス間の順序は定義されず、すべてのデバイスが並行して再同期される。下
               位レベルデバイスの構成、および使用可能なネットワークとディスクの帯域幅によって
               は、全体の再同期プロセスが遅くなる可能性がある。このオプションは、デバイス間の依存
               関係チェーンやツリーを形成するために使用できる。

           --size size
               下位レベルデバイスのサイズを自動的に決定するのではなく、明示的に指定する。デバイス
               サイズは一度決定されると、デバイスのライフタイムの間、維持される。自動的に決定する
               には、すべてのノードのすべての下位レベルデバイスの接続が必要であるが、サイズが明示
               的に指定されている場合は、これが必要でない。size 値はデフォルトでセクタ (512バイ
               ト) 単位であるとみなされる。

           --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-alignedyes に設定すると、 discard_zeroes_data = false を通
               知するバックエンドであっても DRBD は discard を使用し、 discard_zeroes_data = true
               を通知する。

                discard-zeroes-if-alignedno に設定すると、それぞれのバックエンドが
               discard_zeroes_data = false をアナウンスする場合、DRBD は常に受信側でゼロアウトに
               フォールバックし、プライマリ側では discard に関して通知しない。

               私たちは、 discard_zeroes_data 設定を完全に無視していました。確立し、期待された動
               作を壊さず、シンプロビジョニング LV の fstrim がスペースを解放する代わりにスペース
               を使い果たさないためのデフォルト値は yes である。

               このオプションは 8.4.7 から有効である。

           --rs-discard-granularity byte
                rs-discard-granularity がゼロ以外の正の値に設定されている場合、DRBD はこのサイズ
               で再同期操作をリクエストする。そのようなブロックが同期ソースノード上にゼロバイトし
               か含まない場合、同期ターゲットノードは、その領域に対して discard/trim/unmap コマン
               ドを発行する。

               この値は、下位ブロックデバイスの discard 粒度によって制約される。
               rs-discard-granularity が下位ブロックデバイスの discard 粒度の乗数でない場合、DRBD
               はそれを切り上げる。この機能は、下位ブロックデバイスが discard コマンドの後に、ゼ
               ロを読み戻す場合にのみアクティブになる。

               デフォルト値は 0 である。このオプションは 8.4.7 から有効である。

       drbdsetup peer-device-options resource peer_node_id volume
           これらは、 peer のデバイスに影響を与えるオプションである。

           --c-delay-target delay_target,
           --c-fill-target fill_target,
           --c-max-rate max_rate,
           --c-plan-ahead plan_time
               再同期速度を動的に制御する。これは c-plan-ahead を正の値に設定すると有効にな
               る。c-fill-target が指定されている場合は、バッファが指定された値を満たすよ
               う、c-delay-target が指定されている場合は、指定した遅延になるように制御する。最大
               帯域幅は、 c-max-rate で制限する。

               c-plan-ahead は、DRBD が再同期速度の変化にどのくらい速く適応するかを定義する。ネッ
               トワークのラウンドトリップタイム (RTT) の 5 倍以上に設定するのが望まれる。「通常
               の」データパスで c-fill-target の共通の値の範囲は 4K から 100K である。drbd-proxy
               を使用している場合は、 c-fill-target の代わりに c-delay-target を使用することを推
               奨する。c-delay-target は、 c-fill-target が定義されていないか、または 0 に設定さ
               れているときに使用される。c-delay-target は、ネットワークのラウンドトリップタイム
               (RTT) の 5 倍以上に設定するのが望まれる。c-max-rate には DRBD 間または DRBD-Proxy
               間の帯域幅あるいはディスク帯域幅を指定する。

               これらのパラメータのデフォルト値は次のとおり。 c-plan-ahead = 20 (0.1 秒単位)、
               c-fill-target = 0 (セクタ単位)、 c-delay-target = 1 (単位 0.1 秒)、および
               c-max-rate = 102400 (単位 KiB/s)。

               動的な再同期速度制御は DRBD 8.3.9 から有効である。

           --c-min-rate min_rate
               同期元のプライマリノードは、アプリケーションの書き込みと再同期の書き込みの配分を管
               理する必要がある。c-min-rate は、再同期の書き込みに使用できる帯域幅を制限する。残
               りの帯域幅はアプリケーションの書き込みに使用される。

               c-min-rate の値 0 は、再同期の書き込みに使用できる帯域幅に制限がないことを意味す
               る。これにより、アプリケーションの書き込みが大幅に遅くなる可能性がある。再同期速度
               の最低値は 1(1 KiB/s) である。

               c-min-rate のデフォルト値は 4096 で、 単位は KiB/s である。

           --resync-rate rate
               DRBD が再同期に使用できる帯域幅を定義する。DRBD では、再同期中でも「通常の」アプリ
               ケーション I/O が可能である。再同期の帯域幅が大きすぎると、アプリケーション I/O が
               非常に遅くなる可能性がある。このパラメータは、これを避けることができる。これは、動
               的な再同期コントローラが無効の場合にのみ機能する。

       drbdsetup check-resize minor
           指定された複製デバイスの下位デバイスの現在のサイズを記録する。drbdadm によって使用され
           る。サイズ情報は、/var/lib/drbd/drbd-minor-minor.lkbd という名前で記録される。

       drbdsetup new-peer resource peer_node_id,
       drbdsetup net-options resource peer_node_id
           new-peer コマンドは、 resource に接続を作成する。リソースは drbdsetup new-resource で
           作成されている必要がある。net-options オプションは、既存の接続のネットワークオプション
           を変更する。connect コマンドで接続をアクティブにする前に、少なくとも1つのパスを
           new-path コマンドで追加する必要がある。利用可能なオプション:

           --after-sb-0pri policy
               スプリットブレインが検出され、2 つのノードのいずれもプライマリでない場合の対応方法
               を定義する。(2 つのノードが接続されたときにスプリットブレインを検出する、スプリッ
               トブレインの決定は常に2つのノード間である) 定義されたポリシーは次のとおり:

               disconnect
                   自動再同期はしない。単に切断する。

               discard-younger-primary,
               discard-older-primary
                   最初(discard-younger-primary)、または最後(discard-older-primary) にプライ
                   マリなったノード から再同期する。両方のノードが独立してプライマリになった場
                   合、 discard-least-changes ポリシーが使用される。

               discard-zero-changes
                   スプリットブレイン状況が検出されてからノードの 1 つだけがデータを書き込んだ場
                   合は、このノードからもう 1 つのノードに再同期する。両方のノードがデータを書き
                   込んだ場合は切断する。

               discard-least-changes
                   より多くの変更されたブロックを持つノードから再同期する。

               discard-node-nodename
                   名前付きノードと常に再同期する。

           --after-sb-1pri policy
               1 つのノードがプライマリ、もう 1 つのノードをセカンダリのときに、スプリットブレイ
               ンが検出された場合の対応方法を定義する。(2 つのノードが接続されたときにスプリット
               ブレインを検出する、スプリットブレインの決定は常に2つのノード間である) 定義された
               ポリシーは次のとおり:

               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
               スプリットブレインが検出され、両方のノードがプライマリである場合の対応方法を定義す
               る。(2 つのノードが接続されたときにスプリットブレインを検出する、スプリットブレイ
               ンの決定は常に2つのノード間である) 定義されたポリシーは次のとおり:

               disconnect
                   自動再同期を行わず接続を切断する。

               violently-as0p
                   after-sb-1priviolently-as0p ポリシーを参照。

               call-pri-lost-after-sb
                   そのマシンがセカンダリに降格できる場合を除いて、いずれかのマシンの
                   pri-lost-after-sb ヘルパープログラムを呼び出す。ヘルパープログラムはマシンを再
                   起動することが期待され、ノードをセカンダリにする。どのマシンがヘルパープログラ
                   ムを実行するかは、 after-sb-0pri ポリシーによって決定される。

           --allow-two-primaries
               DRBD デバイスを構成する最も一般的な方法は、一度に 1 つのノードのみをプライマリ(し
               たがって書き込み可能)にすることである。

               いくつかのシナリオでは、2 つのノードを一度にプライマリにしたい場合がある。 DRBD 以
               外のメカニズムで、共有され複製されたデバイスへの書き込みが調整される方法を使用する
               必要がある。これは、OCFS2 や GFS などの共有ストレージクラスタファイルシステム、ま
               たは仮想マシンイメージと仮想マシンを物理マシン間で移動できる仮想マシンマネージャを
               使用して実行できる。

               allow-two-primaries は、2つのノードを同時にプライマリにすることを DRBD に指示す
               る。非分散ファイルシステムを使用する場合は、このオプションを有効にしてはならな
               い。データ破損とノードクラッシュが発生する。

           --always-asbp
               通常、3 番目のノードが存在しないことが現在の UUID 値から明らかな場合のみ、スプリッ
               トブレイン発生後の修復ポリシーだけが適用される。

               このオプションを指定すると、両ノードのデータに関連性があるとして、スプリットブレイ
               ン発生後のポリシーが適用される。UUID の分析により 3 番目のノードの存在が疑われる場
               合には、フル同期が行われることがある。(または、なんらかの別の原因によって間違った
               UUID セットで判断してしまった場合)

           --connect-int time
               2つのノード間の接続が drbdsetup connect で構成される、DRBD はすぐに接続を確立しよ
               うとする。これが失敗すると、DRBD はconnect-int 秒後に接続を試みる。connect-int の
               デフォルト値は 10 秒である。

           --cram-hmac-alg hash-algorithm
               対向ノードの認証に使用するハッシュベースのメッセージ認証コード (HMAC) またはセ
               キュアハッシュアルゴリズムを構成する。カーネルはいくつかの異なるアルゴリズムをサ
               ポートしており、その中にはカーネルモジュールとしてロード可能なものもあ
               る。/proc/crypto にリストされている shash アルゴリズムを参照。デフォルトで
               cram-hmac-alg は設定されていない。対向ノードの認証には、shared-secret も構成する必
               要がある。

           --csums-alg hash-algorithm
               通常、2 つのノードが再同期するとき、同期ターゲットは同期ソースから非同期データを要
               求し、同期ソースはデータを送信する。多くの使用パターンで、それらのブロックのかなり
               の数が実際には同一になっている。

               csums-alg アルゴリズムが指定されている場合、同期ターゲットは、非同期データの要求
               と、現在持っているデータのハッシュ値も送信する。同期ソースは、このハッシュ値とそれ
               自身のバージョンのデータを比較する。ハッシュ値が異なる場合、新しいデータを同期ター
               ゲットに送信し、そうでない場合はデータが同じであることを通知する。これにより、必要
               なネットワーク帯域幅が削減されるが、CPU 使用率が高くなり、同期ターゲットの I/O が
               増加する可能性がある。

               csums-alg は、カーネルによってサポートされている安全なハッシュアルゴリズムの 1 つ
               に設定できる。 /proc/crypto にリストされている shash アルゴリズムを参照。デフォル
               トでは、 csums-alg 設定されていない。

           --csums-after-crash-only
               このオプション(および上記の csums-alg) を有効にすると、プライマリクラッシュ後の
               最初の再同期に対してのみチェックサムベースの再同期を使用するが、その後の「ネット
               ワーク復帰」では使用しない。

               ほとんどの場合、再同期が必要であるとマークされたブロックは実際に変更されているた
               め、チェックサムの計算、および再同期ターゲット上のブロックの読み書きはすべてオー
               バーヘッドである。

               チェックサムベースの再同期の利点は、大部分がプライマリのクラッシュリカバリの後であ
               る。リカバリでは、アクティビティログでカバーされるより大きな領域が再同期が必要なも
               のとしてマークされている。8.4.5 から導入された。

           --data-integrity-alg  alg
               DRBD は通常、 TCP/IP プロトコルに組み込まれたデータ整合性チェックに依存する
               が、データ整合性アルゴリズムが設定されている場合は、さらに、このアルゴリズムを使用
               して、ネットワーク経由で受信したデータが送信者のものと一致することを確認する。デー
               タの整合性エラーが検出された場合、DRBD はネットワーク接続を閉じ、再接続し、再同期
               を行う。

               data-integrity-alg は、カーネルによってサポートされている安全なハッシュアルゴリズ
               ムの 1 つに設定できる。 /proc/crypto にリストされている shash アルゴリズムを参
               照。デフォルトでは、このメカニズムは無効である。

               CPU のオーバーヘッドが発生するため、本番環境でこのオプションを使用しないことを推奨
               する。また、「データ整合性に関する注意」も参照。

           --fencing fencing_policy
               フェンシングは、両方のノードがプライマリで切断されている状態を回避するための予防措
               置である。これはスプリットブレイン状態とも呼ばれている。DRBDは、次のフェンシングポ
               リシーをサポートする:

               dont-care
                   フェンシングのためのアクションを実行しない。これがデフォルトのポリシーである。

               resource-only
                   ノードが切り離されたプライマリ状態になると、対向ノードをフェンシングしようとす
                   る。この動作は fence-peer ハンドラによって行われる。このハンドラは、レプリケー
                   ション用とは別のネットワーク経由で対向ノードにアクセスし、 そこで 'drbdadm
                   outdate minor' の実行を想定する。

               resource-and-stonith
                   ノードが切り離されたプライマリ状態になると、 DRBD はすべてのディスク I/O を停
                   止して fence-peer ハンドラを呼び出す。このハンドラは、レプリケーション用とは別
                   のネットワーク経由で対向ノードにアクセスし、 そこで 'drbdadm outdate minor' の
                   実行を想定する。これが実行できない場合、 STONITH 機能を使って対向ノードを強制
                   排除する。これらが完了したら、ディスク I/O を再開する。fence-peer ハンドラが失
                   敗した場合、 'drbdadm resume-io' コマンドでディスク I/O を再開できる。

           --ko-count number
               セカンダリノードが書き込みリクエストを timeout 内で ko-count 回以上失敗した場
               合、そのセカンダリノードはクラスタから排除される。プライマリノードは、このセカンダ
               リノードへの接続をスタンドアロンに設定する。この機能を無効にするには、明示的に 0
               に設定する必要がある。デフォルトはバージョン間で変更されている。8.4 は 7 がデフォ
               ルト値である。

           --max-buffers number
               再同期、オンライン照合を行う際に、受信側で DRBD マイナーデバイスあたりに使用するメ
               モリを制限する。単位は PAGE_SIZE で、ほとんどのシステムで 4KiB である。設定できる
               最小値は 32 (=128 KiB) でハードコードされている。これらバッファはディスクからの読
               み書きの際にデータブロックを保持するために使用される。輻輳時のデッドロックを回避す
               るために、この設定はハード制限というよりは閾値として使用される。最大バッファページ
               が使用されると、プールからのそれ以上の割り当てが制限される。受信側の I/O バックエ
               ンドに余裕がない場合には、 max-buffers を増やすとよい。

           --max-epoch-size number
               書き込みバリアを発行する前に DRBD が発行できる書き込みリクエストの最大数を定義す
               る。デフォルト値は 2048 で、最小値は 1 、最大値は 20000 である。このパラメータを
               10 未満の値に設定すると、パフォーマンスが低下する可能性がある。

           --on-congestion policy,
           --congestion-fill threshold,
           --congestion-extents threshold
               デフォルトでは、 TCP 送信キューが一杯になると、 DRBD は書き込みをブロックする。こ
               れにより、より多くのバッファスペースが再び利用可能になるまで、アプリケーションがさ
               らに書き込みリクエストを生成するのを防ぐ。

               DRBD を DRBD-proxy と一緒に使用する場合は、 送信キューがいっぱいになる前に DRBD を
               AHEAD/BEAIND モードに切り替える pull-ahead on-congestion ポリシーといっしょに使用
               することが望ましい。DRBD は、自身と対向ノードとの間の違いをビットマップに記録する
               が、もはや対向ノードに複製はしない。十分なバッファスペースが再び利用可能になる
               と、ノードは対向ノードと同期を再開し、通常の複製に戻る。

               これには、キューがいっぱいになってもアプリケーションの I/O をブロックしないという
               利点があるが、対向ノードの同期が大幅に遅れるという欠点もある。また、再同期している
               間、対向ノードは inconsistent(不整合) になる。

               利用可能な congestion ポリシーは block (デフォルト), pull-ahead であ
               る。congestion-fill は、この接続で動作中に許可されているデータ量を定義する。デフォ
               ルト値は 0 で、この輻輳制御のメカニズムを無効にする(最大 10 ギガバイ
               ト)。congestion-extents は、 AHEAD/BEAIND モードに切り替える前にアクティブにでき
               るビットマップエクステントの数を定義する。 al-extents と同じデフォルトと制限をも
               つ。congestion-extents は、 al-extents より小さい値に設定した場合のみ有効である。

               AHEAD/BEHIND モードは DRBD 8.3.10 から有効である。

           --ping-int interval
               対向ノードへの TCP/IP 接続で ping-int 秒間に何も通信が行われなかった場合、DRBD は
               キープアライブパケットを送信して、対向ノードまたはネットワーク接続の失敗がすぐに検
               出されるようにする。デフォルト値は 10 秒で、最小値は 1 、最大値は 120 秒である。単
               位は秒である。

           --ping-timeout timeout
               キープアライブパケットへの応答のタイムアウトを定義する。対向ノードが ping-timeout
               間で応答しない場合、 DRBD は接続を終了し、再接続しようとする。デフォルト値は 0.5
               秒で、最小値は 0.1 秒、最大値は 3 秒である。単位は 10 分の 1 秒である。

           --socket-check-timeout timeout
               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 から導入された。

           --protocol name
               この接続で指定されたプロトコルを使用する。サポートされているプロトコルは次のとお
               り:

               A
                   DRBD デバイスへの書き込みは、ローカルディスクへの書き込みと TCP/IP 送信バッ
                   ファに到達した時点で完了とする。

               B
                   DRBD デバイスへの書き込みは、ローカルディスクへの書き込みと、すべての対向ノー
                   ドが書き込みリクエストを受信をした時点で完了とする。

               C
                   DRBD デバイスへの書き込みは、ローカルディスクとすべてのリモートディスクへの書
                   き込みが終わった時点で完了とする。

           --rcvbuf-size size
               TCP/IP 受信バッファのサイズを指定する。0(デフォルト) を指定すると、バッファサイ
               ズが動的に調整される。このパラメータは通常設定する必要はないが、最大 10MiB まで設
               定できる。デフォルトの単位はバイトである。

           --rr-conflict policy
               このオプションは、再同期決定の結果がクラスタ内の現在のロール割り当てと互換性がない
               場合を解決するのに役立つ。定義されたポリシーは次のとおり:

               disconnect
                   自動再同期を行わず接続を切断する。

               retry-connect
                   今すぐ切断し、その後すぐに再接続する。

               violently
                   プライマリノードへの再同期が許可され、ブロックデバイス上のデータがノードの 1
                   つに対して安定しているという前提に反す。このオプションは危険であり、使ってはな
                   らない。

               call-pri-lost
                   どこか 1 つのマシンで pri-lost ハンドラを呼び出す。ハンドラはマシンを再起動す
                   ることが期待され、ノードをセカンダリにする。

           --shared-secret secret
               対向ノードの認証に使用する共有秘密鍵を設定する。secret は 64 文字までで指定す
               る。対向ノードの認証には、 cram-hmac-alg も設定する必要がある。

           --sndbuf-size size
               TCP/IP 送信バッファのサイズを指定する。DRBD 8.0.13/8.2.7 以降、 0 (デフォルト)
               を指定すると、バッファサイズが動的に調整される。32 KiB 未満の値は、この接続のス
               ループットに有害である。大きなバッファサイズは、プロトコル A が遅延の大きいネット
               ワークで使用される場合に特に有用である。サポートされる最大値は 10 MiB である。

           --tcp-cork
               デフォルトで、DRBD は TCP_CORK ソケットオプションを使用して、カーネルが部分的な
               メッセージを送信しないようにする。その結果、ネットワーク上のパケット量が少なくな
               り、サイズが大きくなる。一部のネットワークスタックでは、この最適化で悪化する可能性
               がある。tcp-cork を使用してこの最適化を無効にすることができる。

           --timeout time
               ネットワークを介した応答のタイムアウトを定義する。対向ノードが指定された timeout
               時間内で応答を送信しない場合、対向ノードが死んだと判断して TCP/IP コネクションを切
               断する。タイムアウト値は、 connect-intping-int より小さい値でなければならな
               い。デフォルトは 6 秒である。値は 10 分の 1 秒単位で指定する。

           --use-rle
               クラスタノード上の複製された各デバイスには、それぞれの対向ノードデバイス用の個別の
               ビットマップがあある。このビットマップは、ローカルデバイスと対向ノードデバイスの違
               いを追跡するために使用される。クラスタの状態によっては、デバイスのビットマップ、対
               向ノードデバイスのビットマップ、または両方のビットマップにディスクが異なるとマーク
               できる。2つのクラスタノードが接続すると、相互のビットマップを交換し、ローカルと対
               向ノードのビットマップを検査して全体的な違いを判断する。

               非常に大きなデバイスのビットマップは比較的大きいが、通常、ランレングス符号化を使用
               して非常にうまく圧縮される。これにより、ビットマップ転送の時間と帯域幅を節約でき
               る。

               use-rle は run-length エンコーディングを使用するかどうかを指定する。DRBD 8.4.0 以
               降デフォルトで有効である。

           --verify-alg hash-algorithm
               オンライン照合(drbdadm verify) は、ディスクブロックのチェックサム(すなわ
               ち、ハッシュ値)を計算して比較し、それらが異なるかどうかを検出する。verify-alg
               は、これらのチェックサムに使用するアルゴリズムを決定する。オンライン照合を使用する
               には、カーネルでサポートされている安全なハッシュアルゴリズムの1つに設定する必要が
               ある。 /proc/crypto にリストされている shash アルゴリズムを参照。

               低負荷の期間(例えば、月に1回)で定期的にオンライン照合をスケジュールすることを推
               奨する。また、「データ整合性に関する注意」も参照。

       drbdsetup new-path resource peer_node_id local-addr remote-addr
           new-path コマンドは、接続にパスを作成する。接続は drbdsetup new-peer で作成されている
           必要がある。local_addr, remote_addr は、ローカルとリモートのプロトコル、ネットワークア
           ドレス、ポートの形式を [address-family:]address[:port] で参照する。アドレスファミリ
           は、 ipv4, ipv6, ssocks (Dolphin Interconnect Solutionsの「スーパーソケット」), sdp
           (Infiniband Sockets Direct Protocol), sci がサポートされる(sci は、 ssocks の別名であ
           る)。アドレスファミリが指定されていない場合、 ipv4 を仮定する。ipv6 アドレスファミリ以
           外は、 address に IPv4 アドレス表記を使用する(たとえば、1.2.3.4)。ipv6 アドレスは角
           括弧で囲み、 IPv6 アドレス表記法を使用する(たとえば、 [fd01:2345:6789:abcd ::
           1])。port のデフォルトは 7788 である。

       drbdsetup connect resource peer_node_id
           connect コマンドは接続をアクティブにする。つまり、DRBD ドライバは接続パスのすべての
           ローカルアドレスをバインドしてリッスンする。接続パスを 1 つ以上確立しようとする。利用
           可能なオプション:

           --tentative
               対向ノードへの接続が確立できるかどうか、および実際に接続を確立したり、再同期を開始
               したりすることなく、再同期が必要かどうか(また、その方向も)を判断す
               る。--tentative なしだと、DRBD が何をするかシステムログを調べて、確認する。

           --discard-my-data
               ローカルデータを破棄して、最新データを持つ対向ノードと再同期する。スプリットブレイ
               ン状態から復旧するときに、このオプションを手作業で指定する。

       drbdsetup del-peer resource peer_node_id
           del-peer コマンドは、 resource から接続を削除する。

       drbdsetup del-path resource peer_node_id local-addr remote-addr
           del-path コマンドは、接続からパスを削除する。接続先の接続を維持するためにパスが必要な
           場合は失敗しないようにする。すべてのパスを削除するには、まず接続を切断する。

       drbdsetup cstate resource peer_node_id
           接続の現在の状態を表示する。接続は、対向ノードの node-id によって識別される。drbdsetup
           connect コマンを参照。

       drbdsetup del-minor minor
           複製されたデバイスを削除する。下位レベルのデバイスに接続できまない。drbdsetup detach
           を参照。

       drbdsetup del-resource resource
           リソースを削除する。すべてのボリュームと接続を最初に削除する必要がある (drbdsetup
           del-minordrbdsetup disconnect)。あるいは、 drbdsetup down すべてのボリュームと接続
           とともにリソースを削除するために使用できる。

       drbdsetup detach minor
           複製されたデバイスの下位デバイスを切り離す。利用可能なオプション:

           --force
               強制的に切り離し、すぐに戻る。これにより、保留中のすべての I/O が完了するまで下位
               レベルのデバイスが失敗した状態になり、デバイスが切り離される。下位レベルのデバイス
               にまだ送信されていない I/O (デバイスの I/O が中断されたなど) は失敗したものとみ
               なされる。

       drbdsetup disconnect resource peer_node_id
           対向ノードへの接続を削除する。接続は、対向ノードの node-id によって識別され
           る。drbdsetup connect コマンを参照。

       drbdsetup down {resource | all}
           すべてのボリューム、接続、およびリソース自体を削除して、リソースを落とす。

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

       drbdsetup events2 {resource | all}
           設定されたすべての DRBD オブジェクトの現在の状態、状態へのすべての変更を表示する。

           出力形式は、機械だけでなく人も読める形式である。各行は、イベントの種類を示す単語で始ま
           る: exists は既存オブジェクトの場合; create, destroy, change はオブジェクトが作成、破
           棄、変更された場合; call, response はイベントハンドラが呼び出された、戻った場合。2 番
           目の単語は、イベントが適用されるオブジェクトを示す: resource, device, connection,
           peer-device, helper, 現在の状態が完全にダンプされたことを示すための dash (-) 。

           残りの単語はオブジェクトを識別し、オブジェクトが入っている状態を記述する。利用可能なオ
           プション:

           --now
               現在の状態を報告した後に終了する。デフォルトでは、継続的に監視し、状態の変化を報告
               する。

           --poll
               --now が与えられていない場合は無視される。 --now と組み合わせて、現在の状態を一度
               出力した後、標準入力から読み込む。 n を読み込むと、別の実行を引き起こす。改行は無
               視される。他のすべての入力はコマンドを終了させる。

           --statistics
               統計情報を出力に含める。

       drbdsetup get-gi resource peer_node_id volume
           特定の接続上のデバイスのデータ世代識別子を表示する。デバイスは、そのボリューム番号に
           よって識別される。接続はそのエンドポイントによって識別される。drbdsetup connect コマン
           ドを参照。

           出力は、現在の UUID、ビットマップ UUID、および最初の2つの履歴 UUID で構成され、一連の
           フラグが続く。現在の UUID と履歴 UUID はデバイス固有である。ビットマップ UUID およびフ
           ラグは、対向ノードのデバイス固有である。このコマンドは、最初の2つの履歴 UUID のみを表
           示する。内部的には、DRBD は各対向ノードのデバイスの履歴 UUID を1つ保持する。

       drbdsetup invalidate minor
           デバイスのローカルデータを対向ノードのローカルデータで置き換える。すべてのローカルデー
           タが非同期とマークされ、指定された対向ノードデバイスとの再同期が始まる。

       drbdsetup invalidate-remote resource peer_node_id volume
           対向ノードのリソースデータをローカルデータで置き換える。対向ノードデバイスのデータは非
           同期にマークされ、ローカルノードから指定された対向ノードへの再同期が始まる。

       drbdsetup new-current-uuid minor
           現在 UUID を生成して、他のすべての UUID をローテートする。このコマンドには 2 通りの利
           用シーンが考えられる。まず、初期同期を省略する際に利用する。また、 1 台で設定を行った
           後遠隔サイトに運搬することにより帯域幅を節約するためにも利用できる。

           利用可能なオプション:

           --clear-bitmap
               現在 UUID を生成すると同時に同期ビットマップをクリアする。

           このオプションは、ゼロから新規に構築する際に初期同期を省略するために使用する。この方法
           は、作ったばかりのメタデータに対して効果がある。必要なステップは以下のとおり:

            1. 両ノードでメタデータを初期化してデバイスを設定する。

               drbdadm create-md --force res/volume-number

            2. それぞれのサイズを知るために初期ハンドシェークが必要となる。

               drbdadm up res

            3. Secondary/Secondary Inconsistent/Inconsistent の状態で接続される。新しい現在 UUID
               を作りダーティなビットマップをクリアする。

               drbdadm --clear-bitmap new-current-uuid res

            4. Secondary/Secondary UpToDate/UpToDate の状態で接続される。片方をプライマリに切り替
               えてファイルシステムを作成する。

               drbdadm primary res

               mkfs -t fs-type $(drbdadm sh-dev res)

           この方法の明らかな欠点は、別の方法でディスク内容を同一にしない限り、複製物全体に古いゴ
           ミのデータが残ることである。このため、オンライン照合は多数の非同期ブロックを見出してし
           まう。

           この方法は、すでにデータのあるディスクに適用してはならない! 最初は動作しているように
           見えても、ノードの切り替えを行うとデータが壊れてしまい二度と使えなくなる。そのた
           め、mkfs を省略してはならない (またはそれに相当する操作)。

           このコマンドは、最初のノードを本稼働させた後でディスク自体を 2 番目のノードに移すとい
           う手法により、クラスタの初期化時間を短縮する目的にも適用できる。この方法は、切断された
           デバイスに対してのみ有効である。デバイスのロールはプライマリでもセカンダリでもよい。

           必要なステップは以下のとおり:

            1. drbdsetup new-current-uuid --clear-bitmap minor

            2. 現在のアクティブなサーバのディスクをコピーする。たとえば RAID1 コントローラ配下の
               ディスクを 1 本抜く、 dd でコピーするなど。実際のデータ領域とメタデータの両方をコ
               ピーする必要がある。

            3. drbdsetup new-current-uuid minor

           このディスクをセカンダリのノードに挿入してクラスタに参加させる。ステップ 1 での
           drbdsetup の実行以降に変更した箇所の再同期が行われる。

       drbdsetup new-minor resource minor volume
           リソース内に新しい複製されたデバイスを作成する。このコマンドは、複製されたデバイス用の
           ブロックデバイスの inode を作成する(デフォルトでは、/dev/drbdminor)。volume 番号は
           resource 内のデバイスを認識する。

       drbdsetup new-resource resource node_id,
       drbdsetup resource-options resource
           new-resource コマンドは、新しいリソースを作成する。resource-options コマンドは、既存の
           リソースのリソースオプションを変更する。利用可能なオプション:

           --auto-promote bool-value
               書き込みのためにデバイスをマウントまたはオープンする前に、リソースをプライマリに昇
               格させる必要がある。

               DRBD 9 より前は、これを明示的に行う必要があった( "drbdadm primary")。DRBD 9 以
               降、 auto-promote を使用すると、デバイスの 1 つが書き込み用にマウントまたはオープ
               ンされるときに、リソースをプライマリに自動的に昇格させることができる。すべてのデバ
               イスがアンマウントされるか、オープンしているユーザがいなくなると、すぐにリソースの
               役割がセカンダリになる。

               自動プロモーションは、クラスタの状態が許可する場合にのみ成功する(つまり、明示的な
               drbdadm primary コマンドが成功するなら)。それ以外の場合は、DRBD 9 より前と同様に
               デバイスのマウントまたはオープンが失敗する: mount(2) システムコールは、 errno を
               EROFS(読み取り専用ファイルシステム) に設定して失敗する。open(2) システムコール
               は、 errno を EMEDIUMTYPE(メディアタイプが間違っている) に設定してが失敗する。

               auto-promote の設定に関係なく、デバイスが明示的に昇格された場合 (drbdadm
               primary)、明示的に降格する必要がある(drbdadm secondary)。

               auto-promote は DRBD 9.0.0 から有効で、デフォルトは yes である。

           --cpu-mask cpu-mask
               DRBD のカーネルスレッドに CPU アフィニティマスクを設定する。CPU マスクは 16 進数で
               指定する。デフォルト値は 0 で、スケジューラがどの CPU 上でカーネルスレッドを実行す
               るかを決定する。システムに存在しない cpu-mask CPU番号は無視される。

           --on-no-data-accessible policy
               要求されたデータがローカルまたはリモートで使用できない場合に(たとえば、すべての
               ディスクに障害が発生した場合など)、どのように I/O 要求を処理するかを決定する。定
               義されたポリシーは次のとおり:

               io-error
                   errno を EIO に設定してシステムコールは失敗する。

               suspend-io
                   リソースは I/O を中断する。下位レベルのデバイスを接続(再接続)したり、データ
                   にアクセスできる対向ノードに接続したり、drbdadm resume-io res で DRBD に I/O
                   を再開させたりすることで、 再開できる。データがない場合、 I/O を強制的に再開す
                   ると、 io-error ポリシーと同じ結果になる。

               この設定は、DRBD 8.3.9 から有効である。デフォルトのポリシーは io-error である。

           --peer-ack-window value
               各ノード上の各デバイスのために、DRBD は、ローカルデータと各対向ノードデバイスのリ
               モートデータの差分のビットマップを維持する。例えば、それぞれが単一デバイスを有する
               3 ノード構成 (ノード A、B、C) において、各ノードは、各対向ノードに対して 1 つの
               ビットマップを維持する。

               ノードが書き込みリクエストを受け取ると、書き込みノードのビットマップを更新する方法
               はわかるが、ノード間のビットマップを更新する方法はわからない。この例では、書き込み
               リクエストがノード A から B および C に伝搬するとき、ノード B および C はノード A
               と同じデータを有するが、両方が同じデータを有するか不明である。

               是正措置として、書き込みノードは、時には、相手との間にどのような状態があるかを示す
               ピアツーピアパケットを対向ノードに送信する。

               peer-ack-window は、peer-ack パケットを送信する前に、プライマリノードが送信する
               データ量を指定する。値が小さいとネットワークトラフィックが増加する。値が大きいと
               ネットワークトラフィックは減少するが、セカンダリノードのメモリ消費量が大きくな
               り、プライマリノードの障害後に、セカンダリノード間の再同期時間が長くなる。(
               注:peer-ack パケットは、他の理由でも送信される場合がある。たとえば、メンバーシッ
               プの変更または peer-ack-delay タイマーの満了など)。

               peer-ack-window のデフォルト値は、2 MiB であり、単位はセクタである。このオプション
               は 9.0.0 から有効である。

           --peer-ack-delay expiry-time
               最後に終了した書き込みリクエストの後に expiry-time 間、新しい書き込みリクエストが
               発行されない場合、peer-ack パケットが送信される。タイマーが満了する前に新しい書き
               込みリクエストが発行されると、タイマーは expiry-time にリセットされる。(
               注:peer-ack パケットは、他の理由でも送信される場合がある。たとえば、メンバーシッ
               プの変更または peer-ack-window オプションなど)。

               このパラメータは、リモートノードの再同期動作に影響を与える可能性がある。対向ノード
               は、 AL-extent のロックを解除する peer-ack を受信するまで待つ必要がある。対向ノー
               ド間の再同期操作は、これらのロックを待つ必要がある。

               peer-ack-delay のデフォルト値は、100 ミリ秒であり、単位はミリ秒である。このオプ
               ションは 9.0.0 から有効である。

           --quorum value
               有効にすると、レプリケートされたデータセットを変更するために、クラスタパーティショ
               ンはクォーラムを必要とする。つまり、クラスタパーティション内のノードは、クラスタ
               パーティションにクォーラムがある場合にのみプライマリに昇格できる。昇格すべきノード
               にディスクが直接接続されているすべてのノードが対象である。プライマリノードが書き込
               みリクエストを実行する必要があるが、クラスタパーティションがクォーラムを失った場
               合、 I/O をフリーズするか、または書き込みリクエストを拒否する(on-no-quorum の設定
               に依存)。クォーラムが失われると、プライマリは常に quorum-lost ハンドラを呼び出
               す。ハンドラは通知のためのものであり、リターンコードは無視される。

               オプションの値は、 off, majority, all, または数値である。数値を設定する場合は、値
               がノード数の半分を超えていることを確認すること。クォーラムはデータの不一致を回避す
               るメカニズムであり、2 つ以上の複製が存在する場合にフェンシングの代わりに使用される
               ときがある。デフォルトは off である。

               切断されたノードがすべて outdated(無効) としてマークされている場合、パーティション
               のサイズに関係なく、常にクォーラムを持つ。つまり、すべてのセカンダリノードを正常に
               切断すると、1 つのプライマリが動作し続ける。1 つのセカンダリが切断された瞬間に、切
               断されたすべてのセカンダリノードがパーティションを形成すると仮定する。パーティショ
               ンが他のパーティションよりも小さい場合、この時点ではクォーラムは失われる。

               ディスクレスノードがクォーラムを常に取得できるようにする場合、majority, all オプ
               ションは使用しないことを推奨する。クラスタ内のディスクフルノードの完全な数を決定す
               るための DBRD のヒューリスティックな方法は正確でないため、絶対数を指定することを推
               奨する。

               クォーラムの実装は、DRBD カーネルドライバのバージョン 9.0.7 から有効である。

           --quorum-minimum-redundancy value
               このオプションは、パーティションがクォーラムを獲得できるように UpToDate のディスク
               を持つノードの必要最小限の数を設定する。これは、素の quorum とは異なる要件である。

               オプションの値は、 off, majority, all, または数値である。数値を設定する場合は、値
               がノード数の半分を超えていることを確認すること。

               ディスクレスノードがクォーラムを常に取得できるようにする場合、majority, all オプ
               ションは使用しないことを推奨する。クラスタ内のディスクフルノードの完全な数を決定す
               るための DBRD のヒューリスティックな方法は正確でないため、絶対数を指定することを推
               奨する。

               このオプションは、DRBD カーネルドライバのバージョン 9.0.10 から有効である。

           --on-no-quorum {io-error | suspend-io}
               デフォルトで DRBD はクォーラムを失うと、デバイス上の I/O をフリーズす
               る。on-no-quorumio-error に設定すると、クォーラムが失われた場合、すべての I/O
               操作をエラーで完了する。

               on-no-quorum オプションは、DRBD カーネルドライバのバージョン 9.0.8 から有効であ
               る。

       drbdsetup outdate minor
           下位デバイスのデータ内容が「無効」であるとマークする。これはフェンシングに使用され、デ
           バイスが含まれているリソースが将来プライマリになるのを防ぐ。--fencing ディスクオプショ
           ンを参照。

       drbdsetup pause-sync resource peer_node_id volume
           ローカルポーズフラグを設定して、ローカルデバイスと対向ノードとの再同期を停止する。再同
           期は、接続の両側の一時停止フラグがクリアされた場合にのみ再開することができる。

       drbdsetup primary resource
           リソース内のノードの役割をプライマリに変更する。これにより、このリソース内の複製された
           デバイスを書き込み用にマウントまたはオープンすることができる。利用可能なオプション:

           --overwrite-data-of-peer
               このオプションは、 --force オプション の別名である。

           --force
               一部のデバイスで最新のデータが保証されていない場合でも、リソースを強制的にプライマ
               リにする。このオプションは、新しく作成されたクラスタ内のいずれかのノードをプライマ
               リノードに切り替える場合や、障害から手動で回復する場合に使用する。

               これは、スプリットブレインにつながる可能性があることに注意すること。また、不整合な
               デバイスを最新のデバイスに強制的に変更する場合は、使用可能な完全性チェック(ファイ
               ルシステムチェックなど)を使用して、システムをクラッシュさせずにデバイスを使用でき
               ることを確認すること。

           DRBD では、通常、クラスタ内の 1 つのノードだけがプライマリの役割を果たすことができる。
           DRBD はノード間のリソース内のデバイスを調整できる。--allow-two-primaries ネットワーク
           オプションは、これを変更する。その場合、DRBD 以外のメカニズムはデバイスアクセスを調整
           する必要がある。

       drbdsetup resize minor
           すべてのノードで、複製されたデバイスの下位デバイスのサイズを再確認する。このコマンド
           は、複製されたデバイスのサイズを調整するために、すべてのノードの下位レベルのデバイスが
           拡張された後に呼び出されれる。利用可能なオプション:

           --assume-peer-has-space
               現時点では、対向ノードのデバイスの一部が接続されていない場合でも、デバイスのサイズ
               を変更する。DRBD は、次に接続するときに対向ノードのデバイスのサイズを変更しようと
               する。対向ノードの小さすぎるデバイスへの接続は拒否する。

           --assume-clean
               追加されたディスクスペースを再同期しない。代わりに、すべてのノードで同一であると仮
               定する。このオプションは、ディスクスペースが初期化されておらず、相違していない場合
               や、すべてのノードで同一であることが分かっている場合に使用できる。drbdsetup verify
               コマンドを参照。

           --size val
               このオプションは、DRBD デバイスの使用可能なサイズをオンラインで縮小するために使用
               できる。ファイルシステムがこの操作によって破損しないことはユーザ責任において確認す
               る。

           --al-stripes val --al-stripes val
               これらのオプションを使用して、アクティビティログのレイアウトをオンラインで変更する
               ことができる。内部メタデータの場合には、同時に、下位デバイスのユーザーに見えるサイ
               ズ(--size を使用して)の縮小、または拡大が必要である。

       drbdsetup resume-io minor
           複製されたデバイスの I/O を再開する。--fencing ネットオプションを参照。

       drbdsetup resume-sync resource peer_node_id volume
           ローカル同期の一時停止フラグをクリアして、再同期を再開できるようにする。

       drbdsetup role resource
           リソースの現在の役割を表示する。

       drbdsetup secondary resource
           リソース内のノードの役割をセカンダリに変更する。複製されたデバイスが使用中の場合、この
           コマンドは失敗する。

       drbdsetup show {resource | all}
           リソースまたはすべてのリソースの現在の構成を表示する。利用可能なオプション:

           --show-defaults
               すべての設定パラメータを表示する。設定ファイルに未設定のパラメータも初期値の設定で
               表示する。このオプションをつけないと、初期値のパラメータは確認できない。

       drbdsetup show-gi resource peer_node_id volume
           特定の接続上のデバイスのデータ世代識別子を表示する。さらに、出力の説明を行う。他は
           drbdsetup get-gi コマンドと同じである。

       drbdsetup state
           これは drbdsetup role の別名である。推奨しない。

       drbdsetup status {resource | all}
           リソースの全ての有効な設定情報を表示する。出力は、構成されたリソースごとに 1 つの段落
           で構成される。各段落は、リソースごとに 1 行、各デバイスに 1 行、接続ごとに 1 行が続
           く。デバイスと接続行はインテンドされる。各接続行は、対向ノードのデバイスごとに 1
           行、これらは接続行に対してインテンドされる。

           長い行は端末の幅で折り返され、どの行に属しているかを示すためにインデントされる。利用可
           能なオプション:

           --verbose
               冗長か無関係であっても、より多くの情報を出力に含める。

           --statistics
               出力にデータ転送の統計情報を含める。

           --color={always | auto | never}
               出力をカラー化する。 --color=auto, drbdsetup は標準出力が端末に接続されている場合
               にのみカラーコードを出力する。

           たとえば、1 つの接続と1 つのボリュームのみを持つリソースの出力は、次のようになる。

               drbd0 role:Primary
                 disk:UpToDate
                 host2.example.com role:Secondary
                   disk:UpToDate

           --verbose を使用すると, 同じリソースは次のように出力される:

               drbd0 node-id:1 role:Primary suspended:no
                 volume:0 minor:1 disk:UpToDate blocked:no
                 host2.example.com local:ipv4:192.168.123.4:7788
                     peer:ipv4:192.168.123.2:7788 node-id:0 connection:WFReportParams
                     role:Secondary congested:no
                   volume:0 replication:Connected disk:UpToDate resync-suspended:no

       drbdsetup suspend-io minor
           複製されたデバイスの I/O を停止する。通常、このコマンドを使用する必要はない。

       drbdsetup verify resource peer_node_id volume
           オンライン照合を開始するか、デバイスの検証部分を変更するか、オンライン照合を停止す
           る。このコマンドでは、指定した対向ノードを接続する必要がある。

           オンライン照合では、ローカルと対向ノードの各ディスクブロックを比較する。ノード間で異な
           るブロックは非同期としてマークされるが、 自動的に同期化されない。それらを同期させるに
           は、リソースを切断して再接続する必要がある。進行状況は、 drbdsetup status --statistics
           の出力で監視できる。利用可能なオプション:

           --start position
               オンライン照合を開始する場所を定義する。オンライン照合がすでに進行中の場合、このパ
               ラメータは無視される。開始パラメータが指定されていない場合、オンライン照合は以前に
               中断された場所(対向ノードの接続が照合中に失われた場合)、前回の終了したセクタの後
               (以前にオンライン照合が完了した場合)、またはデバイスの最初(以前に終わりに達した
               場合、または以前にオンライン照合が実行されていない場合)から続けられる。

               ディスク上の位置は、デフォルトでディスクセクタ(512バイト)で指定される。

           --stop position
               オンライン照合を停止する場所を定義する。オンライン照合が既に進行中の場合、進行中の
               オンライン照合プロセスの停止位置が変更される。これを使用してオンライン照合を停止す
               る。

               ディスク上の位置は、デフォルトでディスクセクタ(512バイト)で指定される。

           また、'notes' のデータの完全性に関する注意を参照。drbd.conf(5) manual page.

       drbdsetup wait-connect-volume resource peer_node_id volume,
       drbdsetup wait-connect-connection resource peer_node_id,
       drbdsetup wait-connect-resource resource,
       drbdsetup wait-sync-volume resource peer_node_id volume,
       drbdsetup wait-sync-connection resource peer_node_id,
       drbdsetup wait-sync-resource resource
           wait-connect-* コマンドは、対向ノード上のデバイスが表示されるまで待機する。wait-sync-*
           コマンドは、対向ノード上のデバイスが最新の状態になるまで待機する。両方のコマンドで利用
           可能なオプション:.PP --degr-wfc-timeout timeout
               システムが停止したとき、クラスタが単一ノードで構成されている場合、すべてのピアが接
               続されるまで待機する時間を定義する。このパラメータは通常、 wfc-timeout より小さい
               値に設定する。再起動前に到達できなかった対向ノードが再起動後に到達できる可能性は低
               いため、待機が助けになる可能性は低いということである。

               タイムアウトは秒単位で指定する。デフォルト値は 0 であり、無限のタイムアウトを意味
               する。wfc-timeout パラーメータも参照。

           --outdated-wfc-timeout timeout
               システムが停止したとき、すべての対向ノードが outdated(無効) であった場合、すべての
               対向ノードが接続されるまで待機する時間を定義する。このパラメータは通常、
               wfc-timeout より小さい値に設定する。outdated(無効) の対向ノードがその間にプライマ
               リになることはできないので、以前に生存していたノードを待つ必要がないということであ
               る。

               タイムアウトは秒単位で指定する。デフォルト値は 0 であり、無限のタイムアウトを意味
               する。wfc-timeout パラーメータも参照。

           --wait-after-sb
               このパラメータは、スプリットブレイン状況が検出された場合でも、DRBD が init スクリ
               プトで待機し続けるため、ノード間の接続が拒否される。

           --wfc-timeout timeout
               すべての対向ノードが接続されるまで init スクリプトが待機する時間を定義する。これ
               は、DRBD リソースを管理できないクラスタマネージャと組み合わせて使用する場合に便利
               である。クラスタマネージャが起動すると、DRBD リ ソースはすでに起動して実行されてい
               る。Pacemaker などのより優れたクラスターマネージャを使用すると、クラスターマネー
               ジャが DRBD リソースを制御できるようになる。タイムアウトは秒単位で指定する。デフォ
               ルト値は 0 であり、無限のタイムアウトを意味する。degr-wfc-timeout パラーメータも参
               照。

       drbdsetup forget-peer resource peer_node_id
           forget-peer コマンドは、対向ノードのすべての痕跡をメタデータから削除する。これは、メタ
           データ内のビットマップスロットを解放し、今まで接続したことのないノードが接続した場
           合、より多くのビットマップスロットを割り当てることを可能にする。

           このコマンドを使用するには、接続を解除する必要がある。対向ノードが後で再接続する場
           合、ビットマップベースの再同期は完全同期に変わる。

EXAMPLES

       詳しくは DRBD User's Guide[1] を参照。

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-2018 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.conf(5), drbd(8), drbdadm(8), DRBD User's Guide[1], DRBD Web Site[2]

NOTES

        1. DRBD User's Guide
           http://www.drbd.org/users-guide/

        2. DRBD Web Site
           http://www.drbd.org/