Storage Gateway で RefreshCache 操作を自動化する方法

最終更新日: 2021 年 6 月 21 日

AWS Storage Gateway のファイルゲートウェイに、ネットワークファイルシステム (NFS) またはサーバーメッセージブロック (SMB) ファイル共有があります。ファイルゲートウェイは、Amazon Simple Storage Service (Amazon S3) バケットに関連付けられています。ただし、バケットにファイルを直接アップロードすると、ファイル共有にファイルが表示されません。ファイル共有の更新を自動化するにはどうすればよいですか?

解決方法

ファイル共有を使用してローカルにファイルをキャッシュに書き込むと、Storage Gateway はファイル共有キャッシュを自動的に更新します。ただし、ファイルを Amazon S3 に直接アップロードしても、Storage Gateway はキャッシュを自動的に更新しません。これを行う場合、RefreshCache 操作を実行して、ファイル共有の変更を確認する必要があります。

Storage Gateway では、TTL (Time to Live) 値に基づいて RefreshCache 操作を自動化できます。TTL は、最後の更新からの時間の長さです。ユーザーが TTL 値の後にファイルディレクトリにアクセスすると、ファイルゲートウェイは S3 バケットからディレクトリの内容を更新します。RefreshCache 操作を自動化するための有効な TTL 値は、300 秒から 2,592,000 秒 (5 分から 30 日) の範囲です。

注: 指定した TTL 値の有効期限が切れると、ファイルゲートウェイはフォルダレベルで ListObjects Amazon S3 API コールを呼び出します。TTL を低い値に設定すると、Amazon S3 API リクエストが増える可能性があります。

Storage Gateway コンソールを使用して RefreshCache 操作を自動化するには、次の手順を実行します。

  1. Storage Gateway コンソールを開きます。
  2. [ファイル共有] を選択します。
  3. RefreshCache 操作を自動化するファイル共有を選択します。
  4. [アクション] を選択してから、[ファイル共有設定の編集] をクリックします。
  5. [Automated cache refresh from S3 after] で、[Set refresh interval] を選択します。
  6. TTL を使用してファイル共有のキャッシュを更新する時間を、日、時、分で設定します。
  7. [保存] を選択します。

Storage Gateway API を使用して RefreshCache 操作を自動化するには、UpdateNFSFileShare API コール、または UpdateSMBFileShare API コールを使用します。両方の API コールで、CacheAttributes パラメータを更新して RefreshCache 操作を自動化する必要があります。

操作を自動化するのではなく、ある時点で RefreshCache を実行する方法については、「Amazon S3 バケットの変更が Storage Gateway ファイル共有に表示されないのはなぜですか?」を参照してください。

RefreshCache 操作に関する次の考慮事項に注意してください。

  • 更新プロセスの完了にかかる時間は、次の内容によって異なります。
    • ゲートウェイにキャッシュされたオブジェクトの数
    • 前回の更新以降にバケットに追加された、またはバケットから削除されたオブジェクトの数。
  • キャッシュを更新すると、更新操作が開始されます。ただし、ファイルの更新は別のプロセスです。更新キャッシュ通知を設定して、ファイルの更新処理で更新を取得できます。更新完了通知は、ファイルの更新処理が完了したことを示します。

この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?