DRBDが下位レベルI/Oエラーを処理する際の方針 は、
/etc/drbd.confのdiskセクションの
on-io-error オプションで指定します。
resourceresource{ disk { on-io-errorstrategy; ... } ... }
すべてのリソースのグローバルI/Oエラー処理方針を定義したい場合は、
これをcommonセクションで設定します。
strategyは次のいずれかのオプションです。
detach. これが推奨オプションです。
下位レベルI/Oエラーが発生すると、
ノードが下位デバイスを切り離し、ディスクレスモードで動作を継続します。
pass_on. DRBDが上位層にI/Oエラーを通知します。
プライマリノードの場合は、マウントされたファイルシステムに通知されます。
セカンダリノードの場合は無視されます
(セカンダリノードには通知すべき上位層がないため)。
以前はこれがデフォルトでしたが、
現在のほとんどの新しいシステムの場合、
detach の代わりにこの設定をどうしても使用しなければならない理由がある場合を除き、
推奨しません。
call-local-io-error. ローカルI/Oエラーハンドラとして定義されたコマンドを呼び出します。
このためには、対応するlocal-io-errorコマンド呼び出しが
リソースのhandlersセクションで定義されている必要があります。
local-io-errorで呼び出されるコマンド(またはスクリプト)を使用して
I/Oエラー処理を実装するかどうかは管理者の裁量で決定できます。
![]() | 注意 |
|---|---|
DRBDの以前のバージョン(0.7以前)には
もう1つのオプション |
場合によっては、 次のような操作の後で実行中のリソースのI/Oエラー処理方針を再構成する必要があります。
/etc/drbd.conf のリソース構成の編集
構成の対向ノードノードへのコピー
両方のノードでdrbdadm adjust resourceを実行
![]() | 注意 |
|---|---|
DRBDの8.3.0以前のバージョンでは、
プライマリロールのノードで |