Project

General

Profile

Demande #2408

Tester la reprise sur backup

Added by Vincent-Xavier JUMEL over 6 years ago. Updated over 2 years ago.

Status:
Fermé
Priority:
Normale
Assignee:
Category:
Sauvegardes
Start date:
06/04/2017
Due date:
% Done:

100%

Estimated time:

History

#1

Updated by Quentin Gibeaux about 5 years ago

https://admin.chapril.org/doku.php?id=admin:procedures:restaurer_machine&s[]=backup

J'ai validé sur pad.april.org la restauration d'un dossier de postgresql.
Pas testé encore la restauration complète du backup from scratch

#2

Updated by Christian P. Momon almost 4 years ago

  • Project changed from Chapril to Infra Chapril
#3

Updated by Christian P. Momon over 3 years ago

  • Target version set to Backlog
#4

Updated by Christian P. Momon almost 3 years ago

  • Category set to Sauvegardes
#5

Updated by Romain H. over 2 years ago

  • Status changed from Nouveau to En cours de traitement
  • Assignee set to Romain H.
#6

Updated by Romain H. over 2 years ago

L'essai que j'ai fait sur pad est concluant.
Notes prises pendant le test à vérifier :

  1. Cloner la VM modèle
  2. Sur la VM crée, configurer la même adresse mac que la machine à restaurer. Dans le cas d'un test de restauration, suivre la procédure de création de VM pour faire la config réseau.
  3. Démarrer la VM et mettre à jour
  4. Modifier la configuration de la VM pour qu'elle démarre sur un livecd Debian
    Il faut arrêter la VM et pas seulement redémarrer pour que cette modif soit prise en compte
  5. Une fois sur le livecd,
    Installer les outils nécéssaires et configurer un serveur SSH :
    # apt update
    # apt install lvm2 openssh-server
    

    Monter la partition root (utiliser pvscan/vgscan pour trouver les path à utiliser) :
    # vgchange -a y
    # mount /dev/modele-vg/root /mnt/
    

    Récupérer les clés SSH depuis la partition root et démarrer sshd :
    # mkdir /root/.ssh
    # cp /mnt/etc/ssh_authorized_keys/root /root/.ssh/authorized_keys
    # systemctl start sshd  
    
  6. Se connecter en SSH
  7. Générer une clé SSH pour l'accès aux sauvegardes :
    # ssh-keygen -t ed25519
    
  8. Sur felicette autoriser cette clé à accéder aux sauvegardes de la VM à restaurer
    # vi /etc/ssh/authorized_keys/backup
    
  9. Toujours sur felicette, identifier le backup qui sera utilisé
    # export BORG_REPO=/srv/backups/<SERVICE-NAME>.cluster.chapril.org/
    # borg list
    
  10. De retour sur le SSH du livecd, tester si la connexion vers le serveur fonctionne bien:
    # ssh -p 2242 backup@backup.chapril.org true
    
  11. Récupérer le fichier /etc/fstab pour identifier comment le serveur était partitionné. Se poser la question de savoir s'il faut repartionner de façon identique.
    BORG_RSH="ssh -p 2242 -A" borg extract backup@backup.chapril.org:/srv/backups/<SERVICE-NAME>.cluster.chapril.org::2021-XX-XXTXX:XX:XX etc/fstab
    
  12. Procéder au partitionnement et monter les partitions dans en suivant la bonne arboresence, dans /mnt par exemple
  13. Procéder à la récupération des fichiers, il faut se cd dans le dossier puis exécuter la commande, par exemple :
    BORG_RSH="ssh -p 2242 -A" borg extract backup@backup.chapril.org:/srv/backups/<SERVICE-NAME>.cluster.chapril.org::2021-XX-XXTXX:XX:XX
    
  14. S'il sagit d'un test de restauration, s'assurer qu'il ne reste pas de traces de l'ancienne IP dans la configuration. Par exemple dans /etc/firehol/firehol.conf
  15. Redémarrer la VM sur son disque
  16. S'il y a une base de données, il faudra la restaurer, par exemple pour pad :
    Recréer le cluster (fichiers vides à la restauration)
    # pg_lsclusters
    # pg_dropcluster --stop 11 main
    # pg_createcluster --start 11 main
    # systemctl restart postgresql@11-main.service
    

    Restaurer les fichiers SQL
    # mv /var/backups/pgsql/*.sql.bz2 /usr/lib/postgresql/
    # su - postgres
    $ bzip2 -c -d postgres.sql.bz2 | psql postgres
    $ bzip2 -c -d template1.sql.bz2 | psql template1
    $ createdb etherpad
    $ createuser etherpad
    $ bzip2 -c -d etherpad.sql.bz2 | psql etherpad
    $ rm etherpad.sql.bz2 postgres.sql.bz2 template1.sql.bz2
    
  17. Pour un test de restauration, il est possible d'utiliser ssh pour faire un tunnel et tester le service. Par exemple pour pad, l'application est alors accessible sur http://127.0.0.1:9001/ :
    $ ssh -L 9001:127.0.0.1:9001 root@test-backup.cluster.chapril.org
    
#7

Updated by Romain H. over 2 years ago

  • Status changed from En cours de traitement to Résolu
  • % Done changed from 0 to 100

J'ai ajouté la doc en bas de la page https://admin.chapril.org/doku.php?id=admin:procedures:restaurer_machine et décommissionné la VM test-backup.

#8

Updated by Quentin Gibeaux over 2 years ago

  • Status changed from Résolu to Fermé
#9

Updated by Christian P. Momon over 2 years ago

  • Status changed from Fermé to Résolu
#10

Updated by Romain H. over 2 years ago

  • Status changed from Résolu to Fermé
#11

Updated by Christian P. Momon over 2 years ago

  • Target version changed from Backlog to Sprint 2021 mai

Also available in: Atom PDF