Lors du clonage d'une machine virtuelle VMware, comment puis-je éviter les conflits d'adresse MAC et d'UUID?

10

J'ai rencontré le problème suivant sur VMware Fusion (pour Mac) et avec VMware ESXi / vSphere. Beaucoup d'entre vous connaissent le problème et il est décrit dans VMware KB: "La mise en réseau ne fonctionne pas sur une machine virtuelle Linux clonée (2002767) ."

  1. Créez une machine virtuelle CentOS.
    • Il s'agit d'une machine virtuelle avec un ensemble minimal de logiciels et une pile réseau fonctionnelle. L'idée est que nous prenions la VM minimale, la clonions et ajoutions plus de logiciels plus tard.
  2. Clonez cette machine virtuelle
  3. VMware Fusion ou vCenter attribuera une nouvelle adresse MAC à l'interface réseau sur la machine virtuelle clonée.
  4. Linux ne connaît pas cette nouvelle adresse MAC et donc la mise en réseau ne fonctionne pas. Le fichier /etc/sysconfig/network-scripts/ifcfg-ethNa l'adresse MAC de l'interface sur la première machine.
  5. Pour résoudre ce problème, je dois trouver l'adresse MAC de la nouvelle machine virtuelle, modifier ifcfg-ethNet ajouter ce MAC au HWADDR=champ. Je ne peux pas simplement couper et coller le MAC dans le champ, donc cela peut être une tâche sujette aux erreurs, surtout si j'oublie mon stylo et mon papier pour écrire le MAC.
  6. (Points bonus) Sur la nouvelle VM, souvent eth0, eth1, etc. s'affichent dans le mauvais ordre. Réparer cela implique une danse des arcanes autour/etc/udev/rules.d

Je peux le faire, mais c'est source d'erreurs et une sorte de douleur quand je voulais simplement faire tourner une nouvelle machine virtuelle pour tester quelque chose.

Existe-t-il un moyen de simplifier ce processus manuel? Lorsque vous clonez une nouvelle machine, comment résolvez-vous le problème d'adresse MAC?

Stefan Lasiewski
la source
Pour ces systèmes, vous souciez-vous de conserver les éléments de persistance du périphérique?
Shane Madden
Non pas pour l'interface réseau.
Stefan Lasiewski

Réponses:

13

Étant donné que les choses sur la persistance des périphériques ne font que gêner ces machines virtuelles, extrayez-les:

  • Supprimez complètement les lignes HWADDRet UUIDdu ifcfgfichier, et
  • Supprimer /etc/udev/rules.d/70-persistent-net.rulesavant le clonage

Cela devrait permettre à eth0 avec une nouvelle adresse MAC d'utiliser réellement ifcfg-eth0le démarrage initial.

Shane Madden
la source
Hm, cela semble fonctionner. Je ne savais pas que HWADDRc'était facultatif. Dois-je également supprimer l'UUID?
Stefan Lasiewski
1
@StefanLasiewski Ahh, oui, vous devriez.
Shane Madden
+1 a fonctionné comme le charme J
deepdive
2
parmi les 10 premiers résultats de google, c'est celui qui fonctionne! Remarque: supprimez les lignes HWADDRET UUIDde/etc/sysconfig/network-scripts/ifcfg-eth0
Howard Lee