The Director stores VM, persistent disk and other information in a database. An internal database might be sufficient for your deployment; however, a highly-available external database can improve performance, scalability and protect against data loss.

Included Postgres (default)

  1. Add postgres release job and make sure that persistent disk is enabled:

    jobs:
    - name: bosh
      templates:
      - {name: postgres, release: bosh}
      # ...
      persistent_disk: 25_000
      # ...
    
  2. Configure postgres job, and let the Director and the Registry (if configured) use the database:

    properties:
      postgres: &database
        host: 127.0.0.1
        user: postgres
        password: postgres-password
        database: bosh
        adapter: postgres
    
      director:
        db: *database
        # ...
    
      registry:
        db: *database
        # ...
    

External

The Director is tested to be compatible with MySQL and Postgresql databases.

  1. Modify deployment manifest for the Director

    properties:
      director:
        db: &database
          host: DB-HOST
          port: DB-PORT
          user: DB-USER
          password: DB-PASSWORD
          database: bosh
          adapter: postgres
    
      registry:
        db: *database
        # ...
    

    See director.db job configuration for more details.


Contribute changes to this page