ECS : Suppression d’un compartiment S3 contenant de nombreux objets

Summary: Un bucket S3 comporte de nombreux objets, mais doit être supprimé. Cet article explique comment supprimer tous les objets d’un compartiment et supprimer finalement le compartiment.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

ATTENTION : Cette procédure vide tous les objets du bucket cible. Les données ne peuvent pas être récupérées, utilisez-les avec précaution.


Limitations des opérations ci-dessous :
  • Les objets sous rétention ECS ne peuvent pas être supprimés.
  • Les objets sous rétention de verrouillage d’objet ne peuvent pas être supprimés.
  • Les buckets activés en tant que système de fichiers nécessitent la version 3.8.1 ou une version ultérieure. 

Option recommandée : Version 3.8 ou supérieure :
Dans la version 3.8 du logiciel ECS, Dell a introduit la suppression simplifiée des bucketsDésormais, les objets et le bucket peuvent être supprimés à l’aide de l’API REST ou d’une chaîne S3 de bucket vide en utilisant x-emc-headers. Dell Technologies recommande la mise à niveau vers la version 3.8. et à l’aide de la suppression simplifiée du bucket sur la suppression du cycle de vie.

À l’aide de la « suppression simplifiée du bucket » à l’aide de l’interface utilisateur ECS (nécessite la version 3.8.1.0 ou une version ultérieure)
La version 3.8.1.x et les versions ultérieures permettent de supprimer le bucket avec le contenu de l’interface utilisateur ECS avec les autorisations appropriées. Accédez au compartiment et sélectionnez Delete dans la liste déroulante. Sélectionnez Supprimer l’intégralité du contenu, y compris le compartiment sélectionné, puis confirmez. 

À l’aide de la « suppression simplifiée du bucket » à l’aide de l’interface utilisateur ECS (nécessite la version 3.8.1.0 ou une version ultérieure)

Utilisation de la suppression simplifiée du bucket à l’aide de l’API REST.
Consultez la dernière version du Guide de l’API REST pour référence.

Utilisation de la « suppression simplifiée du bucket » à l’aide de l’API REST.

Exemple d’envoi de l’appel d’API rest à l’aide de curl à partir d’ECS :

Commande :

# curl -k -H "$token" -X POST https://<hostname-or-ip>:4443/object/bucket/<bucketname>/deactivate?namespace=<namespace>\&emptyBucket=true

Exemple :

curl -v -k -H "$token" -X POST https://10.60.x.xx:4443/object/bucket/ExampleBucketRest/deactivate?namespace=b_mathias_ns\&emptyBucket=true

Pour surveiller :

Pour surveiller la suppression d’un bucket

Commande :

# curl -k -H "$token" -X GET https://<hostname-or-ip>:4443/object/bucket/<bucketname>/empty-bucket-status?namespace=<namespace> |xmllint --format -

Exemple :

Started:
mathias@client:/usr/share/s3curl$ curl -k -H "$token" -X GET https://10.60.x.xx:4443/object/bucket/ExampleBucketRest/empty-bucket-status?namespace=b_mathias_ns |xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<empty_bucket_status>
  <status>PENDING</status>
  <created>1707411798889</created>
  <last_updated>1707411798889</last_updated>
  <entries_deleted>0</entries_deleted>
  <failed_to_delete_due_to_retention>0</failed_to_delete_due_to_retention>
  <failed_to_delete_due_to_permission>0</failed_to_delete_due_to_permission>
  <failed_to_delete_due_to_dangling xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
  <failed_to_delete_due_to_other>0</failed_to_delete_due_to_other>
  <message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
</empty_bucket_status>

Running:
mathias@client:/usr/share/s3curl$ curl -k -H "$token" -X GET https://10.60.x.xx:4443/object/bucket/ExampleBucketRest/empty-bucket-status?namespace=b_mathias_ns |xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   629  100   629    0     0   2431      0 --:--:-- --:--:-- --:--:--  2437
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<empty_bucket_status>
  <status>IN_PROGRESS</status>
  <created>1707411798889</created>
  <last_updated>1707411828897</last_updated>
  <entries_deleted>1337</entries_deleted>
  <failed_to_delete_due_to_retention>0</failed_to_delete_due_to_retention>
  <failed_to_delete_due_to_permission>0</failed_to_delete_due_to_permission>
  <failed_to_delete_due_to_dangling xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
  <failed_to_delete_due_to_other>0</failed_to_delete_due_to_other>
  <message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
</empty_bucket_status>

