Outils pour utilisateurs

Outils du site


backup

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
backup [2020/10/05 20:37] – [Étape 6 : jouer le role sur les backup_servers] corrige la commande ansible pour jouer le rôle client jocelyndbackup [2021/04/08 18:50] gde
Ligne 4: Ligne 4:
  
 </markdown> </markdown>
- 
-<WRAP center round todo 60%> 
-Page en cours de rédaction 
-</WRAP> 
- 
  
 <markdown> <markdown>
Ligne 84: Ligne 79:
 ansible-playbook -K --diff -l toto.faimaison.net -t borg-client playbook-fma.yml ansible-playbook -K --diff -l toto.faimaison.net -t borg-client playbook-fma.yml
 ``` ```
 +
 +Et commiter les fichiers de cléfs:
 +
 +- Keyringer: `passwords/machines/keys/noyau/<MACHINE>/borg`
 +- SSH: `ssh/borg-keys/<MACHINE>.pub`
  
 ### Étape 4: ajouter aux serveurs de sauvegarde la nouvelle machine à sauvegarder ### Étape 4: ajouter aux serveurs de sauvegarde la nouvelle machine à sauvegarder
Ligne 106: Ligne 106:
 Il faut avoir accès au serveur de sauvegarde visé pour pouvoir effectuer cette étape… Ou bien la faire faire par quelqu'un qui y a accès. Il faut avoir accès au serveur de sauvegarde visé pour pouvoir effectuer cette étape… Ou bien la faire faire par quelqu'un qui y a accès.
 </WRAP> </WRAP>
 +
 +<WRAP center round tip 60%>
 +Si avertissement car catalogue apt périmé sur le serveur de sauvegarde, ''sudo apt update -o Acquire::Check-Valid-Until=false'' sur ce dernier.
 +
 +Solution long terme : mettre à niveau carlota :-p.
 +
 + --- //Jocelyn 2020/10/06 00:25//
 +</WRAP>
 +
 +
  
 <markdown> <markdown>
  
 ```bash ```bash
-ansible-playbook --diff -l backup_servers -t borg playbook-fma.yml+ansible-playbook --diff -K -l borg_servers -t borg-server playbook-fma.yml
 ``` ```
  
 ## Procédures manuelles ## Procédures manuelles
  
-Ces trois procédures nécessitent que les sauvegardes aient été configurées conformément aux sections précédentes, et les infos bien commitées dans le dépôt adminsys.+Ces procédures nécessitent que les sauvegardes aient été configurées conformément aux sections précédentes, et les infos bien commitées dans le dépôt adminsys.
  
-### Récupérer d'une sauvegarde plantée (lock)+### PROCÉDURE : Récupérer d'une sauvegarde plantée (lock)
  
 </markdown> </markdown>
Ligne 131: Ligne 141:
 > Remote: borg.locking.LockTimeout: /var/borg-backups/repos/bambelle/lock > Remote: borg.locking.LockTimeout: /var/borg-backups/repos/bambelle/lock
  
-Cela veut dire qu'une sauvegarde a crashée, et par prudence un « lock » est laissé… Et empêche toute sauvegarde ultérieure m(. À moins qu'un processus borg soit toujours en cours d'exécution (`sudo ps aux|grep borg` pour s'en assurer), il faut « casser » le lock pour que les sauvegardes puissent reprendre :+Cela veut dire qu'une sauvegarde a crashée, et par prudence un « lock » est laissé… Et empêche toute sauvegarde ultérieure. À moins qu'un processus borg soit toujours en cours d'exécution (`sudo ps aux|grep borg` pour s'en assurer). Il faut « casser » le lock pour que les sauvegardes puissent reprendre :
  
  
Ligne 173: Ligne 183:
 La prochaine sauvegarde devrait pouvoir s'effectuer comme il faut. Si on ne veut pas attendre, on peut aussi créer une sauvegarde manuelle (cf ci-après). La prochaine sauvegarde devrait pouvoir s'effectuer comme il faut. Si on ne veut pas attendre, on peut aussi créer une sauvegarde manuelle (cf ci-après).
  
