Le blog de Genma
Vous êtes ici : Accueil » Informatique » GNU/Linux, Logiciels Libres » P2V avec Clonezilla ou comment convertir un serveur physique en machine (...)

P2V avec Clonezilla ou comment convertir un serveur physique en machine virtuelle

D 25 novembre 2019     H 09:00     A Genma     C 1 messages   Logo Tipee

TAGS : Planet Libre Clonezilla Virtualisation

Introduction

J’avais abordé dans un billet assez ancien (il y a 3 ans, Wikipedia - Physical-to-Virtual

La première fois que j’ai découvert cette notion, c’était dans le cadre du passage d’un ensemble de serveurs physiques qui ont été virtualisés pour donner des machines virtuelles sur une plateforme VMWare, via un logiciel dédié.

Dans cet article, je voudrais présenter une façon de faire pour passer d’une machine physique à une machine virtuelle (la virtualisation se fera dans Virtualbox, du moins dans un premier temps).

Prérequis

- Connaitre Virtualbox, savoir créer une machine virtuelle
- Connaitre Clonezilla (du moins savoir à quoi ça sert)

Clonezilla ?

Procédure de création d’une image Clonezilla et procédure de restauration sont très bien décrites dans de nombreux tutoriaux sur Internet, je ne vais donc pas ré-aborder ça ici. (Un tutoriel parmi d’autre lecrabeinfo.net - Cloner son disque dur/SSD vers un autre disque avec Clonezilla

Création d’une image Clonezilla

La première étape est donc de créer une image Clonezilla du PC physique et de mettre cette image sur un support amovible (clef USB disque dur externe selon la taille du disque). L’image sera une image complète du disque (et non une image de partitions).

La taille de l’image Clonezilla dépend de la taille occupé sur le disque (et non de sa taille réelle). Par exemple un disque de 500go qui n’est occupé qu’à 16go donnera une image Clonezilla d’environ 16go.

Création d’une machine virtuelle dans Virtualbox

La seconde étape est de créer une machine virtuelle dans Virtualbox. La configuration matérielle peut être assez proche ou différente (quantité de mémoire vive, CPU et nombres de cœurs) : si c’est un OS Linux, il s’adaptera à la configuration matériel virtuelle. Par contre la taille du disque dur virtuelle de la machine virtuelle est important : ce disque doit avoir une taille équivalente (ou supérieure) à la taille du disque de la machine qui a été cloné en image Clonezilla. Le disque dur virtuel peut toutefois avoir une taille dynamique, évitant ainsi de mobiliser 500 giga pour un espace réellement occupé de 16 giga au final (l’espace disque occupé à la restauration de l’image Clonezilla correspondant à l’espace disque de la machine d’origine).

Virtualbox, les périphériques complémentaires

En plus du disque dur virtuel, il faut ajouter un lecteur CD-Rom /demander à la machine virtuelle de démarrer sur une iso de Clonezilla. Et ajouter le partage des ports USB de la machine physique faisant tourner Virtualbox, pour que la clef USB / disque dur externe contenant l’image crée via Clonezilla puisse être lu depuis la machine virtuelle.

On pourra regarder par exemple la documentation ici sur l’association des périphériques USB avec la machine virtuelle dans Virtualbox https://doc.ubuntu-fr.org/virtualbox#peripheriques_usb ou encore ici en images et détaillé Comment activer le support USB 2.0 ou 3.0 dans VirtualBox.

Restauration de l’image du serveur

Une fois les prérequis réunis, on boot / démarre la machine virtuelle sur l’ISO de Clonezilla et on suit la procédure de restauration. Au moment de la recherche de l’image Clonezilla à restaurer, on branche la clef USB / disque dur externe sur le port USB partagé avec la machine virtuelle, on appuie sur une touche et Clonezilla va détecter le branchement de ce périphérique USB, trouver le dossier et proposer de restaurer l’image Clonezilla, sur le disque dur de la machine virtuelle.

Une fois la restauration finie, on retire l’ISO et on démarre la machine virtuelle. On a une copie conforme de notre machine physique.

Migration de la machine virtuelle

L’avantage de Virtualbox est d’utiliser un format standard, qui peut être converti si besoin dans d’autres formats de machines virtuelles. On pourra donc migrer / exporter cette machine virtuelle qui tourne dans Virtualbox pour la faire tourner sur un serveur Proxomox, sur KEmu... Là encore, il existe de nombreux tutoriaux sur le sujet.

Conclusion

Avec un petite astuce, il est donc possible de virtualiser son serveur physique / son PC (pour en faire une machine virtuelle, donc). Le PC physique doit tourner sous Linux. Je n’ai pas testé avec Windows, car à la restauration de l’image Clonezilla, il se peut qu’il faille réactiver Windows (qui va détecter que le matériel est différent du matériel d’origine).

1 Messages

  • Le point faible de ta solution, c’est que le clone doit être fait "à froid", c’est à dire avec le serveur démarré sur Clonezilla et pas l’OS, ce qui n’est pas toujours facile à envisager. J’ai eu le tour avec un site "B2B", qu’on ne pouvait pas couper.

    VMware converter (que tu ne voulais pas nommer je pense) permet justement de faire à chaud, en se connectant en SSH à la machine source, et en recréant, sur la VM de destination, les partitions détectées et en synchronisant les contenus. Il procède à une réinstallation du chargeur de démarrage à la fin pour s’assurer que ça démarre correctement, et c’est fini. Ça peut prendre plus ou moins de temps, et ça a quelques contraintes notamment sur le réseau (utilise un flux maison vmware, me souviens plus duquel).

    J’ai pu faire ça sur un projet client avec succès pour quatre serveurs qui étaient encore physiques et qu’on devait passer en virtuel ; dont une grosse base de données mysql de 500Go qui a du faire l’objet ensuite d’une resyncrhonisation via un autre outil très pratique, et opensource ce coup-ci, xtrabackup ;)


Un message, un commentaire ?
modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.