Backups
Présentation
Depuis le mois de février 2017, ATILLA dispose de sauvegardes sur les principaux composants de son infrastructure. Ces sauvegardes sont effectuées chaque jour et incluent des éléments tels que :
- Des dumps des bases de données de production (pgsql-prod, mysql-prod) et de test (pgsql-test, mysql-test)
- Des dumps de bases de données spécifiques à certains services : gitlab-prod et rocket-prod
- Des éléments de configuration pour les services critiques de l’infrastructure : configuration DNS, DHCP, …
Fonctionnement
Ces sauvegardes sont effectuées à l’aide de l’infrastructure Bacula proposée au sein du S.I. de l’EISTI ; le serveur bill.atilla.org dispose d’un file daemon Bacula chargé d’effectuer les sauvegardes de l’infrastructure tous les jours à partir de 21h.
En pratique, l’agent bacula-fd présent sur bill.atilla.org ne sauvegarde que le contenu du dossier /srv/bacula, dans ce dossier se trouvent plusieurs montages NFS des différents serveurs à sauvegarder.
Ajout d’un nouveau contenu à sauvegarder
Si vous souhaitez mettre en place une sauvegarde pour un nouveau serveur, voici un exemple de procédure à suivre :
ATTENTION : Cette méthode ne constitue qu’une indication et n’est en aucun cas la marche à suivre à la lettre dans la mise en place de n’importe quelle sauvegarde !
Considérons qu’il est nécessaire de mettre en place la sauvegarde pour un tout nouveau serveur pgsql-preprod …
Configuration du serveur à sauvegarder
- Créer le dossier /srv/backups : mkdir -p /srv/backups
- Installer le serveur NFS : apt install nfs-kernel-server
- Configurer le serveur NFS : echo "/srv/backups 192.168.10.0/24(async,ro,no_subtree_check,no_root_squash)" >> /etc/exports
- Appliquer la configuration : systemctl restart nfs-kernel-server
- Installer un Cron pour réaliser les dumps de la base de données : crontab -e, ajouter la ligne 0 2 * * * su -l -c "pg_dumpall -f /srv/backups/postgres.sql" postgres
Configuration de bill.atilla.org
- Créer le dossier du montage NFS : mkdir -p /srv/bacula/pgsql-preprod
- Ajouter le partage NFS dans le fstab : echo "pgsql-preprod.preprod.infra.atilla.org:/srv/backups /srv/bacula/pgsql-preprod/ nfs noauto,ro,hard,intr 0 0" >> /etc/fstab
- Monter le partage NFS : mount pgsql-preprod.preprod.infra.atilla.org:/srv/backups
C’est tout ! L’agent Bacula se charge ensuite d’effectuer la sauvegarde de /srv/bacula.
Notes importantes
- Pour que notre installation de Bacula soit homogène avec les installations de la DOSI, notre agent bacula-fd à été rétrogradé à sa version 5.4.
- Il est nécessaire de notifier la DOSI lors de l’ajout d’un nouveau répertoire monté via NFS dans /srv/bacula pour que la sauvegarde de ce nouveau point de montage soit effective.
- Il est également nécessaire de notifier la DOSI lors de l'ajout de gros volumes à sauvegarder (>5G).