目次
この章では、日常的な運用において必要な一般的な管理作業について説明します。トラブルシューティング作業については取り上げません。これについては、7章 トラブルシューティングとエラーからの回復を参照してください。
DRBDの状態は、 drbd-overviewユーティリティで簡単に確認できます。これは DRBD 8.0.15および8.3.0以降で使用できます。8.3.0では drbd-overview.pl としてインストールされます。
drbd-overview0:home Connected Primary/Secondary UpToDate/UpToDate C r--- /home xfs 200G 158G 43G 79% 1:data Connected Primary/Secondary UpToDate/UpToDate C r--- /mnt/ha1 ext3 9.9G 618M 8.8G 7% 2:nfs-root Connected Primary/Secondary UpToDate/UpToDate C r--- /mnt/netboot ext3 79G 57G 19G 76%
/proc/drbdは現在設定されているすべてのDRBDリソースに関するリアルタイムのステータス情報を表示する仮想ファイルです。次のようにして、ファイルの内容を確認できます。
cat /proc/drbdversion: 8.3.0 (api:88/proto:86-89) GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by buildsystem@linbit, 2008-12-18 16:02:26 0: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r--- ns:0 nr:8 dw:8 dr:0 al:0 bm:2 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0 1: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r--- ns:0 nr:12 dw:12 dr:0 al:0 bm:1 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0 2: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r--- ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
先頭にversion:と記述された最初の行は、システムで使用されているDRBDのバージョンを示します。2行目にはこのビルドに関する情報が記述されています。
この例の他の6行は、構成されている各DRBDデバイスについて繰り返されるブロックで、先頭にデバイスのマイナー番号が付いています。この場合、0はデバイス/dev/drbd0に対応します。
/proc/drbdのデバイス固有の出力には、リソースについてのさまざまな情報が表示されます。
cs (接続状態). ネットワーク接続の状態。接続状態の種類や詳細については、 「接続状態」を参照してください。
ro (ロール). ノードのロール。最初にローカルノードのロールが表示され、スラッシュの後に対向ノードのロールが表示されます。リソースロールの詳細は、 「リソースのロール」を参照してください。
![]() | 注記 |
|---|---|
DRBD 8.2以前のバージョンでは、 |
ds (ディスク状態). ハードディスクの状態。スラッシュの前にローカルノードの状態、スラッシュの後に対向ノードのハードディスクの状態が表示されます。さまざまなディスク状態については、 「ディスク状態」を参照してください。
ns (ネットワーク送信). ネットワーク接続を介して対向ノードに送信された正味データの量(単位はKibyte)。
nr (ネットワーク受信). ネットワーク接続を介して対向ノードが受信した正味データの量(単位はKibyte)。
dw (ディスク書き込み). ローカルハードディスクに書き込まれた正味データ(単位はKibyte)。
dr (ディスク読み取り). ローカルハードディスクから読み取った正味データ(単位はKibyte)。
al (アクティビティログ). メタデータのアクティビティログ領域の更新の数。
bm (ビットマップ). メタデータのビットマップ領域の更新の数。
lo (ローカルカウント). DRBDが発行したローカルI/Oサブシステムに対するオープン要求の数。
pe (保留). 対向ノードに送信されたが、対向ノードから応答がない要求の数。
ua (未確認). ネットワーク接続を介して対向ノードが受信したが、応答がない要求の数。
ap (アプリケーション保留). DRBDに転送されたが、DRBDが応答していないブロックI/O要求の数。
ep (エポック). エポックオブジェクトの数。通常は 1。barrierまたはnone 書き込み順序付けメソッドを使用する場合は、 I/O負荷により増加する可能性があります。8.2.7以降。
wo (書き込み順序付け). 現在使用されている書き込み順序付けメソッド。b (バリア)、f (フラッシュ)、 d (ドレイン)またはn (なし)。8.2.7以降。
oos (非同期). 現在、同期していないストレージの量(単位は Kibibyte)。8.2.6 以降。
リソースの接続状態を確認するには、/proc/drbdを監視するか、 drbdadm cstateコマンドを実行します。
drbdadm cstateresourceConnected
リソースの接続状態には次のようなものがあります。
StandAlone. ネットワーク構成は使用できません。リソースがまだ接続されていない、管理上の理由で切断されている(drbdadm disconnectを使用)、認証の失敗またはスプリットブレインにより接続が解除された、のいずれかが考えられます。
Unconnected. 接続を試行する前の一時的な状態です。次に考えられる状態は、WFConnectionおよびWFReportParamsです。
NetworkFailure. 対向ノードとの接続が失われた後の一時的な状態です。次の状態はUnconnectedです。
WFReportParams. TCP (伝送制御プロトコル)接続が確立され、ノードが対向ノードからの最初のネットワークパケットを待っています。
StartingSyncS. 管理者が開始するフル同期が開始しました。次に考えられる状態はSyncSourceまたはPausedSyncSです。
WFBitMapS. 部分同期を開始しました。次に考えられる状態はSyncSourceまたはPausedSyncSです。
WFSyncUUID. すぐに同期を開始します。次に考えられる状態はSyncTargetまたはPausedSyncTです。
PausedSyncS. ローカルノードが進行中の同期の同期元ですが、現在は同期が一時停止しています。原因として、別の同期プロセスの完了との依存関係、またはdrbdadm pause-syncを使用して手動で同期が中断されたことが考えられます。
PausedSyncT. ローカルノードが進行中の同期の同期先ですが、現在は同期が一時停止しています。原因として、別の同期プロセスの完了との依存関係、またはdrbdadm pause-syncを使用して手動で同期が中断されたことが考えられます。
リソースのロールは、/proc/drbdを監視するか、drbdadm role コマンドを発行することのいずれかによって確認できます。
drbdadm roleresourcePrimary/Secondary
左側はローカルリソースのロール、右側はリモートリソースのロールです。
![]() | 注記 |
|---|---|
DRBD 8.2以前のバージョンでは、 drbdadm stateコマンドで同じ情報を確認できます。「state」 という用語は紛らわしいため、バージョン8.3.0以降のDRBDでは「role」という用語を使用します。drbdadm stateも使用できますが、これは互換性を保つためです。drbdadm roleを使用することをお勧めします。 |
リソースロールには次のようなものがあります。
Primary. 現在、リソースはプライマリロールで読み書き可能です。2つのノードの一方だけがこのロールになることができます。ただし、デュアルプライマリモードが有効な場合は例外です。
Secondary. 現在、リソースがセカンダリロールです。対向ノードから正常に更新を受け取ることができますが(切断モード以外の場合)、このリソースに対して読み書きは実行できません。1つのノードまたは両方のノードがこのロールになることができます。
Unknown. 現在、リソースのロールが不明です。ローカルリソースロールがこの状態になることはありません。これは、切断モードの場合にのみ、対向ノードのリソースロールだけに表示されます。
リソースのディスクの状態は、/proc/drbdを監視することにより、またはdrbdadm dstateコマンドを発行することのいずれかによって確認できます。
drbdadm dstateresourceUpToDate/UpToDate
左側はローカルディスクの状態、右側はリモートディスクの状態です。
ローカルディスクとリモートディスクの状態には、次のようなものがあります。
Diskless. DRBDドライバにローカルブロックデバイスが割り当てられていません。原因として、リソースが下位デバイスに接続されなかった、 drbdadm detachを使用して手動でリソースを切り離した、または下位レベルのI/Oエラーにより自動的に切り離されたことが考えられます。
Inconsistent. データが一致しません。新規リソースを作成した直後に(初期フル同期の前に)両方のノードがこの状態になります。また、同期中には片方のノード(同期先)がこの状態になります。
Outdated. リソースデータは一致していますが、無効です。
Consistent. 接続していない状態でノードのデータが一致しています。接続が確立すると、データがUpToDateかOutdatedか判断されます。