Migrating data from one bucket to another
You may need certain IAM permissions to carry out some actions described on this page. This means:
- you are the Owner of the Scaleway Organization in which the actions will be carried out, or
- you are an IAM user of the Organization, with a policy granting you the necessary permission sets
- You have an account and are logged into the Scaleway console
- You have configured your API keys
- You have created an Object Storage bucket
-
Create a new bucket.
aws s3api create-bucket --bucket BUCKET-TARGET -
Copy the objects between the S3 buckets.
Important:If you have objects in the Scaleway
Glacier
storage class you must restore them before continuing.aws s3 sync s3://BUCKET-SOURCE s3://BUCKET-TARGET -
Check that the content of the copied objects matches the content of the source ones.
aws s3 ls --recursive s3://BUCKET-SOURCE --summarize > bucket-contents-source.txtaws s3 ls --recursive s3://BUCKET-TARGET --summarize > bucket-contents-target.txt -
Compare objects that are in the source and target buckets by using the outputs that are saved to files in the AWS CLI directory. See the following example output:
aws s3 ls --recursive s3://DOC-EXAMPLE-BUCKET --summarizeSample output:
2022-01-20 11:20:49 multiaz.pngTotal Objects: 1 Total Size: 18640 -
Update any existing applications or workloads so that they can use the target bucket name, and delete the source bucket.
Important:Delete the old bucket once everything is copied to avoid additional charges. You can use the following command:
aws s3 rb s3://$bucket-source --force