Configuring Synapse
See how to download example files from the helm chart here.
Configuration
For a quick setup using the default settings, see the minimal fragment example in charts/matrix-stack/ci/fragments/synapse-minimal.yaml
.
Configuring a postgresql database
If you want to use an external postgresql, see the following fragments examples:
-
charts/matrix-stack/ci/fragments/synapse-postgres.yaml
-
charts/matrix-stack/ci/fragments/synapse-postgres-secrets-in-helm.yaml
orcharts/matrix-stack/ci/fragments/synapse-postgres-secrets-externally.yaml
Credentials
Credentials are generated if possible. Alternatively they can either be provided inline
in the values with value
or if you have an existing Secret
in the cluster in the
same namespace you can use secret
andsecretKey
to reference it.
If you dont want the chart to generate the secret, please refer to the following values fragments examples to see the secrets to configure.
Synapse requires registrationSharedSecret
, signingKey
and macaroon
secrets:
-
charts/matrix-stack/ci/fragments/synapse-secrets-in-helm.yaml
-
charts/matrix-stack/ci/fragments/synapse-secrets-externally.yaml
If you are configuring S3 storage, see the following values fragments examples to see the secrets to configure:
-
charts/matrix-stack/ci/fragments/synapse-s3-secrets-in-helm.yaml
-
charts/matrix-stack/ci/fragments/synapse-s3-secrets-externally.yaml
### Additional configuration
Additional Synapse configuration can be provided inline in the values as a string with
synapse:
additional:
## Either reference config to inject by:
1-custom-config:
config: |
admin_contact: "mailto:admin@example.com"
## Either reference an existing `Secret` by:
2-custom-config:
configSecret: custom-synapse-config
configSecretKey: shared.yaml
Workers
The following Synapse workers are disabled by default and can be enabled on a per-worker basis :
-
appservice
-
background
-
client-reader
-
encryption
-
event-creator
-
event-persister
-
federation-sender
-
initial-synchrotron
-
media-repository
-
presence-writer
-
pusher
-
receipts-account
-
sliding-sync
-
sso-login
-
synchrotron
-
typing-persister
-
user-dir
Synapse workers can be configured in the values with:
synapse:
workers:
<worker name>:
enabled: true
Each worker comes with a different options (static replicas, horizontal scaling, resources, etc). These options can be seen under synapse.workers.<name>
section of helm show values
for this chart.
The following Synapse pro workers are enabled by default :
-
federation-reader
They can be disabled in the values with :
synapse:
workers:
<worker name>:
enabled: false
Full details on available configuration options can be found at https://element-hq.github.io/synapse/latest/usage/configuration/config_documentation.html
Disabling Synapse
Synapse is enabled for deployment by default can be disabled with the following values
synapse:
enabled: false