Skip to main content

Database Section

Configuration options for how ESS can communicate with your PostgreSQL database.

                 

Config:

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:

    Standalone Deployment PostgreSQL Prerequisites Kubernetes Deployment PostgreSQL Prerequisites

    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.