====== ejabberd ======
Le service XMPP de Parinux utilise le logiciel ejabberd (mais pas seulement, autour il y a d'autres logiciels comme [[si:biboumi]], [[si:conversejs]], [[si:movim]]).
===== Déploiement initial =====
Pour mémoire voici comment il a été déployé dans le conteneur LXC nommé //xmpp-1// sur [[si:troll3]].
Un second conteneur LXC nommé //xmpp-2// a été créé sur [[si:troll4]] dans l'espoir de mettre en place un cluster ejabberd un jour... à l'heure où j'écris ces lignes c'est resté au stade d'espoir.
sudo apt install ejabberd erlang-p1-pgsql
//TODO pitchum : à détailler, extrait de la configuration, notamment les modules activés et l'interfaçage LDAP//
===== Maintenance =====
==== Logs ====
Pour consulter les logs avec de jolies couleurs :
tail -f /var/log/ejabberd/ejabberd.log | ccze -A
Il se peut que les logs soient peu détaillés.
Si besoin, modifier la variable //loglevel// dans le fichier ///etc/ejabberd/ejabberd.yml// pour passer en debug (temporairement hein, parce que ça floode vite) et taper ensuite :
sudo -u ejabberd ejabberdctl reload_config
==== Sauvegardes ====
Les seules données utiles à sauvegarder sont :
* la configuration ///etc/ejabberd/ejabberd.yml//
* un bout de configuration dans ///etc/default/ejabberd//
* le contenu de la base de données postgresql
//TODO pitchum : à détailler, pg_dump toussa//
==== Recharger/Relancer le service ====
Certaines modifications de configuration sont prises en compte après un simple reload (sans interruption de service donc), mais d'autres nécessiteront carrément un restart.
Pour le savoir, lancer un reload et observer les logs, en général il y a un message explicite indiquant que ce n'est pas suffisant et qu'il faudra faire un restart.
* pour un simple reload : sudo -u ejabberd ejabberdctl reload_config
* pour un restart : sudo systemctl restart ejabberd