Redis doesn't seem like a database that needs an import tool, but we've been finding Compose users who want to bring their Redis data to our platform. They don't just cache data in their Redis, they use it as an active reference store for applications which can be rapidly updated and, thanks to the Redis pubsub options, update clients quickly too.
At Compose, we understand how, with Redis as an essential cog in your operations, you'd want to minimise downtime when migrating. This is why we've created a static import tool which will import your data from a remote Redis installation into your Compose Redis deployment.
Before importing into your Redis deployment, you should be aware of the following notes.
Before you import a remote database, be aware that this import is going to make your Compose deployment identical to the remote database and it starts that process by clearing out your current Redis data in your deployment. The import process does not merge the content of the two Redis databases involved. If you have any data of value in your Compose Redis database then we recommend you create a new Redis deployment and import into that.
If you are using Compose's SSH option for Redis, be aware that the Redis import takes place over the TCP portal. When configured correctly, the TCP portal should have a whitelist setup that only allows connections from the SSH portal. When using the import option, the IP address of the system you are importing from will need to be added to the whitelist. This is because the process involves the remote/source Redis server being master and connecting into the Compose Redis deployment. If you only have a hostname for the deployment run
dig +short example-hostname-here.com to get the IP address.
You'll find the controls in the Compose Redis console. Select 'Import' from the menu and you'll see the Import view:
To import a remote Redis database you need a Redis URL for it, which means the remote Redis needs to be accessible on the internet. If your Redis is behind a firewall, you need to make the appropriate arrangements to make it accessible to your Compose Redis deployment.
Your Redis URL includes the hostname and port that the database resides on and the password for the database. The format is shown in the screenshot, below
When you have all the details, enter them into the 'Remote Deployment URL' field and click Import. The Confirm Import dialog opens.
Because the import involves clearing your Compose Redis deployment (see Before You Begin) you are offered the choice to cancel at this point. If you are happy to proceed, click Import. The import begins.
A message appears to signal the start of the import and the console will move to the Jobs screen. Here, you'll see the jobs that run during the import:
- Redis RemoteDB prepares for the import
- Redis Import performs the import
- Run wraps up and scales up the deployment if your imported data is larger than the currently deployed size of your Compose Redis. After importing, check the Deployment Overview page to see how much storage your deployment is now using, and avoid a surprise.
If the completed import is successful your Jobs view should look like this:
This is the first import option we've added to Redis and it is just part of a development process that is bringing simpler, more reliable ways of moving your data to Compose and our production-ready, high availability deployments.
If this article didn't solve things, summon a human and get some help!
Updated about a year ago