The ungleich Matrix infrastructure » History » Revision 5

« Previous | Revision 5/22 (diff) | Next »
Timothée Floure, 01/12/2020 12:11 PM

The ungleich Matrix infrastructure

This document concerns the infrastructure side of our MaaS offer and is intended for ungleich staff. See Ungleich Matrix-as-a-Service (MaaS) page for end-user/customer documentation.


This document is A DRAFT. This service is not in production.


Our Matrix deployments make use of the Synapse (reference) Matrix homeserver and Riot web client. We use Debian buster as base Operating system, leveraging the matrix-synapse package from the buster-backports repository. The riot client (= static files) is directly fetched from upstream releases on github.

The matrix deployments run on ipv6only VMs, HTTP traffic - including federation - being proxy by the ungleich v4-to-v6 proxy. Federation is delegated using a /.well-known/ URI as described in the customer FAQ.


The whole MaaS setup is defined in the manifest/matrix-as-a-service of dot-cdist file, which wraps the __ungleich_matrix type. This type leverages:

  • __matrix_synapse
  • __matrix_riot
  • __ungleich_nginx_static_type
  • _postgres_role and _postgres_database from upstream cdist.


We plan to leverage consul's service discovery to feed system (node exporter) and matrix (synapse) metrics to prometheus/grafana.

Ungleich Deployments

We maintain our own deployments alongside the customer MaaS, both for our own usage and for testing.

Staging instance used to tests the deployment pipeline and Matrix updates.

Production instance for ungleich, will be bridged to at some point.

Application Services

We do not support any application service as of today.

Updated by Timothée Floure over 4 years ago · 5 revisions