J'ai un partage de fichiers NFS (Network File System) ou SMB (Server Message Block) sur ma passerelle de fichiers AWS Storage Gateway. La passerelle de fichiers est associée à un compartiment Amazon Simple Storage Service (Amazon S3). Cependant, lorsque je charge des fichiers directement dans le compartiment, ils ne sont pas visibles sur mon partage de fichiers.
Résolution
Lorsque vous utilisez le partage de fichiers pour écrire localement des fichiers dans le cache, Storage Gateway met automatiquement à jour le cache du partage de fichiers. Cependant, Storage Gateway ne met pas à jour le cache automatiquement lorsque vous chargez un fichier directement sur Amazon S3. Lorsque vous chargez un fichier directement sur Amazon S3, vous devez effectuer une opération RefreshCache pour voir les modifications apportées au partage de fichiers.
Storage Gateway vous permet d'automatiser l'opération RefreshCache en fonction d'une valeur Time To Live (TTL). TTL est le temps écoulé depuis la dernière actualisation. Lorsque vous accédez au répertoire de fichiers après la valeur TTL, la passerelle de fichiers actualise le contenu du répertoire depuis le compartiment Amazon S3. Les valeurs TTL valides pour automatiser l'opération RefreshCache sont comprises entre 300 secondes et 2 592 000 secondes.
Remarque : Une fois votre valeur TTL expirée, la passerelle de fichiers invoque l'appel d'API Amazon S3 ListObjects au niveau du dossier. Si vous définissez TTL sur une valeur faible, les demandes d'API Amazon S3 et les coûts associés peuvent augmenter.
Vous pouvez utiliser la console Storage Gateway pour automatiser l’opération RefreshCache ou les API Storage Gateway UpdateNFSFileShare ou UpdateSMBFileShare. Pour les deux appels d'API, vous devez mettre à jour le paramètre CacheAttributes et spécifier la valeur TTL dans CacheStaleTimeoutInSeconds.
Pour utiliser la console, procédez comme suit :
- Ouvrez la console Storage Gateway.
- Sélectionnez Partage de fichiers.
- Choisissez le partage de fichiers pour lequel vous souhaitez automatiser l'opération RefreshCache.
- Sélectionnez Actions, puis Modifier les paramètres de partage de fichiers.
- Sous Heure d'actualisation du cache de fichiers hors passerelle, sélectionnez Définir l'intervalle d'actualisation.
- Définissez l'heure en jours, heures et minutes pour actualiser le cache du partage de fichiers avec TTL. Les valeurs valides sont comprises entre 5 minutes et 30 jours.
- Sélectionnez Enregistrer.
Pour exécuter RefreshCache à un moment précis, vous pouvez actualiser le cache manuellement.
Le temps nécessaire pour exécuter le processus d'actualisation dépend des conditions suivantes :
- Nombre d'objets mis en cache sur la passerelle.
- Nombre d'objets que vous avez ajoutés au compartiment ou que vous avez retiré du compartiment après la dernière actualisation.
Remarque : Lorsque vous actualisez le cache, vous lancez RefreshCache. Cependant, l'actualisation des fichiers est un processus distinct. Vous pouvez configurer des notifications d'actualisation du cache pour obtenir des mises à jour sur le processus d'actualisation des fichiers. Lorsque vous recevez une notification refresh-complete, le processus d'actualisation du fichier est terminé.