backup
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine 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 jocelynd | backup [2021/03/11 18:27] – daimrod | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
</ | </ | ||
- | |||
- | <WRAP center round todo 60%> | ||
- | Page en cours de rédaction | ||
- | </ | ||
- | |||
< | < | ||
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 committer les fichiers de cléfs: | ||
+ | |||
+ | - Keyringer: `passwords/ | ||
+ | - SSH: `ssh/ | ||
### É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' | Il faut avoir accès au serveur de sauvegarde visé pour pouvoir effectuer cette étape… Ou bien la faire faire par quelqu' | ||
</ | </ | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Si avertissement car catalogue apt périmé sur le serveur de sauvegarde, '' | ||
+ | |||
+ | Solution long terme : mettre à niveau carlota :-p. | ||
+ | |||
+ | --- //Jocelyn 2020/10/06 00:25// | ||
+ | </ | ||
+ | |||
+ | |||
< | < | ||
```bash | ```bash | ||
- | ansible-playbook --diff -l backup_servers | + | ansible-playbook --diff |
``` | ``` | ||
## 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, | + | Ces procédures nécessitent que les sauvegardes aient été configurées conformément aux sections précédentes, |
- | ### Récupérer d'une sauvegarde plantée (lock) | + | ### PROCÉDURE : Récupérer d'une sauvegarde plantée (lock) |
</ | </ | ||
Ligne 131: | Ligne 141: | ||
> Remote: borg.locking.LockTimeout: | > Remote: borg.locking.LockTimeout: | ||
- | Cela veut dire qu'une sauvegarde a crashée, et par prudence un « lock » est laissé… Et empêche toute sauvegarde ultérieure | + | 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' |
Ligne 173: | Ligne 183: | ||
La prochaine sauvegarde devrait pouvoir s' | La prochaine sauvegarde devrait pouvoir 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 `/ | + | 3. Exécuter le script de sauvegarde `/opt/ |
- | + | ||
- | ### 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 : | ||
</ | </ | ||
+ | <WRAP center round important 60%> | ||
+ | Cette procédure restaure l' | ||
+ | </ | ||
+ | < | ||
- | ====== 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' | ||
+ | 4. lister les sauvegardes disponibles : | ||
+ | ``` | ||
+ | [borg@carlota.faimaison.net: | ||
+ | bambelle-2020-05-17-02-00 | ||
+ | bambelle-2020-05-24-02-00 | ||
+ | bambelle-2020-05-31-02-00 | ||
+ | bambelle-2020-06-07-02-00 | ||
+ | bambelle-2020-06-10-02-00 | ||
+ | bambelle-2020-06-11-02-00 | ||
+ | bambelle-2020-06-12-02-00 | ||
+ | bambelle-2020-06-13-02-00 | ||
+ | bambelle-2020-06-14-02-00 | ||
+ | bambelle-2020-10-04-02-00 | ||
+ | bambelle-2020-10-05-02-00 | ||
+ | ``` | ||
+ | Repérer le nom de l' | ||
+ | 5. Repasser root (en conservant les variables d' | ||
+ | ``` | ||
+ | [borg@carlota.faimaison.net: | ||
+ | ``` | ||
+ | 6. Se rendre à la racine (sinon on va restaurer notre sauvegarde dans un sous-dossier) | ||
+ | ``` | ||
+ | root@bambelle # cd / | ||
+ | ``` | ||
+ | 7. Lancer la restauration de l' | ||
+ | ``` | ||
+ | root@bambelle # borg extract $REPOSITORY:: | ||
+ | ``` | ||
- | ===== 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 : /// | ||
- | Le principe consiste à faire un backup du maximum de choses (bdd, site, configuration) et les déposer sur // / | + | ### PROCÉDURE : Récupérer une sauvegarde depuis une autre machine |
- | Ensuite, moyennant l' | + | 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' | + | Le dépôt (repository) |
- | * 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/ |
- | 4U / 48Go de RAM / 35 Go de disques | + | 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/ | ||
+ | ``` | ||
+ | 3. Lister les archives contenues dans le dépôt : | ||
+ | ``` | ||
+ | $ borg list ~/ | ||
+ | bambelle-2020-05-17-02-00 | ||
+ | bambelle-2020-05-24-02-00 | ||
+ | bambelle-2020-05-31-02-00 | ||
+ | bambelle-2020-06-07-02-00 | ||
+ | bambelle-2020-06-10-02-00 | ||
+ | bambelle-2020-06-11-02-00 | ||
+ | bambelle-2020-06-12-02-00 | ||
+ | bambelle-2020-06-13-02-00 | ||
+ | bambelle-2020-06-14-02-00 | ||
+ | bambelle-2020-10-04-02-00 | ||
+ | bambelle-2020-10-05-02-00 | ||
+ | ``` | ||
- | 2 approches | + | 4. Créer un dossier pour extraire l' |
- | * local avec [Borg[https: | + | ``` |
- | * 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 | ||
+ | ``` | ||
+ | </ | ||
- | Lien vers la solution de backup | + | <WRAP center round tip 60%> |
+ | Il est aussi possible d' | ||
+ | </ |
backup.txt · Dernière modification : 2021/04/08 19:51 de gde