Jak klonować maszynę wirtualną VMware, jak mogę zapobiec konfliktom adresów MAC i UUID?

10

Wystąpił następujący problem zarówno na VMware Fusion (dla komputerów Mac), jak i na VMware ESXi / vSphere. Wielu z was zna problem i jest on opisany w VMware KB: „ Sieć nie działa na sklonowanej maszynie wirtualnej z systemem Linux (2002767) ”.

  1. Utwórz maszynę Wirtualną CentOS.
    • Jest to maszyna wirtualna bez systemu operacyjnego z minimalnym zestawem oprogramowania i działającym stosem sieciowym. Chodzi o to, że bierzemy minimalną maszynę wirtualną, klonujemy ją i dodajemy więcej oprogramowania później.
  2. Sklonuj tę maszynę wirtualną
  3. VMware Fusion lub vCenter przypisze nowy adres MAC do interfejsu sieciowego na sklonowanej maszynie wirtualnej.
  4. Linux nie wie o tym nowym adresie MAC, dlatego sieć nie działa. Plik /etc/sysconfig/network-scripts/ifcfg-ethNma adres MAC interfejsu na pierwszym komputerze.
  5. Aby to naprawić, muszę znaleźć adres MAC nowej maszyny wirtualnej, edytować ifcfg-ethNi dodać ten MAC do HWADDR=pola. Nie mogę po prostu wyciąć i wkleić MAC w pole, więc może to być zadanie podatne na błędy, szczególnie jeśli zapomnę długopisu i papieru, aby zapisać MAC.
  6. (Punkty bonusowe) Na nowej maszynie wirtualnej często wyświetla się eth0, eth1 itd. W niewłaściwej kolejności. Naprawienie tego wymaga tajemniczego tańca dookoła/etc/udev/rules.d

Mogę to zrobić, ale jest to podatne na błędy i rodzaj bólu, gdy po prostu chcę uruchomić nową maszynę wirtualną, aby coś przetestować.

Czy istnieje sposób na uproszczenie tego ręcznego procesu? Jak sklonować nowy komputer, jak rozwiązać problem adresu MAC?

Stefan Lasiewski
źródło
Czy w przypadku tych systemów w ogóle zależy ci na utrzymywaniu trwałości urządzenia?
Shane Madden,
Nie, nie dla interfejsu sieciowego.
Stefan Lasiewski

Odpowiedzi:

13

Ponieważ rzeczy związane z trwałością urządzeń stają się przeszkodą dla tych maszyn wirtualnych, zgrać je:

  • Całkowicie usuń linie HWADDRi UUIDz ifcfgpliku oraz
  • Usuń /etc/udev/rules.d/70-persistent-net.rulesprzed klonowaniem

To powinno pozwolić et0 z nowym adresem MAC faktycznie korzystać z ifcfg-eth0pierwszego uruchomienia.

Shane Madden
źródło
Hm, to wydaje się działać. Nie miałem pojęcia, że HWADDRjest opcjonalny. Czy powinienem również usunąć UUID?
Stefan Lasiewski
1
@StefanLasiewski Ahh, tak, powinieneś.
Shane Madden,
+1 działało jak urok J
głębokie nurkowanie
2
spośród 10 najlepszych wyników Google, to ten, który działa! Uwaga: usuń wiersze HWADDRAND UUIDz/etc/sysconfig/network-scripts/ifcfg-eth0
Howard Lee,