Skip to main content

How to install DBLab using the AWS Marketplace

DBLab Engine and AWS Marketplace

If you're using AWS, installing DBLab from the AWS Marketplace is the fastest way to have powerful database branching for any database, including RDS and RDS Aurora. But not only RDS: any Postgres and Postgres-compatible source is supported as a source for DBLab.

info

Currently, only the "logical" mode of data retrieval (dump/restore) is supported – the only available method for managed PostgreSQL cloud services such as RDS Postgres, RDS Aurora Postgres, Azure Postgres, or Heroku. "Physical" mode is not yet supported by the module, but it will be in the future. More about various data retrieval options for DBLab.

note

Check out the DBLab installation tutorial: Database Lab tutorial for Amazon RDS

Prerequisites​

  • AWS cloud account
  • SSH client (available by default on Linux and MacOS; Windows users: consider using PuTTY)
  • A key pair already generated for the AWS region that we are going to use during the installation. Both RSA or ed25519 will work. If you're not familiar with the process of creation a key pair in AWS, read their documentation: "Create key pairs".

Steps to install Database Lab Engine from AWS Marketplace​

The first steps are trivial:

And then press the "Continue..." buttons a couple of times:

Database Lab Engine in AWS Marketplace: step 1
Database Lab Engine in AWS Marketplace: step 2

Now check that the DBLab Engine version (the latest is recommended) and the AWS regions are chosen correctly, then press "Continue to Launch":

Database Lab Engine in AWS Marketplace: step 3

On this page you need to choose "Launch CloudFormation" and press "Launch":

Database Lab Engine in AWS Marketplace: step 4

This page should be left unmodified, just press the "Next" button:

Database Lab Engine in AWS Marketplace: step 5

Now it is time to fill the form that defines the AWS resources that we need:

  • EC2 instance type and size – it defines the hourly price for "compute" (see the full price list);
  • subnet mask to restrict connections (for testing, you can use 0.0.0.0/0; for production use, restrict connections wisely);
  • VPC and subnet – you can choose any of them if you're testing DBLab for some database which is publicly available (the only thing to remember: subnet belongs to a VPC, so make sure they match); for production database, you need to choose those options that will allow DBLab to connect to the source for the successful data retrieval process;
  • choose your AWS key pair (has to be created already).

    Database Lab Engine in AWS Marketplace: step 6

Next, on the same page:

  • define the size of EBS volume that will be created (you can find pricing calculator here: "Amazon EBS pricing"):
    • put as many GiB as roughtly your database has (it is always possible to add more space without downtime),
    • define how many snapshots you'll be needed (minumym 2);
  • define secret token (at least 9 characters are required!) – it will be used to communicate with DBLab API, CLI, and UI.

Then press "Next".

Database Lab Engine in AWS Marketplace: step 7

This page should be left unmodified, just press the "Next" button:

Database Lab Engine in AWS Marketplace: step 8

At the bottom of the next page acknowledge that AWS CloudFormation might create IAM resources. Once you've pressed "Create stack", the process begins.

Database Lab Engine in AWS Marketplace: step 9

You need to wait a few minutes, while all resources are provisioned and DBLab setup is complete. Check out the "Outputs" section – once DBLab API and UI are ready, you'll see the ordered list of instructions on how to connect to UI and API.

Note that the initial data retrieval can be long – it depends on the size of the source database(s). However, DBLab API, CLI, and UI are available for use while it's happening. And once the retrieval is finished, DBLab is ready for use. Happy cloning!

Setup demonstration​

Troubleshooting​

To troubleshot:

  • Use SSH to connect to the EC2 instance
  • Check the containers that are running: sudo docker ps
  • Check the DBLab Engine container's logs: sudo docker logs dblab_server
  • If needed, check Postgres logs for the main branch. They are located in /var/lib/dblab/dblab_pool/dataset_1/data/log for the first snapshot of the database, in `/var/lib/dblab/dblab_pool/dataset_2/data/log for the second one (if it's already fetched); if you've configured DBLab to have more than 2 snapshots, check out the other directories too (/var/lib/dblab/dblab_pool/dataset_$N/data/log, where $N is the snapshot number, starting with 1)

Getting support​

With DBLab installed from AWS Marketplace, guaranteed vendor support is included – please use one of the available ways to contact.