This document describes the different types of data store supported by Diego across its different versions.
Diego v1.0 and later support only a relational database as the data store for the BBS API server. Both the MySQL and PostgreSQL dialects of SQL are supported on Diego v0.1480.0 and later.
Operators have a choice of deployment styles for both MySQL and PostgreSQL data stores. When Diego is deployed to accompany a CF deployment, operators will already have made a choice of database for the Cloud Controller and UAA databases, and it is expected that the same choice will be appropriate for the Diego data store.
For MySQL, operators have at least the following options:
- Use the CF-MySQL release in standalone mode as a separate BOSH deployment, either as a single node, or as a highly available (HA) cluster.
- Use an infrastructure-specific database deployment, such as an RDS MySQL instance on AWS.
We recommend using at least version v36 of the CF-MySQL release.
Note: Diego requires a MariaDB version of 10.1.24 or higher for its data store.
For PostgreSQL, operators have at least the following options:
- Use the Postgres release in standalone mode as a separate BOSH deployment, either as a single node, or as a highly available (HA) cluster.
- Use an infrastructure-specific database deployment, such as an RDS PostgreSQL instance on AWS.
We recommend using at least version v25 of the Postgres release.
Note: Diego requires a PostgreSQL version of 9.6.6 or higher for its data store.
As of Diego v2.0, support for automatic data migration from etcd to SQL has been removed.