Skip to main content

Database Section


This section of the ESS installer GUI will only be present if you are using the Kubernetes deployment option or you have opted to use your own PostgreSQL for a Standalone deployment.

If you have not yet set up your PostgreSQL, you should ensure you have done so before proceeding, see the relevant PostgreSQL section from the Requirements and Recommendations page:

All settings configured via the UI in this section will be saved to your deployment.yml, with the contents of secrets being saved to secrets.yml. You will find specific configuration examples in each section.

Config Example
  • deployment.yml
    spec:
      components:
        synapse:
          config:
            postgresql:
    
  • secrets.yml
    apiVersion: v1
    kind: Secret
    metadata:
      name: synapse
      namespace: element-onprem
    data:
      postgresPassword: 
    

By default, if you do not change any settings on this page, defaults will be added to your configuration file/s (see example below).

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          database: synapse
          host: db.example.com
          passwordSecretKey: postgresPassword
          user: test-username

PostgreSQL

Database

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          database: synapse

Enter the name of the PostgreSQL Database you configured per the previously mentioned Requirements and Recommendations to use for Synapse.

Host

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          host: db.example.com

Enter the fully qualified domain name of the PostgreSQL Database you configured per the previously mentioned Requirements and Recommendations to use for Synapse.

Port

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          # port not present when left as default 5432
          port: 5432

Defaults to 5432, either keep if correct or provide the required port of the PostgreSQL Database you configured per the previously mentioned Requirements and Recommendations to use for Synapse.

SSL Mode

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          # sslMode not present when left as default `require` 
          sslMode: require
          # sslMode: disable
          # sslMode: allow
          # sslMode: prefer
          # sslMode: verify-ca
          # sslMode: verify-full

Defaults to Require - it is not recommended to disable SSL, so for most setups, this setting should be left as default.

You should adjust to accommodate your environment as required, the options available are:

  • Disable
  • Allow
  • Prefer
  • Require
  • Verify CA
  • Verify Full

User

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          user: test-username

Enter the username of a user who can access the PostgreSQL Database you configured per the previously mentioned Requirements and Recommendations to use for Synapse.

PostgreSQL Password

Config Example
  • secrets.yml
    apiVersion: v1
    kind: Secret
    metadata:
      name: synapse
      namespace: element-onprem
    data:
      postgresPassword: dGVzdC1wYXNzd29yZA==
    

Enter the password for the specified user who can access the PostgreSQL Database you configured per the previously mentioned Requirements and Recommendations to use for Synapse.

Advanced

Connection Pool

Max / Min Connections

Config Example
spec:
  components:
    synapse:
      config:
        postgresql:
          # connectionPool not present when left as default
          connectionPool:
            maxConnections: 10
            minConnections: 5

In most deployments you should not need to configure these settings, however if required, you can adjust both the minimum and maximum connections in the Synapse connection pool.