Migration de Mattermost vers sa propre VM
-
Préparer la configuration de Mattermost, notamment: -
SMTP -
S3 -
PostgreSQL + replica
-
-
Arrêter l'instance Mattermost sur la VM web -
Restore de la base de données sur la VM pgsql-01 (primary) -
Configuration sur la VM mattermost -
Démarrer l'instance Mattermost sur la VM mattermost -
Configurer les HAProxy
VM web : Arrêter l'instance Mattermost
systemctl stop mattermost
sudo -u postgres pg_dump -Fc chat-neutrinet-be -f /tmp/chat-neutrinet-be.sql
cd /var/www/chat-neutrinet-be/mattermost
tar cvfz /tmp/chat-neutrinet-be.tar.gz config plugins client/plugins logs
Puis copier les fichiers sur les bonnes VMs:
scp web.patata.louise.neutri.net:/tmp/chat-neutrinet-be.sql /tmp/
scp /tmp/chat-neutrinet-be.sql pgsql-01.patata.louise.neutri.net:/tmp/
scp web.patata.louise.neutri.net:/tmp/chat-neutrinet-be.tar.gz /tmp/
scp /tmp/chat-neutrinet-be.tar.gz mattermost.patata.louise.neutri.net:/tmp/
VM pgsql-01 (primary) : Restaurer la base de données
sudo -u postgres dropdb chat-neutrinet-be
sudo -u postgres createdb chat-neutrinet-be
sudo -u postgres pg_restore -d chat-neutrinet-be < /tmp/chat-neutrinet-be.sql
VM mattermost : Démarrer l'instance Mattermost
cd /var/www/chat-neutrinet-be/dist
rm -rf config plugins client/plugins logs
tar xvfz /tmp/chat-neutrinet-be.tar.gz
cp ../config.json config/config.json
chown chat-neutrinet-be: . -R
Puis lancer le playbook Mattermost pour s'assurer que tout est bien configuré:
ansible-playbook playbooks/apps/mattermost.yml
Configurer les HAProxy
Lancer le playbook sur le HAProxy secondaire:
ansible-playbook playbooks/apps/haproxy.yml -l haproxy-02.patata.louise.neutri.net
Exemple pour vérifier que tout est ok:
ssh haproxy-02.patata.louise.neutri.net -D 1080
Puis configurer /etc/hosts
sur sa machine ET sur haproxy-02 pour que chat.neutrinet.be pointe vers localhost.
Si tout est ok, lancer le playbook sur le HAProxy primaire:
ansible-playbook playbooks/apps/haproxy.yml -l haproxy-01.patata.louise.neutri.net
Ne pas oublier de défaire les modifications faites dans /etc/hosts
!