[Linux]フェイルオーバ時にfsckが実行され、フェイルオーバの完了に時間がかかります。チューニング方法はありますか?

LifeKeeperでは、ファイルシステムリソースを起動する際、明示的にfsckコマンド(※1)を必ず実行します。そのため、スイッチオーバ、フェイルオーバのいずれの場合でもfsckは実行されます。この処理はLifeKeeperに組み込まれており、設定で抑止することはできません。

※1:fsckを実行するのはファイルシステムタイプが ext2、ext3、ext4、reiserfs、vxfs の場合。
         xfs については、ファイルシステムのチェックと修正はマウントに依存し、fsckユーティリティを使用しないため、当ナレッジには該当致しません。
         xfs では、ファイルシステムリソースを手動で out of service にした後アンマウントし、xfs_check(8) と xfs_repair(8) を実行する必要があります。

ファイルシステムタイプがext2またはext3の場合、mkfs実行時に設定されたチェック間隔(※2)を越えた際、またはtune2fsコマンドで明示的に設定したチェック間隔を越えた際、詳細チェックが実行されます。ファイルシステムの大きさによって非常に長い時間がかかるため、フェイルオーバ完了までに時間がかかってしまうことがあります。

※2:チェック間隔の初期値は、期間は15552000秒(180日)、最大マウント回数の初期値は20~39回

この詳細チェックの実行に関係する値をチューニングすることで、フェイルオーバ完了までの時間を改善することが可能です。例として、ファイルシステムの詳細チェックを無効にする設定方法を下記に記載します。

(1) 以下のコマンドを実行し、当該ファイルシステムのMaximum mount countを無効にします。

# tune2fs -c 0 <デバイス名>
tune2fs 1.39 (29-May-2006)
Setting maximal mount count to -1

(2) 以下のコマンドを実行し、Maximum mount countが-1に設定されたことを確認します。

# tune2fs -l <デバイス名>

(3) 以下のコマンドを実行し、当該ファイルシステムのCheck intervalを0に設定します。

# tune2fs -i 0 <デバイス名>

(4) 以下のコマンドを実行し、Check intervalが0に設定されたことを確認します。

# tune2fs -l <デバイス名>

tune2fsコマンドの使用方法の詳細はman等でご確認ください。

なお、上記のように詳細チェックを無効にした状態で運用をする際は、計画的にfsckを実行して詳細チェックを実施し定期的にメンテナンスされることをお薦めします。

return top