Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
services:messagerie_instantanee:matrix [2022/12/05 16:44] – [Tutoriels détaillés] gautgaut | services:messagerie_instantanee:matrix [2025/02/04 12:05] (Version actuelle) – [Etape 1 : choisir votre fournisseur pour le compte Matrix] adrn |
---|
| |
==== Etape 1 : choisir votre fournisseur pour le compte Matrix ==== | ==== Etape 1 : choisir votre fournisseur pour le compte Matrix ==== |
Ci-dessous une liste d'hébergeur du collectif qui proposent d'ouvrir un compte Matrix en accès libre: | Ci-dessous une liste d'hébergeur du collectif qui proposent d'ouvrir un compte Matrix en accès libre (ou sur simple inscription) : |
| |
{{url>https://www.chatons.org/entraide/list?title=&service_type_target_id=All&field_software_target_id=274&field_is_shared_value=All 100%,200 noscroll noborder alignment}} | {{url>https://www.chatons.org/entraide/list?title=&service_type_target_id=All&field_software_target_id=274&field_is_shared_value=All 100%,200 noscroll noborder alignment}} |
| |
L'outil de recherche d'hébergeurs de chatons.org peut vous permettre de trouver d'autres hébergeurs du collectifs qui le proposent de façon payante. | [[https://www.chatons.org/search/by-service?service_type_target_id=All&field_alternatives_aux_services_target_id=All&field_software_target_id=274&field_is_shared_value=All&title=|L'outil de recherche des services CHATONS]] peut vous permettre de trouver d'autres hébergeurs du collectif qui peuvent accueillir votre compte Matrix sous conditions. |
| |
Si vous cherchez à vous interconnecter avec des contacts Signal ou même WhatsApp comme sur le chat [[https://chat.sans-nuage.fr/#/room/#alsace-entraide-numerique:sans-nuage.fr|Alsace Entraide Numérique]], vous pouvez adhérer chez Alsace Réseau Neutre pour bénéficier de leurs passerelles. | Si vous cherchez à vous interconnecter avec des contacts Signal ou même WhatsApp comme sur le chat [[https://chat.sans-nuage.fr/#/room/#alsace-entraide-numerique:sans-nuage.fr|Alsace Entraide Numérique]], vous pouvez adhérer chez Alsace Réseau Neutre pour bénéficier de leurs passerelles. |
* le [[https://code.ffdn.org/arn/arn-messager|robot de mise en relation ARN-Messager]]. | * le [[https://code.ffdn.org/arn/arn-messager|robot de mise en relation ARN-Messager]]. |
* [[https://arn-fai.net/contact|Contacter ARN]] (#arn:sans-nuage.fr) pour plus d'infos et les droits sur le tuto de déploiement. | * [[https://arn-fai.net/contact|Contacter ARN]] (#arn:sans-nuage.fr) pour plus d'infos et les droits sur le tuto de déploiement. |
| |
| ==== Bug de connection CAS ==== |
| Si un SSO/CAS est configuré comme avec le paquet synapse_ynh, seule la connexion par CAS est possible, la connexion par identifiant+mdp est désactivée. |
| Certains clients comme pidgin ne supportent pas la connexion CAS, ou Element iOS est buggué. Voici comment résoudre ça : |
| https://github.com/YunoHost-Apps/synapse_ynh/issues/379 |
| |
==== Configuration du Client web Element ==== | ==== Configuration du Client web Element ==== |
| |
==== Nettoyage d'un serveur synapse ==== | ==== Nettoyage d'un serveur synapse ==== |
| Préférer les solutions basées sur l'API. Modifier directement la BDD est fortement déconseillé, car cela risque de corrompre des choses au niveau de la fédération. |
| * [recommandé sur le chat synapse](https://jacksonchen666.com/posts/2022-12-03/14-33-00/) |
| * https://foss-notes.blog.nomagic.uk/2021/03/matrix-database-house-cleaning/ |
| * https://levans.fr/shrink-synapse-database.html |
| * https://gitea.prk.st/romain/synapse-tools/raw/branch/master/synapse-purge.sh |
| * https://www.tedomum.net/dev/service/matrix/administration/ |
| |
| |
Un serveur synapse est gourmand en ressources, principalement en consommation disque et mémoire à travers sa base de données. Nettoyer régulièrement le serveur permet de conserver l'usage mémoire et la taille des tables à un niveau raisonnable (en 2021, un serveur synapse de taille moyenne doit consommer moins de 6Go de RAM et 100Go de disque, beaucoup moins s'il ne fédère pas avec de gros salons). Le [[https://levans.fr/shrink-synapse-database.html|guide de Levans]] est très complet pour le nettoyage d'un serveur Matrix, et quelques extraits adaptés sont proposés à suivre. | Un serveur synapse est gourmand en ressources, principalement en consommation disque et mémoire à travers sa base de données. Nettoyer régulièrement le serveur permet de conserver l'usage mémoire et la taille des tables à un niveau raisonnable (en 2021, un serveur synapse de taille moyenne doit consommer moins de 6Go de RAM et 100Go de disque, beaucoup moins s'il ne fédère pas avec de gros salons). Le [[https://levans.fr/shrink-synapse-database.html|guide de Levans]] est très complet pour le nettoyage d'un serveur Matrix, et quelques extraits adaptés sont proposés à suivre. |
# Finalement exécuter tous les fichiers SQL | # Finalement exécuter tous les fichiers SQL |
ls *.sql | xargs -ti psql -U$PGUSER -p 5432 -h $PGHOST $PGUSER -f '{}' | ls *.sql | xargs -ti psql -U$PGUSER -p 5432 -h $PGHOST $PGUSER -f '{}' |
| |
| === Nettoyer les évènements orphelins === |
| Problèmes : |
| https://github.com/element-hq/synapse/issues/9406 |
| https://github.com/element-hq/synapse/issues/15575 |
| |
| Solution [[https://forum.club1.fr/d/113-la-base-de-donnees-de-synapse-est-enorme/16|trouvée par club1]] puis [[https://www.underworld.fr/blog/matrix-synapse-maintenance-de-la-base-de-donnee-postgresql|fouine@underworld]] : |
| Avec le temps, ma base a continué de grossir et ce malgré l'application régulière des préceptes/règles d’hygiènes ci-dessus, qui permettaient quand même de limiter les dégâts. |
| |
| En cherchant... encore... et encore, je suis tombé sur ce blog : https://blog.gelesneeuw.nl/technology/2024/04/20/matrix-maintenance/ |
| |
| Il est fait référence à un "bug" de jeunesse de synapse, qui perdure, dont voici l'issue : https://github.com/matrix-org/synapse/issues/3364 |
| |
| Et dont voici le remède : https://github.com/erikjohnston/synapse-find-unreferenced-state-groups |
| |
| C'est EXACTEMENT ce qui causait l’embonpoint de ma base de donnée. Après application du traitement, celle-ci est passée de 250Go à 18Go... oui, DIX-HUIT Giga. |
| |
| Pour faire simple, ARRÊTEZ SYNAPSE, ARRÊTEZ SYNAPSE et ARRÊTEZ SYNAPSE, puis générez le fichier csv qui va contenir la liste des "événements orphelins": |
| |
| rust-synapse-find-unreferenced-state-groups -p "postgresql://$DBUSER:$PGPASSWORD@localhost/$DBNAME" -o "/home/user/unreferenced.csv" |
| |
| Enfin, dans le cli psql, une fois connecté à votre base de donnée: |
| |
| CREATE TEMPORARY TABLE unreffed(id BIGINT PRIMARY KEY); |
| COPY unreffed FROM '/home/user/unreferenced.csv' WITH (FORMAT 'csv'); |
| DELETE FROM state_groups_state WHERE state_group IN (SELECT id FROM unreffed); |
| DELETE FROM state_group_edges WHERE state_group IN (SELECT id FROM unreffed); |
| DELETE FROM state_groups WHERE id IN (SELECT id FROM unreffed); |
| |
| Ce bug m'aura pourri la vie durant 3 ans, m'imposant des plans de remédiations lourds, des arbitrages de ressources, avec indispo. bref, je suis content :) |
| |
| |
| |