Database service overview

The Database service provides scalable and reliable cloud provisioning functionality for both relational and non-relational database engines. Users can quickly and easily use database features without the burden of handling complex administrative tasks. Cloud users and database administrators can provision and manage multiple database instances as needed.

The Database service provides resource isolation at high performance levels, and automates complex administrative tasks such as deployment, configuration, patching, backups, restores, and monitoring.

Process flow example

This example is a high-level process flow for using Database services:

  1. The OpenStack Administrator configures the basic infrastructure using the following steps:

    1. Install the Database service.

    2. Create an image for each type of database. For example, one for MySQL and one for MongoDB.

    3. Use the trove-manage command to import images and offer them to tenants.

  2. The OpenStack end user deploys the Database service using the following steps:

    1. Create a Database service instance using the trove create command.

    2. Use the trove list command to get the ID of the instance, followed by the trove show command to get the IP address of it.

    3. Access the Database service instance using typical database access commands. For example, with MySQL:

      $ mysql -u myuser -p -h TROVE_IP_ADDRESS mydb
      

Components

The Database service includes the following components:

python-troveclient command-line client

A CLI that communicates with the trove-api component.

trove-api component

Provides an OpenStack-native RESTful API that supports JSON to provision and manage Trove instances.

trove-conductor service

Runs on the host, and receives messages from guest instances that want to update information on the host.

trove-taskmanager service

Instruments the complex system flows that support provisioning instances, managing the lifecycle of instances, and performing operations on instances.

trove-guestagent service

Runs within the guest instance. Manages and performs operations on the database itself.