The VMware Cloud Director cells use a database to store shared information. Before you install VMware Cloud Director on Linux, you must install and configure a PostgreSQL database instance and create the VMware Cloud Director database user account.

PostgreSQL databases have specific configuration requirements when you use them with VMware Cloud Director.

You must create a separate, dedicated database schema for VMware Cloud Director to use. VMware Cloud Director cannot share a database schema with any other VMware product.

VMware Cloud Director supports SSL connections to the PostgreSQL database. You can enable SSL on the PostgreSQL database during an unattended network and database connections configuration or after creating the VMware Cloud Director server group. See Unattended Configuration Reference and Perform Additional Configurations on the External PostgreSQL Database.

Note: Only VMware Cloud Director on Linux uses an external database. The VMware Cloud Director appliance uses the embedded PostgreSQL database.


For information about the supported VMware Cloud Director databases, see the VMware Product Interoperability Matrixes.

You must be familiar with PostgreSQL commands, scripting, and operation.


  1. Configure the database server.
    A database server with 16 GB of memory, 100 GB storage, and 4 CPUs is appropriate for typical VMware Cloud Director server groups.
  2. Install a supported distribution of PostgreSQL on the database server.
    • The SERVER_ENCODING value of the database must be UTF-8. This value is established when you install the database and always matches the encoding used by the database server operating system.
    • Use the PostgreSQL initdb command to set the value of LC_COLLATE and LC_CTYPE to en_US.UTF-8. For example:
      initdb --locale=en_US.UTF-8
  3. Create the database user.
    The following command creates the user vcloud.
    create user vcloud;
  4. Create the database instance and give it an owner.
    Use a command like this one to specify a database user named vcloud as the database owner.
    create database vcloud owner vcloud;
  5. Assign a database password to the database owner account.
    The following command assigns the password vcloudpass to database owner vcloud.
    alter user vcloud password 'vcloudpass';
  6. Enable the database owner to log in to the database.
    The following command assigns the login option to database owner vcloud.
    alter role vcloud with login;

What to do next

After creating your VMware Cloud Director server group, you can configure the PostgreSQL database to require SSL connections from the VMware Cloud Director cells and adjust some database parameters for optimal performance. See Perform Additional Configurations on the External PostgreSQL Database.