11.15.4. レプリケーションボリュームでのセルフ取得のトリガー

複製されたボリュームの場合、ブリックがオフラインになりオンラインに戻ると、すべてのレプリカを再同期するには自己修復が必要になります。バックグラウンドで実行され、修復が必要なファイルで 10 分ごとに自己修復を自動的に開始する自己修復デーモンがあります。

マルチスレッドの自己修復

自己修復デーモンには、複数の修復を並行して処理できる機能があり、Replicate および Distribute-replicate ボリュームでサポートされます。ただし、ヒューズの数が増えると I/O パフォーマンスに影響が及ぶため、以下のオプションが提供されます。cluster.shd-max-threads ボリュームオプションは、自己修復デーモンにより各レプリカで並行して自己修復できるエントリーの数を制御します。cluster.shd-wait-qlength ボリュームオプションを使用して、自己修復デーモンスレッドが修復された状態ですぐに起動できるように、キューに格納する必要があるエントリーの数を設定できます。

cluster.shd-max-threads および cluster.shd-wait-qlength ボリュームセットオプションの詳細は、「ボリュームオプションの設定」 を参照してください。
ボリュームおよびファイルの修復ステータスの確認に使用できるコマンドや、手動で修復を開始するのに使用できるコマンドは複数あります。
  • 修復が必要なファイルの一覧を表示するには、次のコマンドを実行します。
    # gluster volume heal VOLNAME info
    たとえば、修復が必要な test-volume 上のファイルの一覧を表示するには、以下を実行します。
    # gluster volume heal test-volume info
    Brick server1:/gfs/test-volume_0
    Number of entries: 0
    
    Brick server2:/gfs/test-volume_1
    /95.txt
    /32.txt
    /66.txt
    /35.txt
    /18.txt
    /26.txt - Possibly undergoing heal
    /47.txt
    /55.txt
    /85.txt - Possibly undergoing heal
    ...
    Number of entries: 101
  • 修復が必要なファイルでのみ自己修復をトリガーするには、以下を実行します。
    # gluster volume heal VOLNAME
    たとえば、test-volume で修復が必要なファイルで自己修復をトリガーするには、以下を実行します。
    # gluster volume heal test-volume
    Heal operation on volume test-volume has been successful
  • ボリューム上のすべてのファイルで自己修復をトリガーするには、以下を実行します。
    # gluster volume heal VOLNAME full
    たとえば、test-volume のすべてのファイルで自己修復をトリガーするには、以下を実行します。
    # gluster volume heal test-volume full
    Heal operation on volume test-volume has been successful
  • スプリットブレイン状態にあるボリュームのファイルの一覧を表示するには、以下を実行します。
    # gluster volume heal VOLNAME info split-brain
    たとえば、スプリットブレイン状態にある test-volume 上のファイルの一覧を表示するには、以下を実行します。
    # gluster volume heal test-volume info split-brain
    Brick server1:/gfs/test-volume_2
    Number of entries: 12
    at                   path on brick
    ----------------------------------
    2012-06-13 04:02:05  /dir/file.83
    2012-06-13 04:02:05  /dir/file.28
    2012-06-13 04:02:05  /dir/file.69
    Brick server2:/gfs/test-volume_2
    Number of entries: 12
    at                   path on brick
    ----------------------------------
    2012-06-13 04:02:05  /dir/file.83
    2012-06-13 04:02:05  /dir/file.28
    2012-06-13 04:02:05  /dir/file.69
    ...