-### Créer une sauvegarde manuellement+### PROCÉDURE : Créer une sauvegarde manuellement
  
 Avant certaines opérations délicates, on peut souhaiter réaliser une sauvegarde manuelle. Avant certaines opérations délicates, on peut souhaiter réaliser une sauvegarde manuelle.
Ligne 179: Ligne 189:
 1. se connecter sur la machine à sauvegarder 1. se connecter sur la machine à sauvegarder
 2. passer root `sudo su` 2. passer root `sudo su`
-3. Exécuter le script de sauvegarde `/opt/<machine_source>_<machine_cible>.sh` +3. Exécuter le script de sauvegarde `/opt/borgbackup-client/<machine_source>_<machine_cible>.sh`
- +
-### Récupérer une sauvegarde depuis la machine concernée +
- +
-TODO +
- +
-### Récupérer une sauvegarde depuis une autre machine +
- +
-(si la machine sauvegardée est HS) +
- +
-TODO +
  
 +### PROCÉDURE : Récupérer totalement une sauvegarde depuis la machine concernée
  
 </markdown> </markdown>
 +<WRAP center round important 60%>
 +Cette procédure restaure l'intégralité d'une sauvegarde, en écrasant éventuellement des fichiers en place sur la machine. Pour faire plus fin, regarder la [[https://borgbackup.readthedocs.io/en/stable/usage/extract.html|doc de borg extract]] ou utiliser [[https://borgbackup.readthedocs.io/en/stable/usage/mount.html|borg mount]] qui permet de monter une sauvegarde distante pour l'examiner ou y piocher quelques fichiers.
 +</WRAP>
  
 +<markdown>
  
-====== TOUT CE QUI EST EN DESSOUS DE CE TITRE EST DEPRECIE ======+1. se connecter sur la machine à sauvegarder 
 +2. passer root `sudo su` 
 +3. Ouvrir un « shell borg » avec toutes les variables d'env définies((plus d'infos avec `--help`)): `/opt/borgbackup-client/<machine_source>_<machine_cible>.sh -c` 
 +4. lister les sauvegardes disponibles : 
 +``` 
 +[borg@carlota.faimaison.net:repos/bambelle ]$  # borg list $REPOSITORY 
 +bambelle-2020-05-17-02-00            Sun, 2020-05-17 02:00:11 
 +bambelle-2020-05-24-02-00            Sun, 2020-05-24 02:00:10 
 +bambelle-2020-05-31-02-00            Sun, 2020-05-31 02:00:11 
 +bambelle-2020-06-07-02-00            Sun, 2020-06-07 02:00:10 
 +bambelle-2020-06-10-02-00            Wed, 2020-06-10 02:00:10 
 +bambelle-2020-06-11-02-00            Thu, 2020-06-11 02:00:10 
 +bambelle-2020-06-12-02-00            Fri, 2020-06-12 02:00:10 
 +bambelle-2020-06-13-02-00            Sat, 2020-06-13 02:00:11 
 +bambelle-2020-06-14-02-00            Sun, 2020-06-14 02:00:10 
 +bambelle-2020-10-04-02-00            Sun, 2020-10-04 02:00:09 
 +bambelle-2020-10-05-02-00            Mon, 2020-10-05 02:00:11 
 +``` 
 +Repérer le nom de l'archive qui nous intéresse, par exemple `bambelle-2020-10-05-02-00`. 
 +5. Repasser root (en conservant les variables d'environnement), pour avoir le droit de restaurer la sauvegarde dans le système de fichiers. 
 +``` 
 +[borg@carlota.faimaison.net:repos/bambelle ]$  # su 
 +``` 
 +6. Se rendre à la racine (sinon on va restaurer notre sauvegarde dans un sous-dossier) 
 +``` 
 +root@bambelle # cd / 
 +``` 
 +7. Lancer la restauration de l'archive choisie.
  
 +```
 +root@bambelle # borg extract $REPOSITORY::bambelle-2020-10-05-02-00
 +```
  
-===== trompe-souris =====+Des opérations supplémentaires peuvent ensuite être nécessaire selon le type de fichiers restaurés (ex: restaurer un fichier .sql dans une base).
  
-Les backups sont executé par un simple script bash qui tourne quotidiennement : ///etc/cron.daily/backup// 
  
-Le principe consiste à faire un backup du maximum de choses (bdd, site, configuration) et les déposer sur // /home/faimaison-backup //.+### PROCÉDURE : Récupérer une sauvegarde depuis une autre machine
  
-Ensuite, moyennant l'installation d'une clé ssh, un adminsys peut récupérer le contenu de ce répertoire pour en faire un copie locale en utilisant son application préférée (rdiff-backup, duplicity, script maison, etc.)+On doit récupérer :
  
 +  - le dépôt borg qui contient les sauvegardes de la machine
 +  - la passphrase du dépôt
  
-Pour l'instant est sauvegardé :+Le dépôt (repository) est contenu sur le serveur de sauvegarde ((actuellement, carlota -- //Jocelyn 2020/10/05 23:53//)) dans le répertoire **/var/borg-backups/repos/**.
  
-  * bdd pour le si +On va imaginer qu'on veut récupérer les sauvegardes de la machine bambelle.faimaison.net dans le cas ou celle-ci aurait-été détruite.
-  * conf dns et postfix +
-  * sites du wiki et de l'assos +
-  * la configuration des mailing-list et les archives+
  
-===== Big Backup serveur ===== +1. Récupérer le dossier */var/borg-backups/repos/bambelle*  depuis le serveur de sauvegarde (par ex en demandant gentiment à un·e admin du serveur de sauvegarde). Ici on va considérer qu'on le stocke en local dans *~/repo_bambelle* 
-4U 48Go de RAM 35 Go de disques en RAID6+2. Récupérer la passphrase du dépôt et la stocker dans la variable qui va bien : 
 +``` 
 +BORG_PASSPHRASE=$(keyringer fma-machines decrypt noyau/bambelle.faimaison.net/borg/repository_passphrase.asc) 
 +``` 
 +3. Lister les archives contenues dans le dépôt : 
 +``` 
 +$ borg list ~/repo_bambelle 
 +bambelle-2020-05-17-02-00            Sun, 2020-05-17 02:00:11 
 +bambelle-2020-05-24-02-00            Sun, 2020-05-24 02:00:10 
 +bambelle-2020-05-31-02-00            Sun, 2020-05-31 02:00:11 
 +bambelle-2020-06-07-02-00            Sun, 2020-06-07 02:00:10 
 +bambelle-2020-06-10-02-00            Wed, 2020-06-10 02:00:10 
 +bambelle-2020-06-11-02-00            Thu, 2020-06-11 02:00:10 
 +bambelle-2020-06-12-02-00            Fri, 2020-06-12 02:00:10 
 +bambelle-2020-06-13-02-00            Sat, 2020-06-13 02:00:11 
 +bambelle-2020-06-14-02-00            Sun, 2020-06-14 02:00:10 
 +bambelle-2020-10-04-02-00            Sun, 2020-10-04 02:00:09 
 +bambelle-2020-10-05-02-00            Mon, 2020-10-05 02:00:11 
 +```
  
-2 approches de la sauvegarde: +4. Créer un dossier pour extraire l'archive de ton choix et l'extraire  
-  * local avec [Borg[https://www.borgbackup.org]] 10 Go de RAM 15To (VM "prod" et fichiers) +``` 
-  * en VM, soit 150 VM (à 256 Mo de RAM et 40Go avec une moyenne de 150 Go).+$ mkdir ~/restauration 
 +$ cd ~/restauration 
 +$ borg extract ~/repo_bambelle 
 +```
  
 +</markdown>
  
-Lien vers la solution de backup [[backup:borg|BORG]]+<WRAP center round tip 60%> 
 +Il est aussi possible d'utiliser ''[[https://borgbackup.readthedocs.io/en/stable/usage/mount.html|borg mount]]'' au lieu de ''borg extract'' pour examiner/picorer l'archive plutôt que de l'extraire d'un bloc. 
 +</WRAP>
backup.txt · Dernière modification : 2021/04/08 19:51 de gde