Vidage d’un compartiment à usage général - Amazon Simple Storage Service

Vidage d’un compartiment à usage général

Vous pouvez vider le contenu d’un compartiment à usage général à l’aide de la console Amazon S3, des kits AWS SDK ou de l’AWS Command Line Interface (AWS CLI). Lorsque vous videz un compartiment à usage général, vous supprimez tous ses objets, mais vous conservez le compartiment. Après avoir vidé un compartiment, les éléments supprimés ne peuvent être restaurés. Les objets ajoutés au compartiment pendant que l’action est en cours, risquent d’être supprimés. Tous les objets (y compris toutes les versions d’objets et les marqueurs de suppression) du compartiment doivent être supprimés avant que le compartiment lui-même ne puisse être supprimé.

Lorsque vous videz un compartiment à usage général dont la gestion des versions S3 est activée ou suspendue, toutes les versions de tous les objets qu’il contient sont supprimées. Pour plus d’informations, consultez Utiliser des objets dans un compartiment activé pour la gestion des versions.

Lorsque vous videz votre compartiment, nous vous recommandons de supprimer également tous les chargements partitionnés incomplets. Vous pouvez utiliser les chargements partitionnés pour charger des objets de très grande taille (jusqu’à 5 To) en tant qu’ensemble de parties pour améliorer le débit et accélérer la récupération suite à des problèmes réseau. Dans les cas où le processus de chargement partitionné ne se termine pas, les parties incomplètes restent dans le compartiment (dans un état inutilisable). Ces parties incomplètes entraînent des coûts de stockage jusqu’à la fin du processus de chargement ou jusqu’à leur suppression. Pour plus d’informations, consultez Chargement et copie d’objets à l’aide du chargement partitionné dans Amazon S3.

À titre de bonne pratique, nous vous recommandons de configurer des règles de cycle de vie pour faire expirer les objets et les chargements partitionnés incomplets datant de plus d’un certain nombre de jours. Lorsque vous créez votre règle de cycle de vie pour faire expirer les chargements partitionnés non terminés, nous recommandons un délai de 7 jours comme point de départ. Pour plus d’informations, consultez Définition d’une configuration du cycle de vie S3 sur un compartiment.

L’expiration du cycle de vie étant un processus asynchrone, l’exécution de la règle peut mettre plusieurs jours à vider votre compartiment. Après la première exécution de la règle par Amazon S3, tous les objets éligibles à l’expiration sont marqués comme devant être supprimés. Les objets marqués comme devant être supprimés ne vous sont plus facturés. Pour plus d’informations, consultez Comment vider un compartiment Amazon S3 à l’aide d’une règle de configuration du cycle de vie ?

Vous pouvez utiliser la console Amazon S3 pour vider un compartiment à usage général (ce qui entraîne la suppression de tous les objets qu’il contient) sans le supprimer.

Pour vider un compartiment S3
  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon S3 à l’adresse https://console.aws.amazon.com/s3/.

  2. Dans le volet de navigation de gauche, choisissez Compartiments à usage général.

  3. Dans la liste des compartiments, sélectionnez l’option en regard du nom du compartiment à vider, puis choisissez Vider.

  4. Sur la page Empty bucket (Vider le compartiment), confirmez que vous souhaitez vider le compartiment en saisissant le nom de ce dernier dans le champ de texte, puis choisissez Empty (Vider).

  5. Surveillez la progression du processus de vidage du compartiment sur la page Vider le compartiment : état.

Vous pouvez vider un compartiment à usage général à l’aide de l’AWS CLI uniquement si la gestion des versions n’est pas activée. Si la gestion des versions n’est pas activée, vous pouvez utiliser la commande rm (supprimer) de la AWS CLI avec le paramètre --recursive pour vider un compartiment (ou supprimer un sous-ensemble d’objets avec un préfixe de nom de clé spécifique).

La commande rm suivante supprime les objets ayant un préfixe de nom de clé doc, par exemple, doc/doc1 et doc/doc2.

$ aws s3 rm s3://bucket-name/doc --recursive

Utilisez la commande suivante pour supprimer tous les objets sans spécifier un préfixe.

$ aws s3 rm s3://bucket-name --recursive

