第10章 ジャーナリングに起因するシステムの速度低下を最小限に抑えるか回避する

ジャーナルの変更がディスクに書き込まれる順序は、到着する順序と異なる場合があります。カーネル I/O システムは、ジャーナルの変更の並べ替えを行い、利用可能なストレージ領域の使用を最適化できます。ジャーナルアクティビティーは、ジャーナルの変更を並べ替え、データおよびメタデータをコミットすることで、システムレイテンシーが発生する可能性があります。その結果、ファイルシステムのジャーナリングによってシステムの速度が低下する可能性があります。

XFS は、RHEL 8 で使用されるデフォルトのファイルシステムです。これはジャーナリングファイルシステムです。ext2 と呼ばれる古いファイルシステムは、ジャーナリングを使用しません。特にジャーナリングが必要な場合を除き、ext2 ファイルシステムを検討してください。Red Hat の最良なベンチマーク結果の多くでは、ext2 ファイルシステムが使用されています。これは、重要な初期チューニングの推奨項目の 1 つです。

XFS のようなジャーナリングファイルシステムは、ファイルが最後にアクセスされた時刻を記録します (atime 属性)。ジャーナリングファイルシステムを使用する必要がある場合は、atime を無効にすることを検討してください。

10.1. atime の無効化

atime 属性を無効にすると、ファイルシステムジャーナルへの書き込み回数が制限されるため、パフォーマンスが向上し、電力使用量が減少します。

手順

  1. 任意のテキストエディターを使用して /etc/fstab ファイルを開き、ルートマウントポイントのエントリーを見つけます。

    /dev/mapper/rhel-root       /       xfs    defaults…
  2. オプションのセクションを編集して、noatime および nodiratime という用語を追加します。noatime オプションは、ファイルの読み取り時のアクセスタイムスタンプの更新を阻止し、nodiratime オプションは、ディレクトリーの inode へのアクセス時刻の更新を停止します。

    /dev/mapper/rhel-root       /       xfs    noatime,nodiratime…
重要

一部のアプリケーションは、更新される atime に依存します。したがって、このオプションは、このようなアプリケーションが使用されていないシステムでのみ妥当です。

または、前のアクセス時刻が現在の変更時刻よりも古い場合にのみ、アクセス時刻が更新されるようにする relatime マウントオプションを使用することができます。