Monitor Database Usage and Increase the DB Volume or Instance Size

When Engine Yard Cloud creates an environment, it creates a PostgreSQL or MySQL database for the application and EBS volume called /db to store the data.

When you set up your environment, enable email alerts so that when your /db volume starts to fill up or if your database instance is under too much load, you receive an alert.

Note: You cannot upsize a 32-bit PostgreSQL instance to a 64-bit instance. See the known issue for more information. If you need help, submit a ticket with Engine Yard Support.

The /db volume size and load capacity of your environment depends on whether you are using a single server, basic cluster, or configured environment. (See table below.)

Environment                   Default size of EBS database volume, /db              Database instance
Single server 15 GB 5 ECU (application server with local database)           
Basic cluster 15 GB 5 ECU (dedicated database instance)
Custom cluster Configurable (5 GB to 1024 GB) Configurable; see Sizing Your Instances

This document describes:

Find database volume usage

You might want to check on database volume usage before you get an alert.

To check the database volume usage

  1. Via SSH, connect to the application and database instance (for single server environment) or the master database instance (for a clustered environment).
  2. Type:
    df -h

    /db usage
 

Increase the Volume size of the database with zero downtime

Current generation instances can make use of Elastic EBS volumes to expand the EBS volume live. Currently this operation must be performed by Engine Yard Support Engineers, therefore please submit a ticket to request an increase in volume size. For more information on expanding EBS volumes please see Modifying Instance Volumes.

If your instance is of an older type, you must make use of one of the two following methods.

 

Increase the size of the database with minimal downtime

If you need to increase the size of your master database instance with minimal downtime, you can provision and promote a database slave instance.

First, a larger database slave instance is created and then, after replication is complete, the slave is promoted to master and the original (smaller) master is decommissioned.

Note: This procedure applies only to clustered environments. Single instances cannot be increased this way.

To increase the size of the database volume or database instance with minimal downtime

  1. Create a database slave as described in Add a database slave to an existing environment.
    Select a larger /db volume size or a larger instance size or both.

  2. Promote your database replica.

 

Increase the size of the database with some downtime

When you increase the size of the database instances via the UI, you are effectively creating a new environment and moving the snapshots of the instances from the old environment to a new environment. This means some downtime for your application.

To increase the size of the database volume or database instance via the UI with some downtime

  1. Make sure that you know the number and size of the server instances in your current environment.

  2. On the Environment page, click Stop.

  3. After the environment has stopped, click Boot.
    The Configuration for Environment page appears.

  4. Select Custom.

  5. For the Database Server, increase the server size and the /db volume size.

    /db volume size

     

    Note: You cannot decrease the size of the database volume.

  6. Select the most recent snapshots from the drop-down.
    This ensures that you don’t lose data.
    If there are snapshots are pending, this is indicated in the drop-down; wait until the snapshot is complete.

  7. Click Boot This Configuration.

More information

For more information about...                      See...
Enabling email alerts Enable alerts.
Alert thresholds About alerts for your environment.
SSHing into an instance Connect to your instance via SSH.                          
Database replica promotion About Database Replica Promotion.
Promoting your database replica Promote a Database Replica..

If you have feedback or questions about this page, add a comment below. If you need help, submit a ticket with Engine Yard Support.

Comments

Article is closed for comments.