Conversion P2V (physical-to-virtual) d’un serveur Online Dedibox ou dédié OVH sous Debian 9 avec VMware ESXI 6/7 et pfSense

1. Ce qui ne marche pas : problèmes avec VMware vCenter Converter pour effectuer une migration P2V (physical-to-virtual) vers un serveur ESXi chez OVH ou Online (Dedibox)

Cet article étant particulièrement long, je l’ai découpé en plusieurs pages :

  1. Ce qui ne marche pas : problèmes avec VMware vCenter Converter pour effectuer une migration P2V (physical-to-virtual) vers un serveur ESXi chez OVH ou Online (Dedibox)
  2. Configurer pfSense sur une Dedibox avec ESXi pour effectuer une migration P2V (physical-to-virtual) avec VMware vCenter Converter
  3. Points d’attention lors d’une migration P2V (physical-to-virtual) avec VMware vCenter Converter
  4. Import et reconfiguration d’une P2V Debian 9 sous ESXi

Préambule

Si vous lancez le Converter avec un ESXi installé sur votre propre réseau, il n’y aura pas de problème (j’ai par exemple réussi à faire une conversion à destination d’un ESXi installé sur un NAS Synology). Mais si vous le faites à destination d’un serveur hébergé professionnellement, ça échouera.

Que ça soit chez Online (Dedibox) ou OVH, l’IP publique des VM est lié à leur adresse MAC qui doit être configurée via l’interface d’admin de l’hébergeur, attribuée à la VM dans vSphere, afin de pouvoir configurer l’IP statique et la passerelle (gateway) imposées.

Documentation :

Je présume que c’est pareil chez d’autres hébergeurs mais je n’ai pas testé.

Fonctionnement du vCenter Converter Standalone

Lors du lancement de la tâche P2V, Converter va initialiser une VM sur votre ESXi remote. Cette VM contient un OS minimaliste (basé sur ttylinux) qui lance un « helper server » pour communiquer avec le Converter, comme on peut le voir dans les logs (à lire de bas en haut) :

Oui mais : on ne peut pas attribuer d’adresse MAC au helper server

Or pas d’adresse MAC… pas d’IP publique…
Pas d’IP publique… pas d’échange avec Converter…
Pas de Converter… pas de conversion.

Donc vous allez patienter quasi indéfiniment (le wizard est programmé pour réessayer 600 (!!!) fois avant d’échouer et vous finirez triste, avec cette erreur :

C’est d’autant plus dommage que le wizard permet d’attribuer tous les autres réglages réseau :

Profitez-en pour penser à désactiver IPv6.

Documentation : Configure the Network for the Helper Virtual Machine

Vaine tentative de gruge : modifier l’adresse MAC de la VM avant qu’elle ne démarre

Si vous êtes très rapide, vous pouvez réussir à ouvrir les propriétés de la VM avant qu’elle ne démarre et assigner son adresse MAC statique. Vous avez moins de 10s pour le faire à partir du moment où vous validez le wizard.

Attention : si vous avez été trop lent, ne tentez pas d’éteindre la VM pour modifier sa conf en espérant qu’elle rebootera. Le fichier ISO de démarrage est stocké dans la RAM. Vous aurez donc un message « Operating system not found » au redémarrage.

Le problème est que la gateway OVH ou Online n’est pas située sur le même réseau que l’IP publique et le helper server, qui suit les règles de FreeBSD, refuse catégoriquement de l’ajouter :

kernel: arplookup 62.210.0.1 faild: host is not on local network

kernel: arpresolve: can't allocate route for 62.210.0.1

Si vous avez envie de vous plonger dedans, il y a plusieurs étapes à suivre pour bricoler.

Autoriser le login dans le helper server

  1. Ouvrir le Notepad en mode Administrateur
  2. Ouvrir le fichier converter-worker.xml situé dans C:\ProgramData\VMware\VMware vCenter Converter Standalone
  3. Mettre useSourcePasswordInHelperVm à true
  4. Taper « run » dans le Menu démarrer et lancer services.mmc
  5. Redémarrer le service VMware Converter Worker

Documentation : https://kb.vmware.com/s/article/1036746

Commandes utiles pour jouer avec le réseau sous ttylinux

# voir les interfaces
ip a

# voir la configuration du réseau
cat /etc/networks

# changer la configuration du réseau
vi /etc/sysconfig/network-scripts/ifcfg-eth0

# redémarrer le réseau
service network restart

Documentation :

Une piste à explorer : configurer des routes au lieu d’une passerelle ?

J’ai constaté que l’on peut configurer le réseau sans indiquer de passerelle (évidemment il ne communique pas avec l’extérieur). Après être parti sur une autre solution (pfSense, voire plus loin), j’ai réalisé qu’on pourrait router le trafic avec ces commandes :

route del default
route add -net 62.210.0.1/32 -iface eth0
route add default 62.210.0.1

Je testerai (peut-être) lors d’une prochaine migration.

Ressources intéressantes à ce sujet :

Solution alternative qui ne marche pas : Naviko

C’est toujours bien de savoir que ça existe, mais je n’ai pas réussi à faire reconnaître mon serveur Debian 9 par Naviko.

Documentation : How to Convert a Physical Linux Server to a VMware VM: Comprehensive Walkthrough

Suite : Configurer pfSense sur une Dedibox avec ESXi pour effectuer une migration P2V (physical-to-virtual) avec VMware vCenter Converter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.