Migrating from an RDS instance to an Aurora cluster

If your Tines installation is running a single RDS database instance, we recommend you migrate to an Aurora PostgreSQL database cluster for improved performance and reliability.

You can migrate the database using a snapshot by following this guide from AWS.

  1. While you execute this migration, you should update your tines-app and tines-sidekiq ECS services to have a desired task count of 0 in order to prevent data loss. This will require some downtime on your Tines installation.

  2. Follow all steps in AWS's guide. When you reach step 5, follow these guidelines to configure the new cluster correctly:

  • Your new database cluster should use the same values as your existing instance for the following fields:

    • VPC

    • DB subnet group

    • VPC security group

  • We also recommend the following values for other fields:

    • DB engine version - same as your existing instance. This should be a PostgreSQL 11 version, unless you have already manually migrated your existing instance to PostgreSQL 14.

    • DB instance class - we recommend either a db.t4g.large, or a db.r6g.xlarge depending on your performance needs. Larger instance sizes will also work if you need further performance improvements, although they will cost more.

    • DB instance identifier - a clear name like tines-db-cluster.

    • Public access - this should be set to No for security.

    • Availability Zone - we recommend No preference for improved reliability.

    • Database port - this can be left as the default of 5432, unless you have customized it on your existing instance. This should match the DATABASE_PORT environment variable for your installation.

    • Enable Encryption - we recommend enabling this to ensure your Tines data is encrypted at rest.

    • Auto minor version upgrade - we recommend disabling this to avoid unexpected downtime on your Tines installation.

Was this helpful?