このページでは、Filestore の使用中に発生する可能性のあるパフォーマンスの低下への対応に役立つトラブルシューティング情報を提供します。
読み書きのパフォーマンスが遅い
- クライアント VM に推奨マシンタイプを使用していることを確認します。
クライアント VM が Linux を実行している場合は、デフォルトのマウント オプションを使用していることを確認します。
クライアント VM が Filestore インスタンスと同じリージョンに配置されていることを確認します。リージョン間でマウントすると、パフォーマンスが低下するだけでなく、ネットワーク コストも発生します。
Filestore インスタンスが最大容量を超えるか、超えようとしていないことを確認します。残り容量が僅かになると、残りのスペースが断片化することが多く、読み取り / 書き込みオペレーションが遅くなります。このような状況を回避するために必要な空き領域は、状況によって異なります。ディスク容量不足のアラートを設定することをおすすめします。
fio
ツールを使用して Filestore インスタンスのパフォーマンスをテストします。テストの結果、パフォーマンスの異常な低下が見られる場合は、アカウント担当者にお問い合わせください。テスト結果が想定どおり、またはそれよりも高いことが判明した場合は、次のセクションに進みます。
パフォーマンスの低下につながるユースケース
パフォーマンスの低下につながるユースケースとシナリオを、以下に示します。
サイズの小さいファイルを多数含むワークロード
Filestore のファイル共有は、データの安全性と NFS プロトコル準拠のために sync
エクスポート オプションを使用します。ほとんどのデータ変更オペレーションでは、Filestore インスタンスはデータがストレージに commit された後にクライアント VM からのリクエストに応答します。オペレーションに多くのファイルが含まれていると、クライアントが一連の長い同期オペレーションを行い、累積レイテンシが追加されます。
このシナリオの例は、tar ファイルなどのファイル共有のアーカイブを抽出することです。TAR は、多数のファイルを含むアーカイブを抽出する際に、連続して多くの同期オペレーションを行います。その結果、パフォーマンスが低下します。
多数の小さなファイルをファイル共有にコピーしようとしている場合は、gsutil
などのツールを使用してファイル作成を並列化してみてください。
mkdir -p /mnt/nfs/many_files_rsync/
time gsutil -m -q rsync -rp many_files /mnt/nfs/many_files_rsync/
Cloud Storage と Filestore の間でデータをコピーする
gsutil
を使用して Cloud Storage から Filestore インスタンスにデータをコピーする方法は、低速となることがわかっています。パフォーマンスを向上させる方法の詳細については、Google Cloud リソース全体のパフォーマンスの改善をご覧ください。