Code source wiki de Backups

Version 109.1 par Clément AUBIN le 2021/03/27 21:43

Afficher les derniers auteurs
1 {{toc/}}
2
3 == Présentation ==
4
5 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 :
6
7 * Des dumps des bases de données de production ({{code}}pgsql-prod{{/code}}, {{code}}mysql-prod{{/code}}) et de test ({{code}}pgsql-test{{/code}}, {{code}}mysql-test{{/code}})
8 * Des dumps de bases de données spécifiques à certains services : {{code}}gitlab-prod{{/code}} et {{code}}rocket-prod{{/code}}
9 * Des éléments de configuration pour les services critiques de l’infrastructure : configuration DNS, DHCP, …
10
11 == Fonctionnement ==
12
13 Ces sauvegardes sont effectuées à l’aide de l’infrastructure [[Bacula>>url:http://blog.bacula.org/]] proposée au sein du S.I. de l’EISTI ; le serveur {{code}}bill.atilla.org{{/code}} dispose d’un //file daemon// Bacula chargé d’effectuer les sauvegardes de l’infrastructure tous les jours à partir de 21h.
14
15 En pratique, l’agent {{code}}bacula-fd{{/code}} présent sur {{code}}bill.atilla.org{{/code}} ne sauvegarde que le contenu du dossier {{code}}/srv/bacula{{/code}}, dans ce dossier se trouvent plusieurs montages NFS des différents serveurs à sauvegarder.
16
17 == Ajout d’un nouveau contenu à sauvegarder ==
18
19 Si vous souhaitez mettre en place une sauvegarde pour un nouveau serveur, voici un exemple de procédure à suivre :
20
21 **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 !
22
23 Considérons qu’il est nécessaire de mettre en place la sauvegarde pour un tout nouveau serveur {{code}}pgsql-preprod{{/code}} …
24
25 === Configuration du serveur à sauvegarder ===
26
27 1. Créer le dossier {{code}}/srv/backups{{/code}} : {{code}}mkdir -p /srv/backups{{/code}}
28 1. Installer le serveur NFS : {{code}}apt install nfs-kernel-server{{/code}}
29 1. Configurer le serveur NFS : {{code}}echo "/srv/backups 192.168.10.0/24(async,ro,no_subtree_check,no_root_squash)" >> /etc/exports{{/code}}
30 1. Appliquer la configuration : {{code}}systemctl restart nfs-kernel-server{{/code}}
31 1. Installer un [[Cron>>url:https://en.wikipedia.org/wiki/Cron]] pour réaliser les dumps de la base de données : {{code}}crontab -e{{/code}}, ajouter la ligne {{code}}0 2 * * * su -l -c "pg_dumpall -f /srv/backups/postgres.sql" postgres{{/code}}
32
33 === Configuration de {{code}}bill.atilla.org{{/code}} ===
34
35 1. Créer le dossier du montage NFS : {{code}}mkdir -p /srv/bacula/pgsql-preprod{{/code}}
36 1. Ajouter le partage NFS dans le [[fstab>>url:https://en.wikipedia.org/wiki/Fstab]] : {{code}}echo "pgsql-preprod.preprod.infra.atilla.org:/srv/backups /srv/bacula/pgsql-preprod/ nfs noauto,ro,hard,intr 0 0" >> /etc/fstab{{/code}}
37 1. Monter le partage NFS : {{code}}mount pgsql-preprod.preprod.infra.atilla.org:/srv/backups{{/code}}
38
39 C’est tout ! L’agent Bacula se charge ensuite d’effectuer la sauvegarde de {{code}}/srv/bacula{{/code}}.
40
41 == Notes importantes ==
42
43 * Pour que notre installation de Bacula soit homogène avec les installations de la DOSI, notre agent {{code}}bacula-fd{{/code}} à été rétrogradé à sa version 5.4.
44 * Il est nécessaire de notifier la DOSI lors de l’ajout d’un nouveau répertoire monté via NFS dans {{code}}/srv/bacula{{/code}} pour que la sauvegarde de ce nouveau point de montage soit effective.
45 * Il est également nécessaire de notifier la DOSI lors de l'ajout de gros volumes à sauvegarder (>5G).