この機能はDRBD 8.2.5以降で使用できます。
リソースのオンラインデバイス照合 は、
デフォルトでは有効になっていません。
有効にする場合は、/etc/drbd.confのリソース構成に次の行を追加します。
resourceresourcesyncer { verify-algalgorithm; } ... }
algorithm は、
システムのカーネル構成内のカーネルcrypto APIでサポートされる
任意のメッセージダイジェストアルゴリズムです。
通常は、sha1、md5、crc32cから選択します。
既存のリソースに対してこの変更を行う場合は、
drbd.conf を対向ノードと同期し、
両方のノードで drbdadm adjust resourceを
実行する必要があります。
オンライン照合を有効にしたら、 次のコマンドでオンライン照合を開始します。
drbdadm verify resource
コマンドを実行すると、DRBDがresourceに対して
オンライン照合を実行します。
同期していないブロックを検出した場合は、
ブロックに非同期のマークを付け、カーネルログにメッセージを書き込みます。
このときにデバイスを使用しているアプリケーションは中断なく動作し続けます。
また、リソースロールの切り替えも
行うことができます。
照合中に同期していないブロックが検出された場合は、 照合の完了後に、次のコマンド使用して再同期できます。
drbdadm disconnect resource
drbdadm connect resource
通常は、オンラインデバイス照合を自動的に実行するほうが便利です。
自動化は簡単です。
一方のノードに/etc/cron.d/drbd-verifyという名前で、
次のような内容のファイルを作成します。
42 0 * * 0 root /sbin/drbdadm verify resource
これにより、毎週日曜日の午前0時42分に、cronがデバイス照合を呼び出します。
たとえば、/etc/drbd.confのcommonセクションに
verify-alg を追加して、
すべてのリソースに対してオンラインに同期していないブロックが検出された場合は、
照合の完了後に、次のコマンド使用して再同期できます。
algorithm
drbdadm disconnect resource
drbdadm connect resource