Migration from Wasabi buckets to EL storage

With EL storage, we offer you a scalable and cost effective S3-compatible cloud storage, based on Wasabi Hot Cloud Storage technology.
In our helpdesk articles we show you how to administer EL storage via Wasabi console.

If you need to move the content of a Wasabi Hot Cloud Storage bucket (e.g. pay-as-you-go trial or already active partners moving to EBERTLANG) to a bucket of a new account, you can use the AWS CLI to do so.
This is a command line tool provided by Amazon Services. These instructions assume that you have already installed the tool. Information on how to install it can be found here.

The first step to successfully migrate your bucket is to create the access profiles for the target and source. To do this, open an administrative command line locally and issue the following command:
>aws configure --profile Source

After that, the following information is requested:
AWS Access Key ID [None]: Source account access key
AWS Secret Access Key [None]: Source account secret key
Default region name [None]: 
Default output format [None]:

You received the access key and the secret key when you created your root account or user. We recommend that you use the root account for this purpose. If this is not possible, the user should have administrator rights. 

Information on individual user policies can be found here.
For the target profile, you need to issue the same command with customized keys:
>aws configure --profile Destination
AWS Access Key ID [None]: Destination account access key
AWS Secret Access Key [None]: Destination account secret key
Default region name [None]:
Default output format [None]:

After creating the two profiles, you need to configure a policy for the destination and source buckets. To do this, you need to log in with the source account and go to the "Settings" action of the desired bucket under Buckets. There, navigate to the "Directions" tab and configure the following policy:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "DelegateS3Access",
      "Effect": "Allow",
      "Principal": {
        "AWS": "Destination Root Account ARN"
      },
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::cross-account-sourcebucket/*",
        "arn:aws:s3:::cross-account-sourcebucket"
      ]
    }
  ]
}

For "Destination Root Account ARN", set the ARN of the account from which you also used the Access and Secret Keys at the beginning. The ARN of the root account can be found in the left menu band under Settings:

The ARN of another user can be found under "Users" by clicking on the blue highlighted name of the used user.


For "cross-account-sourcebucket" you must insert the name of the source bucket.

A corresponding configuration must also be made here on the target bucket. To do this, log in to the web console with the target account and set the following policy with appropriately adjusted variables, as described previously:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "DelegateS3Access",
      "Effect": "Allow",
      "Principal": {
        "AWS": "Source Root Account ARN"
      },
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::cross-account-destinationbucket/*",
        "arn:aws:s3:::cross-account-destinationbucket"
      ]
    }
  ]
}

After you have made this configuration, switch back to the command line. Now issue the following command to migrate the contents:
aws s3 sync s3://cross-account-sourcebucket/ s3://cross-account-destinationbucket/ --profile Source --endpoint-url=https://s3.eu-central-1.wasabisys.com

Here you only must enter the names of the two buckets. If your bucket is not in the EU region, you still need to select the service URL accordingly. Information about the service URLs can be found here.

Alternative tools for the migration offer flexify.io.