リソースの設定

DRBDは、 すべて1つの設定ファイル/etc/drbd.confによって制御されます。 両方の参加クラスタノードの設定ファイルが、 正確に同一であることを必ず確認してください。

DRBDのソースtarファイルのscriptsサブディレクトリに、 サンプル設定ファイルがあります。 バイナリインストールパッケージの場合、 サンプル設定ファイルは直接/etcにインストールされるか、 または/usr/share/doc/packages/drbdなどの パッケージ固有の文書ディレクトリにインストールされます。

[注意]注意

このセクションは、設定ファイルについて、 DRBDの使用を開始するために必ず理解しておく必要のある項目に関する説明です。 設定ファイルの構文と内容の詳細については、 drbd.conf(5)を参照してください。

設定の例

本ガイドの説明は、上述の非常に簡単なセットアップを前提としています。

global { 
  usage-count yes; 
}
common {
  protocol C;
}
resource r0 {
  on alice {
    device    /dev/drbd1;
    disk      /dev/sda7;
    address   10.1.1.31:7789;
    meta-disk internal;
  }
  on bob {
    device    /dev/drbd1;
    disk      /dev/sda7;
    address   10.1.1.32:7789;
    meta-disk internal;
  }
}

この例では、DRBDが次のように構成されます。

  • DRBDの使用状況の統計をオプトインとして含める (次項を参照).

  • 完全に同期したレプリケーションを使用するように リソースを設定する(Protocol C)。 ただし、明示的な指定がある場合は除く。

  • クラスタには2つのノード(alicebob)がある。

  • 任意の名前r0を持つリソースがあり、 /dev/sda7 を下位レベルデバイスとして使用する。 このリソースは、内部メタデータによって 設定されている。

  • リソースはネットワーク接続にTCPポート7789を使用し、 それぞれIPアドレス10.1.1.31と10.1.1.32にバインドされる。

globalセクション

このセクションは1回しか使用できません。 できれば、設定ファイルの一番最初に記述することをお勧めします。 このセクションで使用できるオプションはわずかですが、 ほとんどのユーザの場合、必要なのは次の1つだけです。

usage-countDRBDプロジェクトはさまざまなバージョンの DRBDの使用状況について統計を取ります。 これは、システムに新規のDRBDバージョンがインストールされるたびに、 HTTPサーバに接続することにより実行されます。 これを無効にするには、usage-count no; と指定します。 デフォルトはusage-count ask;で、 DRBDをアップグレードするたびにプロンプトが表示されます。

[注意]注意

DRBDの使用状況の統計は公開されています。 http://usage.drbd.orgを参照してください。

common セクション

このセクションで、各リソースに継承される設定を簡単に定義できます。 ここで定義するオプションは、リソースごとに定義することもできます。

commonセクションは必須ではありませんが、 複数のリソースを使用する場合は、記述することを強くお勧めします。 これにより、オプションを繰り返し使用することによって 設定が複雑になることを回避できます。

上記の例では、protocol C;commonセクションで指定されているため、 設定されているすべてのリソース(r0 を含む)が このオプションを継承します。 ただし、明示的に別のprotocolオプションが指定されている場合は除きます。 使用可能なその他の同期プロトコルについては、 「 レプリケーションのモード 」を参照してください。

resource セクション

定義するDRBDリソースは、 設定ファイルでresource nameを指定して 名前を付ける必要があります。 任意の名前を使用できますが、 空白を除くUS-ASCII文字セットを使う必要があります。

各リソースには 2つのon hostサブセクションも必要です (各クラスタノードに1つずつ)。

その他すべての設定は commonセクション(記述した場合)から継承されるか、 DRBDのデフォルト設定から取得されます。

on hostサブセクションの場合も、 簡単な記述方法があります。 オプションの値が両方のホストで等しい場合は、 直接resourceセクションで指定することができます。 これにより、上記の例よりもこのセクションを短くすることができます。

resource r0 {
  device    /dev/drbd1;
  disk      /dev/sda7;
  meta-disk internal;
  on alice {
    address   10.1.1.31:7789;
  }
  on bob {
    address   10.1.1.32:7789;
  }
}

この記述方法はDRBDバージョン8.2.1以上で使用できます。