2 Components Administration
vvvomit edited this page 2026-10-30 04:44:29 +03:30
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

فارسی · Components · Home

Administration

Watching the server, backing it up off-site, and housekeeping. interzone's own Manage screen already covers a lot of this without installing anything: the Dashboard, Backups of the database, Alerts, Disk space. See the setup guide.

How to add any of these: Components.

The Administration tab

Their settings

Prometheus + Grafana

Graphs of everything over time: CPU, memory, disk, network, Synapse's activity and slowness, Postgres.

DNS: stats.example.org.

Settings: Grafana admin user (admin) and password (made up for you; ctrl+r shows it). They're for Grafana only, not a Matrix account.

After deploy: open https://stats.example.org, sign in, and open Dashboards: Synapse, Node Exporter (the server itself) and Postgres are there already.

Good to know: anyone who can see these graphs can guess a lot about how your server is used. Keep the password to yourself. Playbook doc

Alertmanager receiver

Forwards alerts from a Prometheus Alertmanager into Matrix rooms. The playbook doesn't install Alertmanager itself; this is for people who run one. For simple alerts without any of that, use Manage › Alerts (A).

Settings:

  • Bot access token: of an account made for it (see getting a bot's access token).
  • Room mapping: names for rooms: alerts: "!ROOMID:example.org". Invite the bot to each room.

After deploy: point Alertmanager's webhook at https://matrix.example.org/matrix-alertmanager-receiver-…/alert/alerts; the playbook doc has the full address and an example configuration. Playbook doc

synapse-usage-exporter

Synapse only. Turns Synapse's usage statistics (users, rooms, messages per day) into Prometheus metrics, for a Grafana graph. Useful only with Prometheus + Grafana. Playbook doc

synapse-auto-compressor

Synapse only. Shrinks Synapse's biggest database tables every night at midnight, so the database grows slower. Manage › Compress Synapse's state does the same once, by hand. Playbook doc

System cleanup

Removes the Docker images and containers no service uses any more, every day, so updates don't slowly fill the disk. Manage › Disk space does it once, by hand. To see what it would remove, run /matrix/system-cleanup/bin/cleanup-docker --dry-run on the server. Playbook doc

BorgBackup

Full, encrypted, deduplicated backups of the whole server (/matrix and the database) to another machine, every night around 4 o'clock. It keeps 7 daily, 4 weekly, 12 monthly and 2 yearly backups. interzone's Backups only cover the database; this covers everything, media included.

Before you start: a place to store them that you reach over SSH: another server, or a storage box (Hetzner Storage Box, BorgBase, rsync.net…). Make a key for it on your computer, and add its public half there:

ssh-keygen -t ed25519 -N '' -f borg-key
cat borg-key.pub | ssh USER@HOST 'dd of=.ssh/authorized_keys oflag=append conv=notrunc'

Settings:

  • Repositories: ssh://USER@HOST/./matrix; it's created on the first backup.
  • Encryption passphrase: made up for you. Write it down somewhere else: without it the backups can't be read.
  • SSH private key: the contents of borg-key (not .pub): a first line with just |, then the key, every line indented by two spaces.

After deploy: to run one now, systemctl start matrix-backup-borg on the server. Restoring is done with borg itself; see the role's documentation. Playbook doc