Outils pour utilisateurs

Outils du site


admin:procedures:restaurer_machine

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édentes Révision précédente
Prochaine révision
Révision précédente
admin:procedures:restaurer_machine [2018/10/04 09:30]
fpoulain
admin:procedures:restaurer_machine [2018/11/26 12:06] (Version actuelle)
fpoulain [Restauration de l'archive]
Ligne 9: Ligne 9:
  
   - d'​établir la connectivité ssh   - d'​établir la connectivité ssh
-  - de téléchager ​un tarball ​de la machine +  - de voir comment ​téléchager ​les fichiers ​de la machine 
-  - de lister les taches à faire poour restaurer ​le tarball.+  - de lister les taches à faire pour restaurer ​l'​archive
  
 ===== Connectivité SSH ===== ===== Connectivité SSH =====
  
-Le pool de backup est sur la VM icinga2 (improprement nommé ​pour raison historique), qui est un KVM porté par galanga.april.org. Elle est accessible à l'​adresse backup.chapril.org.+Le pool de backup est sur la VM icinga2 (nommée ainsi car elle sert également de relais d'​exécution Icinga ​pour tester les services avec une regard extérieur), qui est un KVM porté par galanga.april.org. Elle est accessible à l'​adresse backup.chapril.org
 + 
 +Vous devez être capable d'​exécuter avec succès 
 +<code bash> 
 +# ssh -p 2242 -A backup@backup.chapril.org true 
 +</​code>​ 
 + 
 +Si ce n'est pas le cas, vous pouvez suivre la section « Accès SSH » de la page [[admin:​procedures:​sauvegarder_machines#​acces_ssh]],​ en prenant soin de ne pas vous restreindre à une commande forcée qui risque de vous handicaper.
  
 ===== Télécharger un tarball de la VM ===== ===== Télécharger un tarball de la VM =====
  
-===== Restauration ​du tarball ​=====+Pour lister les backups d'une VM : 
 + 
 +<code bash> 
 +BORG_RSH="​ssh -p 2242 -A" borg list backup@backup.chapril.org:/​srv/​backups/​$(hostname --fqdn) 
 +</​code>​ 
 +en adaptant le hostname, par exemple : 
 +<code bash> 
 +BORG_RSH="​ssh -p 2242 -A" borg list backup@backup.chapril.org:/​srv/​backups/​admin.cluster.chapril.org 
 +</​code>​ 
 + 
 +En supposant que ''​2018-09-02''​ soit le nom d'un backup, pour voir les infos d'un backup particulier : 
 +<code bash> 
 +BORG_RSH="​ssh -p 2242 -A" borg info backup@backup.chapril.org:/​srv/​backups/​$(hostname --fqdn)::​2018-09-02 
 +</​code>​ 
 + 
 +Pour extraire /etc/issue de l'​archive précédente dans le dossier courant, on liste le fichier de façon relative, comme un tar : 
 +<code bash> 
 +BORG_RSH="​ssh -p 2242 -A" borg extract backup@backup.chapril.org:/​srv/​backups/​$(hostname --fqdn)::​2018-09-02 etc/issue 
 +</​code>​ 
 + 
 +Pour extraire l'​archive entière dans le dossier courant, il faudrait faire : 
 +<code bash> 
 +BORG_RSH="​ssh -p 2242 -A" borg extract backup@backup.chapril.org:/​srv/​backups/​$(hostname --fqdn)::​2018-09-02 
 +</​code>​ 
 + 
 +Options utiles de borg extract : 
 +<code bash> 
 +          --list ​                          ​output verbose list of items (files, dirs, ...) 
 +          -n, --dry-run ​                   do not actually change any files 
 +          -e PATTERN, --exclude PATTERN ​   exclude paths matching PATTERN 
 + 
 +          # Extract entire archive 
 +          $ borg extract /​path/​to/​repo::​my-files 
 + 
 +          # Extract entire archive and list files while processing 
 +          $ borg extract -v --list /​path/​to/​repo::​my-files 
 + 
 +          # Extract the "​src"​ directory 
 +          $ borg extract /​path/​to/​repo::​my-files home/​USERNAME/​src 
 + 
 +          # Extract the "​src"​ directory but exclude object files 
 +          $ borg extract /​path/​to/​repo::​my-files home/​USERNAME/​src --exclude '​*.o'​ 
 +</​code>​ 
 + 
 +===== Restauration ​de l'​archive ===== 
 + 
 +<note tip>​Ajouter un hook dans le paquet ''​backup-chapril''​ qui dump la sortie de ''​lsblk''​ serait un plus.</​note>​ 
 + 
 +Il faut avoir un fs près à recevoir les fichiers. Pour reconstruire le lvm à l'​identique,​ le dossier /​etc/​lvm/​backup/​ est probablement utile, le /etc/fstab aussi. Si vous avez un volume vierge sous la patte vous pouvez restaurer la structure LVM à l'aire de 
 +<​code>​ 
 +vgcfgrestore -f le_fichier_backup VolumeGroupName 
 +</​code>​ 
 + 
 +À défaut de tout autre chose, on peut imaginer cloner la « VM modèle », adapter les tailles de LVM et surtout des LVs, et monter les FS de l'​image QCOW via les ''​libguestfs-tools''​ depuis n'​importe quelle hôte. 
 + 
 +On se met à l'​emplacement de la future racine : 
 +<code bash> 
 +BORG_RSH="ssh -p 2242 -A" borg extract backup@backup.chapril.org:/​srv/​backups/​$(hostname --fqdn)::​2018-09-02 
 +</​code>​ 
 + 
 +Ensuite il reste à 
 + 
 +  * installer un bootloader 
 +  * restaurer les dumps engendrés par /​etc/​borg/​scripts/​*hooks (restauration SQL et ''​dpkg --set-selections''​) 
 +  * vérifier la configuration réseau / bail dhcp, surtout si la mac a changé 
 +  * penser à tout ce qu'on a oublié 
 + 
 +Et ça devrait rouler.
  
 +<note tip>​[[https://​admin.april.org/​doku.php?​id=sysadm:​reconstruction_d_une_vm | L'​expérience ]] montre que couper le ''​cron''​ est une bonne pratique. Il ne suffit pas de regarder ''/​etc/​cron.d''​ : la configuration totale de ''​cron''​ peut être bien plus sioux.</​note>​
admin/procedures/restaurer_machine.1538638212.txt.gz · Dernière modification: 2018/10/04 09:30 par fpoulain