Migrate from Wasabi to Storj
This article will discuss the migration process from Wasabi to Storj using the rclone tool, a command-line program to manage files on cloud storage.
For a cost comparison between Wasabi and Storj, see https://www.storj.io/landing/wasabi-comparison.
Prerequisites
Before starting the migration process, you'll need to have the following:
Access to both your Wasabi and Storj accounts.
- Navigate to https://storj.io/signup?partner=rclone to sign up or log in to an existing Storj account.
Installed and configured rclone on your machine.
Why Rclone?
Rclone is a command-line program written in Go language, which is designed to sync files and directories from different cloud storage providers. It allows for easy migration, syncs directories and files, checks file hashes, and even modifies drives. It works with a wide range of cloud storage providers, including Wasabi and Storj, which makes it an excellent tool for our use-case.
Install rclone
Visit https://rclone.org/install/ for instructions on how to install rclone.
Create Access Credentials
Before using rclone, we'll need to create access and a secret key for Wasabi and an access grant for Storj.
Wasabi Access and Secret Key
Use your Wasabi account credentials to log in to the Wasabi Management Console.
Click
Access Keys
from the left side menuClick
CREATE ACCESS KEY
button under the Access Keys heading
Once the key is created, you can view and copy the Access Key and Secret Key. Make sure to store these securely as the Secret Key cannot be retrieved again and will be needed later on.
Create Storj Access Grant
A Storj access grant is a serialized, self-contained credential that allows users to access a specific bucket, or object, within a Storj project. It encapsulates everything needed for authentication and authorization on the Storj network.
Create Access Grant in the Storj Console:
Navigate to Access Keys on the left side menu.
Click the New Access Key button.
When the New Access dialog comes up, set specifications according to the following guidelines:
- Name: The name of the credentials (e.g. my-access-grant)
- Type: Access Grant
Click Next to provide permissions, either Full Access or Advanced:
Permissions: All
Buckets: Feel free to specify the bucket (e.g. my-bucket), or leave as “All”
End date: provide an expiration date for these credentials (optional)
Click Next to provide Access encryption Information
In order to see the data uploaded to your bucket in the web console, you must unlock the bucket with the same encryption passphrase as the credentials.
Use the current passphrase: this is default option
Advanced: you may provide a different encryption phrase either your own or generate a new one.
Enter a new passphrase: use this option, if you would like to provide your own new encryption phrase
Generate 12-word passphrase: use this option, if you would like to generate a new encryption phrase
This passphrase is important! Encryption keys derived from it are used to encrypt your data at rest, and your data will have to be re-uploaded if you want it to change!
Importantly, if you want two access grants to have access to the same data, they must use the same passphrase. You won't be able to access your data if the passphrase in your access grant is different than the passphrase you uploaded the data with.
Please note that Storj does not know or store your encryption passphrase, so if you lose it, you will not be able to recover your files.
Click Create Access to finish creation of your Access key.
Click Confirm the Confirm details pop-up message
Your Access Grant is created. Write it down and store it, or click the Download button. You will need the Access Grant for the following steps.
Update Rclone config
After getting your access keys for Storj and Wasabi, you need to configure rclone.
We'll edit the rclone config directory directly, but you can also run rclone config
for a more interactive experience.
We'll edit the rclone config file directly, you can find where it is stored by running the following:
Command output will look like this
Configuration file is stored at: /Users/dan/.config/rclone/rclone.conf
Edit ~/.config/rclone/rclone.conf
with the access keys created above and the values below (see sample file).
Wasabi:
[wasabi]: This is the section name for the configuration.
type = s3: This refers to the type of storage you are interacting with, in this case 's3' for Simple Storage Service, a type of cloud storage.
provider = Wasabi: This indicates that the provider of the storage service is Wasabi.
access_key_id: Replace with your actual Wasabi access key created previously.
secret_access_key: Replace with your actual Wasabi secret key created previously.
endpoint: This points to the Wasabi service endpoint. The value depends on the region of your Wasabi storage. Replace the placeholder with the endpoint that corresponds to your Wasabi service region.
acl = private: This represents the Access Control List (ACL) policy for your objects. 'private' means that the objects are only accessible to the owner of the bucket.
Storj:
[storj]: This is the section name for the configuration.
type = storj: This indicates that the type of storage is Storj.
access_grant: The access_grant is a serialized access grant string which encapsulates all necessary information to list or download objects. Replace with the actual access grant created previously.
~/.config/rclone/rclone.conf
Migrate data
Once the configuration is done, you can use the rclone sync
command to migrate data from Wasabi to Storj. The syntax is as follows:
Be mindful of potential network costs due to high egress traffic when running rclone for large data migrations on your machine.
Replace my-wasabi-bucket
with the name of your specific bucket. This command will sync the contents from your Wasabi bucket to your Storj bucket, effectively migrating the data.
Post-Migration Steps
After migration, validate the data integrity in your Storj bucket by running rclone check
This command will compare the source (Wasabi) and destination (Storj) and report any discrepancies.
You can also see the contents of your Wasabi bucket in the Storj Web Console.