Al clonar una máquina virtual VMware, ¿cómo puedo evitar conflictos de direcciones MAC y UUID?

10

Me he encontrado con el siguiente problema tanto en VMware Fusion (para Mac) como en VMware ESXi / vSphere. Muchos de ustedes están familiarizados con el problema, y ​​se describe en VMware KB: "La red no funciona en una máquina virtual Linux clonada (2002767) ".

  1. Crea una máquina virtual CentOS.
    • Esta es una máquina virtual básica con un conjunto mínimo de software y una pila de red en funcionamiento. La idea es que tomemos la VM mínima, la clonemos y agreguemos más software más adelante.
  2. Clonar esa VM
  3. VMware Fusion o vCenter asignarán una nueva dirección MAC a la interfaz de red en la VM clonada.
  4. Linux no conoce esta nueva dirección MAC y, por lo tanto, las redes no funcionan. El archivo /etc/sysconfig/network-scripts/ifcfg-ethNtiene la dirección MAC de la interfaz en la primera máquina.
  5. Para solucionar esto, necesito encontrar la dirección MAC de la nueva VM, editar ifcfg-ethNy agregar esta MAC al HWADDR=campo. No puedo simplemente cortar y pegar el MAC en el campo, por lo que esta puede ser una tarea propensa a errores, especialmente si olvido mi lápiz y papel para anotar el MAC.
  6. (Puntos de bonificación) En la nueva máquina virtual, a menudo eth0, eth1, etc. se muestran en el orden incorrecto. Arreglar esto implica un baile arcano alrededor/etc/udev/rules.d

Puedo hacer esto, pero es propenso a errores y es una molestia cuando simplemente quería activar una nueva VM para probar algo.

¿Hay alguna manera de simplificar este proceso manual? Cuando clona una nueva máquina, ¿cómo soluciona el problema de la dirección MAC?

Stefan Lasiewski
fuente
Para estos sistemas, ¿le importa mantener las cosas de persistencia del dispositivo?
Shane Madden
No, no para la interfaz de red.
Stefan Lasiewski

Respuestas:

13

Dado que las cosas de persistencia del dispositivo solo se interponen en el camino para estas máquinas virtuales, extráigalas:

  • Elimine completamente las líneas HWADDRy UUIDdel ifcfgarchivo, y
  • Eliminar /etc/udev/rules.d/70-persistent-net.rulesantes de clonar

Eso debería permitir que eth0 con una nueva dirección MAC realmente use el ifcfg-eth0arranque inicial.

Shane Madden
fuente
Hm, esto parece funcionar. No tenía idea de que HWADDRera opcional. ¿Debo también eliminar el UUID?
Stefan Lasiewski
1
@StefanLasiewski Ahh, sí, deberías.
Shane Madden
+1 funcionó a las
mil maravillas
2
de los 10 mejores resultados de google, ¡este es el que funciona! nota: elimine las líneas HWADDRAND UUIDde/etc/sysconfig/network-scripts/ifcfg-eth0
Howard Lee