Merge branch 'main' of git.a-lec.org:a-lec/commissions/infrastructure/sauvegardes
This commit is contained in:
commit
9722e8e4e6
|
@ -19,15 +19,35 @@ Quelques pré-requis :
|
||||||
- l'adminsys d'une machine doit pouvoir régler lui-même certaines caractéristiques de la sauvegarde de sa machine : avec Borgmatic, il dispose d'un fichier de configuration où configurer des hooks (pour une base de données par exemple) ou définir les dossiers à sauver, définir les exclusions…
|
- l'adminsys d'une machine doit pouvoir régler lui-même certaines caractéristiques de la sauvegarde de sa machine : avec Borgmatic, il dispose d'un fichier de configuration où configurer des hooks (pour une base de données par exemple) ou définir les dossiers à sauver, définir les exclusions…
|
||||||
- l'adminsys de la sauvegarde doit pouvoir régler lui-même certaines caractérisiques des sauvegardes tels que rétention, horaire et autres : il dispose d'un fichier de configuration par machine sauvegardée et d'un script de déclenchement des sauvegardes.
|
- l'adminsys de la sauvegarde doit pouvoir régler lui-même certaines caractérisiques des sauvegardes tels que rétention, horaire et autres : il dispose d'un fichier de configuration par machine sauvegardée et d'un script de déclenchement des sauvegardes.
|
||||||
|
|
||||||
Flux général :
|
Flux en mode `local` :
|
||||||
```
|
```
|
||||||
saukvipeu:/etc/cron.d/backups
|
saukvipeu:/etc/cron.d/backups
|
||||||
-> /srv/borg/bin/dobackup-remote fqdn1
|
-> /srv/borg/bin/dobackup-local
|
||||||
--ssh(admin666@fqdn1)--> sudo borgmatic create --verbosity 1
|
--> borgmatic create --verbosity 1
|
||||||
|
-> /etc/borgmatic/fqdn.yaml + /etc/borgmatic/excludes
|
||||||
|
--> /var/backups/borg/fqdn.repo
|
||||||
|
```
|
||||||
|
|
||||||
|
Flux en mode `remote` :
|
||||||
|
```
|
||||||
|
Systemd.borgmatic.timer
|
||||||
|
--> borgmatic.service
|
||||||
|
--ssh(borg@fqdn1)--> sudo borgmatic create --verbosity 1
|
||||||
-> fqdn1:/etc/borgmatic/config.yaml + /etc/borgmatic/excludes
|
-> fqdn1:/etc/borgmatic/config.yaml + /etc/borgmatic/excludes
|
||||||
--ssh(borg@sauvkipeu)--> /var/backups/borg/fqdn1.repo
|
--ssh(borg@sauvkipeu)--> /var/backups/borg/fqdn1.repo
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Flux en mode `rysnc` :
|
||||||
|
```
|
||||||
|
saukvipeu:/etc/cron.d/backups
|
||||||
|
-> /srv/borg/bin/dobackup-rsync fqdn1
|
||||||
|
--> borgmatic create --verbosity 1
|
||||||
|
-> fqdn1:/etc/borgmatic/config.yaml + /etc/borgmatic/excludes
|
||||||
|
--> rsync fqdn1 /var/backups/borg/mirros/fqdn1/
|
||||||
|
--> /var/backups/borg/fqdn1.repo
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
Organisation des fichiers côté machine sauvegardée en mode `remote` :
|
Organisation des fichiers côté machine sauvegardée en mode `remote` :
|
||||||
- /etc/borgmatic/
|
- /etc/borgmatic/
|
||||||
- config.yaml : configuration de la sauvegarde,
|
- config.yaml : configuration de la sauvegarde,
|
||||||
|
@ -201,6 +221,12 @@ apt update
|
||||||
apt install -t bullseye-backports borgmatic borgbackup
|
apt install -t bullseye-backports borgmatic borgbackup
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Par défaut, le service Systemd de Borgmatic n'a pas d'action en paramètre et cela déclenche une série d'actions : `prune`, `create…` Nous lançons le prune côté serveur donc il faut forcer l'action `create` dans le fichier `/lib/systemd/system/borgmatic.service` :
|
||||||
|
```
|
||||||
|
– ExecStart=systemd-inhibit --who="borgmatic" --what="sleep:shutdown" --why="Prevent interrupting scheduled backup" /usr/bin/borgmatic --verbosity -1 --syslog-verbosity 1
|
||||||
|
+ ExecStart=systemd-inhibit --who="borgmatic" --what="sleep:shutdown" --why="Prevent interrupting scheduled backup" /usr/bin/borgmatic create --verbosity -1 --syslog-verbosity 1
|
||||||
|
```
|
||||||
|
|
||||||
Créer des clés `ssh` pour l'utilisateur `root` (si besoin) :
|
Créer des clés `ssh` pour l'utilisateur `root` (si besoin) :
|
||||||
```
|
```
|
||||||
sudo ssh-keygen -t ed25519
|
sudo ssh-keygen -t ed25519
|
||||||
|
@ -225,13 +251,10 @@ Vérifier que la configuration Borgmatic est valide :
|
||||||
validate-borgmatic-config
|
validate-borgmatic-config
|
||||||
```
|
```
|
||||||
|
|
||||||
Ajouter la clé `root` du serveur de sauvegarde dans `/home/admin666/.ssh/authorized_keys` :
|
|
||||||
```
|
|
||||||
ssh-ed25519 AAAAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX root@sauvkipeu.libre-en-communs.org
|
|
||||||
```
|
|
||||||
|
|
||||||
Si besoin, suivant les particularité de la machine à sauvegarder, ajouter des entrées dans le fichier `/etc/borgmatic/excludes`.
|
Si besoin, suivant les particularité de la machine à sauvegarder, ajouter des entrées dans le fichier `/etc/borgmatic/excludes`.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Côté serveur de sauvegarde
|
## Côté serveur de sauvegarde
|
||||||
|
|
||||||
Initialiser le contexte Borgmatic :
|
Initialiser le contexte Borgmatic :
|
||||||
|
@ -253,10 +276,7 @@ time borgmatic create --stats --verbosity 1
|
||||||
|
|
||||||
## Tester côté serveur
|
## Tester côté serveur
|
||||||
|
|
||||||
Lancer une sauvegarde :
|
~~Lancer une sauvegarde : `time sudo /srv/borg/bin/dobackup-remote foo.bar.org`.~~
|
||||||
```
|
|
||||||
time sudo /srv/borg/bin/dobackup-remote foo.bar.org
|
|
||||||
```
|
|
||||||
|
|
||||||
Afficher les informations du dépôt :
|
Afficher les informations du dépôt :
|
||||||
```
|
```
|
||||||
|
@ -273,7 +293,7 @@ Afficher le contenu de la sauvegarde :
|
||||||
borgmatic -c /etc/borgmatic.d/foo.bar.org.yaml list --archive 2023-XX-XXTXX:XX
|
borgmatic -c /etc/borgmatic.d/foo.bar.org.yaml list --archive 2023-XX-XXTXX:XX
|
||||||
```
|
```
|
||||||
|
|
||||||
Ajouter le lancement de la sauvegarde dans `/srv/borg/bin/dobackups` :
|
~~Ajouter~~ **Ne pas ajouter** le lancement de la sauvegarde dans `/srv/borg/bin/dobackups` :
|
||||||
```
|
```
|
||||||
/srv/borg/bin/dobackup-remote foo.bar.org
|
/srv/borg/bin/dobackup-remote foo.bar.org
|
||||||
```
|
```
|
||||||
|
|
Loading…
Reference in New Issue