Pour plus d’informations, consultez Utilisation des commandes S3 de haut niveau avec l’AWS CLI dans le Guide de l’utilisateur de l’AWS Command Line Interface.

Note

Vous ne pouvez pas supprimer des objets d’un compartiment pour lequel la gestion des versions est activée. Amazon S3 ajoute un marqueur de suppression lorsque vous supprimez un objet, à l’instar de cette commande. Pour plus d’informations sur la gestion des versions des compartiments S3, consultez Conservation de plusieurs versions d’objets grâce à la gestion des versions S3.

Vous pouvez utiliser les kits AWS SDK pour vider un compartiment à usage général ou supprimer un sous-ensemble d’objets possédant un préfixe de nom de clé spécifique.

Pour obtenir un exemple sur la façon de vider un compartiment grâce au kit AWS SDK pour Java, consultez Suppression d’un compartiment à usage général. Le code supprime tous les objets, que le compartiment soit activé ou non pour la gestion des versions, puis il supprime le compartiment. Pour simplement vider le compartiment, assurez-vous de supprimer l’instruction de suppression du compartiment.

Pour plus d’informations sur l’utilisation d’autres kits AWS SDK, consultez Outils pour Amazon Web Services.

Pour vider un compartiment à usage général volumineux, nous vous recommandons d’utiliser une règle de configuration S3 Lifecycle. L’expiration du cycle de vie étant un processus asynchrone, l’exécution de la règle peut mettre plusieurs jours à vider le compartiment. Après la première exécution de la règle par Amazon S3, tous les objets éligibles à l’expiration sont marqués comme devant être supprimés. Les objets marqués comme devant être supprimés ne vous sont plus facturés. Pour plus d’informations, consultez Comment vider un compartiment Amazon S3 à l’aide d’une règle de configuration du cycle de vie ?

Si vous utilisez une configuration de cycle de vie pour vider votre compartiment, la configuration doit inclure des versions actuelles, des versions anciennes, des marqueurs de suppression et des chargements partitionnés incomplets.

Vous pouvez ajouter des règles de configuration du cycle de vie pour que tous les objets ou un sous-ensemble d’objets ayant un préfixe de nom de clé spécifique expirent. Par exemple, pour supprimer tous les objets dans un compartiment, vous pouvez configurer une règle du cycle de vie pour que les objets expirent un jour après leur création.

Amazon S3 prend en charge une règle de cycle de vie de compartiment que vous pouvez utiliser pour arrêter les chargements partitionnés s’ils n’aboutissent pas au bout du nombre de jours spécifié après leur lancement. Nous vous recommandons de configurer cette règle de cycle de vie afin de réduire vos coûts de stockage. Pour plus d’informations, consultez Configuration d’une configuration de cycle de vie de compartiment pour supprimer les chargements partitionnés incomplets.

Pour plus d’informations sur l’utilisation d’une configuration de cycle de vie pour vider un compartiment, consultez Définition d’une configuration du cycle de vie S3 sur un compartiment et Objets en cours d’expiration.

Vidage d’un compartiment à usage général avec AWS CloudTrail configuré

AWS CloudTrail assure le suivi des événements de données au niveau des objets d’un compartiment à usage général Amazon S3 (suppression d’objets, par exemple). Si vous utilisez un compartiment à usage général comme destination pour la journalisation de vos événements CloudTrail et que vous supprimez des objets de ce même compartiment, vous risquez de créer de nouveaux objets tout en vidant votre compartiment. Pour éviter cela, arrêtez vos journaux de suivi AWS CloudTrail. Pour plus d’informations sur la façon d’empêcher vos journaux de suivi CloudTrail de journaliser des événements, consultez Désactivation de la journalisation pour un journal d’activité dans le Guide de l’utilisateur AWS CloudTrail.

Une autre alternative pour empêcher l’ajout des journaux de suivi CloudTrail au compartiment consiste à ajouter une instruction de refus s3:PutObject à votre stratégie de compartiment. Si vous souhaitez stocker ultérieurement de nouveaux objets dans le compartiment, vous devrez supprimer cette instruction de refus s3:PutObject. Pour plus d’informations, consultez Opérations d’objet et Éléments de politique JSON IAM : Effect dans le Guide de l’utilisateur IAM.