Skip to main content
  • »
  • S3 »
  • Jak usunąć duży S3 bucket w NSIS

Jak usunąć duży S3 bucket w NSIS

Wprowadzenie

Ze względu na ograniczenie openstack-cli, usunięcie bucketów S3 zawierających więcej niż 10 000 obiektów nie powiedzie się podczas korzystania z polecenia:

openstack container delete --recursive <<bucket_name>>

pokazując następujący błąd:

Conflict (HTTP 409) (Request-ID: tx00000000000001bb5e8e5-006135c488-35bc5d520-dias_default) clean_up DeleteContainer: Conflict (HTTP 409) (Request-ID:)

Zalecane rozwiązanie

Aby usunąć duży bucket S3 możemy użyć s3cmd.

Aby uzyskać dostęp do swoich bucketów Object Storage za pośrednictwem s3cmd, należy najpierw wygenerować własne poświadczenia EC2 za pomocą następującego samouczka: Jak wygenerować poświadczenia EC2 i zarządzać nimi na NSIS Cloud

Następnie należy skonfigurować s3cmd, jak wyjaśniono w poniższym artykule: Jak uzyskać dostęp do object storage z NSIS za pomocą s3cmd

Po wykonaniu tych czynności powinieneś być w stanie wyświetlić listę i uzyskać dostęp do Object Storage.

Wylistuj swoje buckety za pomocą polecenia:

eouser@vm01:$ s3cmd ls
2022-02-02 22:22  s3://large-bucket

Teraz możesz usunąć swój duży bucket za pomocą polecenia przedstawionego poniżej, gdzie -r oznacza rekurencyjne usuwanie.

s3cmd rb -r s3://large-bucket

Sam bucket i wszystkie znajdujące się w nim pliki zostaną usunięte.

WARNING: Bucket is not empty. Removing all the objects from it first. This may take some time...
delete: 's3://large-bucket/example_file.jpg'
delete: 's3://large-bucket/example_file.txt'
delete: 's3://large-bucket/example_file.png'
...
...
...
Bucket 's3://large-bucket/' removed

Duży bucket został pomyślnie usunięty, a lista bucketów jest pusta.

eouser@vm01:$ s3cmd ls
eouser@vm01:$