Outils personnels

Transférer LVM sur RAID dans une VM

De wikiGite

Révision datée du 27 janvier 2011 à 21:31 par Frank (discussion | contributions) (Page créée avec « Lors de la récupération d'un serveur moribond, transféré dans une machine virtuelle, il a fallu jouer avec les partitions et LVM. Résumé. == Mort du héros, première... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Lors de la récupération d'un serveur moribond, transféré dans une machine virtuelle, il a fallu jouer avec les partitions et LVM.

Résumé.

Mort du héros, premières galères

Le serveur meurt un jour de sa belle mort. Pas de problèmes disque, ils sont sains, juste la carte mère qui lâche.
Les 2 disques étaient en RAID 1. Au-dessus, on a un partitionnement LVM. Plutôt que de remettre les disques dans un serveur identique, on décide de transférer le système dans une machine virtuelle (VMware ou autre, pas de différence).

Les PV (Physical Volums) sont donc déclarés sur les périphériques /dev/md*. C'est ce qui posera problème, entre autres, lorsque l'image sera transférée sur un disque unique, style /dev/sda.

On commence par mettre les disques dans une machine qui fonctionne. On démarre avec un CD live, de type SystemRescue CD ou Trinity, et on branche un disque USB pour recevoir l'image. Une fois au prompt, on fait une image octet par octet avec dd

dd if=/dev/sda of=/media/usb/sda.dmp

/dev/sda est un des 2 disques du RAID. le disque USB est monté sur /media/usb.

Une fois la machine virtuelle créée, on la lance également avec le live CD. Si l'hyperviseur ne reconnait pas l'usb (comme c'est le cas pour vmware ESXi), on branche le disque usb sur un autre serveur, on le partage en NFS et on le monte dans la VM par le réseau. On recopie alors l'image sur le disque de la VM

dd if=/media/nfs/sda.dmp of=/dev/sda

cette fois la source est le disque usb monté sur /media/nfs/, et la cible le disque virtuel /dev/sda.

Au reboot, malheur : il affiche

Volume group "VolGroup00" not found
...
kernel panic !