EFS に想定以上の容量が計上されているのはなぜですか
困っていること
EFS で利用している容量以上の容量が計上されています。なぜでしょうか。
原因
128 KiB 未満の小さいファイルが大量に作成され、ライフサイクルルールによって低頻度アクセスストレージ(IA)、アーカイブストレージに移行されたためです。
詳細
EFS の低頻度アクセスストレージ(IA)およびアーカイブストレージクラスでは、ファイルあたりの最小課金サイズが 128 KiB と定められており、128 KiB 未満のファイルが低頻度アクセスストレージ(IA)やアーカイブのストレージクラスに移行されると、実際のファイルサイズにかかわらず 128 KiB として計測されます。
低頻度アクセスストレージクラスとアーカイブストレージクラスの計測
EFS 低頻度アクセス (IA) ストレージクラスとアーカイブストレージクラスは 4 KiB 単位で計測され、ファイルあたりの最低請求額は 128 KiB です。
対策
- ライフサイクルポリシーを用いて対象ファイルを標準ストレージクラスに戻す
- 128 KiB 未満の小さなファイルを圧縮ファイルにまとめ、128 KiB 以上とする
- アクセス頻度の低い小さいファイルを S3 標準ストレージクラスに移行し、 EFS から削除する(S3 標準ストレージクラスには最小課金サイズの制限がない)
補足
CloudWatch メトリクス「 StorageBytes 」で IASizeOverhead / ArchiveSizeOverhead ディメンションを指定することで低頻度アクセスストレージ(IA)およびアーカイブストレージクラス内で小さいファイルを丸めるために消費された合計バイト数も確認できます。
請求および使用状況レポートでも低頻度アクセスストレージ(IA)およびアーカイブストレージクラスで 128 KiB に丸められた使用量を確認できます。
Amazon EFS の請求および使用状況レポートを理解する
| 使用タイプ | [CloudWatch メトリクス] | 説明 |
|---|---|---|
| region-ArchiveTimedStorage-SmallFiles | StorageBytes.ArchiveSizeOverhead | EFS アーカイブストレージに保存された小さなオブジェクト (128 KB 未満) の GB-月の数。 |
| region-IATimedStorage-SmallFiles | StorageBytes.IASizeOverhead | EFS IA ストレージに保存された小さなファイル (128 KB 未満) の GB-月の数。 |