Completed:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<error>
  <code>1004</code>
  <description>Request parameter cannot be found</description>
  <details>Unable to find entity with the given id ExampleBucketRest</details>
  <retryable>false</retryable>
</error>

L’erreur ci-dessus est attendue, car le compartiment est introuvable.

À l’aide de la suppression simplifiée du bucket à l’aide de S3 :

  1. Consultez le dernier guide d’accès aux données pour plus de détails.
  2. Consultez le Guide d’accès aux données v3.8.

Utilisation de la commande « simplified bucket delete » via S3 

Le moyen le plus rapide d’adresser un bucket avec cette option est de : s3curl.
 

Avertissement : s3curl est déjà installé sur les nœuds ECS, mais il ne doit pas être utilisé pour cette opération. La commande x-emc headers ne sont pas entièrement fonctionnels pour le moment.
 
s3curl est disponible sur GitHub pour les installations locales. Cette version est utilisée pour inclure : x-emc-headers https://github.com/EMCECS/s3curl/blob/master/s3curl.pl Ce lien hypertexte renvoie à un site Web extérieur à Dell Technologies.

La version modifiée de s3curl.pl est prévu pour être ajouté au code ECS dans une version ultérieure et cet article de la base de connaissances est mis à jour.

Lorsque s3curl est configuré, procédez comme suit. Gardez à l’esprit que les données ne peuvent pas être récupérées !
  1. Démarrez une suppression de bucket simplifiée avec s3curl:
Commande :
./s3curl --id=<alias> --DELETE -- http://<hostname-or-ip>:9020/<bucketname> -H "x-emc-empty-bucket:true"

Exemple :

mathias@client:/usr/share/s3curl$ ./s3curl.pl --id=b_mathias_iam --DELETE -- http://10.60.x.xx:9020/ExampleBucket -H "x-emc-empty-bucket:true"

Surveiller Bucket Delete :

./s3curl.pl --id=<alias> http://<hostname-or-ip>:9020/<bucketname>?empty-bucket-status |xmllint --format -

Exemple :

mathias@client:/usr/share/s3curl$ ./s3curl.pl --id=b_mathias_iam -- http://10.60.x.xx:9020/ExampleBucket?empty-bucket-status |xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   474  100   474    0     0   3128      0 --:--:-- --:--:-- --:--:--  3139
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<EmptyBucketStatus xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
  <Status>PENDING</Status>
  <Created>2024-02-08T16:21:53.849Z</Created>
  <LastUpdated>2024-02-08T16:21:53.849Z</LastUpdated>
  <EntriesDeleted>0</EntriesDeleted>
  <FailedToDeleteDueToRetention>0</FailedToDeleteDueToRetention>
  <FailedToDeleteDueToPermission>0</FailedToDeleteDueToPermission>
  <FailedToDeleteDueToOther>0</FailedToDeleteDueToOther>

Running:
mathias@client:/usr/share/s3curl$ ./s3curl.pl --id=b_mathias_iam -- http://10.60.x.xx:9020/ExampleBucket?empty-bucket-status |xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   478  100   478    0     0   3883      0 --:--:-- --:--:-- --:--:--  3886
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<EmptyBucketStatus xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
  <Status>IN_PROGRESS</Status>
  <Created>2024-02-08T16:21:53.849Z</Created>
  <LastUpdated>2024-02-08T16:22:23.899Z</LastUpdated>
  <EntriesDeleted>1304</EntriesDeleted>
  <FailedToDeleteDueToRetention>0</FailedToDeleteDueToRetention>
  <FailedToDeleteDueToPermission>0</FailedToDeleteDueToPermission>
  <FailedToDeleteDueToOther>0</FailedToDeleteDueToOther>
</EmptyBucketStatus>

Completed:
mathias@client:/usr/share/s3curl$ ./s3curl.pl --id=b_mathias_iam -- http://10.60.x.xx:9020/ExampleBucket?empty-bucket-status |xmllint --format -
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   180    0   180    0     0   1300      0 --:--:-- --:--:-- --:--:--  1304
<?xml version="1.0"?>
<Error>
  <Code>NoSuchBucket</Code>
  <Message>The specified bucket does not exist</Message>
  <Resource>ExampleBucket</Resource>
  <RequestId>0a3c0812:18d77e3a715:2d7:1f33</RequestId>
</Error>


Pour les versions de code antérieures à la version 3.8, effectuez une mise à niveau pour assurer la disponibilité des options ci-dessus.

Affected Products

ECS Appliance

Products

ECS Appliance
Article Properties
Article Number: 000014767
Article Type: How To
Last Modified: 21 Aug 2025
Version:  8
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.