Marcel Partap
edc21f15e5
Restrict publishing worker (metrics) ports to localhost
2021-01-24 08:53:09 +01:00
Marcel Partap
183adec3d8
Merge remote-tracking branch 'origin/master' into synapse-workers
2021-01-23 15:04:11 +01:00
Marcel Partap
c8f051a42d
Track workers endpoint list in repo instead of regenerating on user side
2021-01-23 14:44:36 +01:00
Marcel Partap
f2c7d79238
Drop probably incorrect comment from synapse homeserver.yaml.j2
2021-01-23 14:44:36 +01:00
Marcel Partap
cd8100544b
Merge remote-tracking branch 'origin/master' into synapse-workers
...
Sync with upstream
2021-01-08 20:58:50 +01:00
Marcel Partap
b6b95fe742
synapse workers-doc-to-yaml script: compatibility++ with non-gnu awk
2020-12-02 23:22:02 +01:00
Marcel Partap
3156d96619
synapse workers-doc-to-yaml.awk: escape slash for non-gnu awk versions
2020-12-02 00:29:20 +01:00
Marcel Partap
e892ac464f
synapse workers: untangle config template and specify bind address
...
.. to mitigate log noise - WARNING:
Failed to listen on 0.0.0.0, continuing because listening on [::]
2020-12-01 23:49:23 +01:00
Marcel Partap
f201bca519
synapse workers: define and expose METRICS port for each worker
...
As seen on TV:
https://github.com/matrix-org/synapse/blob/master/docs/metrics-howto.md#monitoring-workers
2020-12-01 22:49:15 +01:00
Marcel Partap
af08f18779
synapse workers default config: disable user_dir worker for now
...
(until https://github.com/matrix-org/synapse/issues/8787 is resolved)
2020-12-01 22:22:04 +01:00
Marcel Partap
414b812a29
synapse role workers setup: make configs clean action remote compatible
...
Many people probably didn't even know this - that ansible can be
quite a bit picky about what it will be willing to work with remotely.
Thanks @maxklenk !
2020-12-01 22:20:27 +01:00
Marcel Partap
d5932ca393
synapse role workers setup: execute the endpoint extraction locally
...
Thanks @maxklenk !
2020-12-01 22:18:42 +01:00
Marcel Partap
851c25c47f
matrix-synapse nginx template: fix invalid jinja comment syntax
2020-12-01 21:55:07 +01:00
Marcel Partap
e314613ded
Add files created by workers-doc-to-yaml.awk to .gitignore
2020-12-01 21:52:59 +01:00
Marcel Partap
b73ac965ac
Merge remote-tracking branch 'origin/master' into synapse-workers
2020-12-01 21:24:26 +01:00
Marcel Partap
4678c5d7bd
Merge remote-tracking branch 'origin/master' into synapse-workers
...
Also, replace vague FIXME by a proper NOTE on the complete
story of the user_dir endpoints..
2020-11-11 21:26:08 +01:00
Marcel Partap
5598a89ad5
synapse workers doc: link to relevant synapse issue list search
2020-11-10 23:00:24 +01:00
Marcel Partap
f3d2797d9c
synapse workers: make awk script invocation handle paths with spaces
...
(quoting ftw)
2020-11-10 22:40:48 +01:00
Marcel Partap
dd402bee92
synapse workers: add rudimentary documentation on worker support
2020-11-10 22:30:33 +01:00
Marcel Partap
b05d298ae4
synapse workers nginx rule: add client_max_body_size on media endpoints
...
so transfer limits are properly set in accord to the relevant setting
https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/456#issuecomment-719996778
2020-11-10 21:43:33 +01:00
Marcel Partap
1e971312e8
synapse workers: handle auth fallback endpoint on main process only
...
(allegedly breaks with SSO enabled)
2020-11-10 21:23:19 +01:00
Marcel Partap
e5072c20d9
synapse workers/nginx: handle media_repository worker endpoints on federation port
...
to prevent "404 on the federation port for the path `/_matrix/media`,
if a remote server is trying to get the media object on federation
port, see https://github.com/matrix-org/synapse/issues/8695 "
https://github.com/matrix-org/synapse/pull/8701
2020-11-10 20:35:39 +01:00
Marcel Partap
cce90b187a
synapse workers: fix undefined variable cases when removing workers
2020-10-28 23:09:21 +01:00
Marcel Partap
e078e29ef8
synapse workers: fix self name in workers-doc-to-yaml.awk script
2020-10-28 08:39:31 +01:00
Marcel Partap
2d1b9f2dbf
synapse workers: reworkings + get endpoints from upstream docs via awk
...
(yes, a bit awkward and brittle… xD)
2020-10-28 07:13:19 +01:00
Marcel Partap
87bd64ce9e
Merge remote-tracking branch 'origin/master' into synapse-workers
2020-10-23 23:45:07 +02:00
Marcel Partap
a4125d5446
synapse workers: polishing, cleansing and installation of jq dependency
2020-10-23 20:49:53 +02:00
Marcel Partap
501efee07e
synapse workers: supply systemd with actual worker PIDs (requires jq)
...
also, worker.yaml.j2:
- hone worker_name
- remove worker_pid_file entry (would only be used if worker_daemonize
set to true; also, synapse only knows about the container namespace
and thus can not provide the required host-view PID)
2020-10-22 20:53:41 +02:00
Marcel Partap
d2e61af224
Add worker_name to synapse worker config template
...
& restrict federation listener; frontend_proxy / user_dir don't need it
2020-10-11 21:52:08 +02:00
Marcel Partap
36e9be6092
matrix_synapse_workers_{avail,enabled}_list: sort non-generic workers
...
.. alphabetically and put those not documented as multi-instance
capable on ports ending on zero.
2020-10-11 21:44:42 +02:00
Marcel Partap
e9241f5fb9
Improve synapse-workers systemd service template
...
Is the PID magic gonna work? or will it need an ExecStartPost hack..
2020-10-11 21:09:19 +02:00
Marcel Partap
40024e9b81
Prevent workers failing if their config doesn't exist
...
- cherry-pick "Ensure worker config exists in systemd service (#7528 )"
from synapse d74cdc1a42e8b487d74c214b1d0ca575429d546a:
"check that the worker config file exists instead of silently failing."
2020-10-11 21:09:19 +02:00
Marcel Partap
93a8ea7e4a
Merge remote-tracking branch 'master' into feature/add-worker-support
2020-10-11 20:59:05 +02:00
Marcel Partap
93f4111654
Prevent 404s when Riot tries to retrieve domain-specific config.json
...
Riot unconditionally asks for a config.${document.domain}.json, c.f.
https://github.com/vector-im/riot-web/blame/develop/src/vector/getconfig.ts#L24
2020-05-13 18:34:14 +02:00
Marcel Partap
058e3bbd7f
Document how to administer synapse database via tunneled web-frontend
2020-05-10 18:44:52 +02:00
Marcel Partap
46984a4f99
Nginx conf: more testing less b0rk
2020-04-19 21:42:34 +02:00
Marcel Partap
5f63d287b7
Move synapse worker ports up 10k
2020-04-19 19:05:03 +02:00
Marcel Partap
e4763c21bc
nginx config: route traffic to workers on matrix-synapse
...
FIXME: horrid duplication in template file
2020-04-19 19:05:03 +02:00
Marcel Partap
66a4073512
Publish synapse worker ports, need to be accessible to nginx
2020-04-19 19:05:03 +02:00
Marcel Partap
cf452fdf0a
Fix corner-cases found through testing (aka ansible is nuts)
2020-04-19 19:05:03 +02:00
Marcel Partap
a14b9c09ad
Add to synapse nginx template conditional URL rewrites for workers
...
· 😅 How to keep this in sync with the matrix-synapse documentation?
· regex location matching is expensive
· nginx syntax limit: one location only per block / statement
· thus, lots of duplicate statements in this file
2020-04-19 19:05:03 +02:00
Marcel Partap
353bc7c362
Add initial support for synapse workers
...
· needs documentation; no checks yet for port clashes or typos in worker name
· according to https://github.com/matrix-org/synapse/wiki/Workers-setup-with-nginx#results
about 90% of requests go to the synchrotron endpoint
· thus, the synchrotron worker is especially suited to be load-balanced
· most of the other workers are documented to support only a single instance
· https://github.com/matrix-org/synapse/blob/master/docs/workers.md
2020-04-19 19:05:03 +02:00
Marcel Partap
4172345d34
Fix regex matching against old variable names in ma1sd validation task
2020-04-02 17:20:06 +02:00
Marcel Partap
e4ceeccd14
Add mxisd => ma1sd migration task
2020-04-02 17:19:40 +02:00
Marcel Partap
92672f8949
matrix-ma1sd/tasks/validate_config.yml: can ansible process regex in when statements?
2020-04-02 11:31:59 +02:00
Marcel Partap
ed34d0ac39
fix "noeol" ("No newline at end of file" == missing 0A byte at file end)
2020-04-02 11:31:59 +02:00
Marcel Partap
c2d384d2ef
some more mxisd to ma1sd string/URL replacements
2020-04-02 11:31:38 +02:00
Marcel Partap
8c5c2e5eec
Bump ma1sd version to 2.3.0
2020-04-02 11:31:38 +02:00
Marcel Partap
874e2e1fc0
Rename variables (s/mxisd/ma1sd/) and adapt roles
2020-04-02 11:31:38 +02:00
Marcel Partap
9d0803cdf9
Specify up-to-date version 2.2.2 of ma1sd docker image
2020-04-02 11:26:30 +02:00
Marcel Partap
5fedd6cbf0
Replace mxisd with ma1sd in docs, fixing URLs
2020-04-02 11:26:30 +02:00
Marcel Partap
187dedf920
Duplicate matrix-mxisd role for matrix-ma1sd fork
...
(adapting strings and URLs)
2020-04-02 11:26:30 +02:00
Marcel Partap
7ead77fdb7
Remove spurious 'mxisd' string from mautrix bridge templates comment
2020-01-08 22:39:21 +01:00
Marcel Partap
66388c1f5b
Provide a sample rest_auth_endpoint close to actual setup
2019-05-15 01:51:02 +02:00
Marcel Partap
5aa7f637d8
Fix matrix_synapse_ext_password_provider_ldap_start_tls (it's boolean)
2019-05-14 23:09:59 +02:00
Marcel Partap
25d3b315de
Fix case of the mxisd ldap.connection.baseDNs option in comment
2019-05-14 22:38:21 +02:00
Marcel Partap
d114736014
Add a task to stop services (and remove containers)
2019-05-14 11:46:07 +02:00