Назад | Перейти на главную страницу

Как при клонировании виртуальной машины VMware предотвратить конфликты MAC-адресов и UUID?

Я столкнулся со следующей проблемой как в VMware Fusion (для Mac), так и в VMware ESXi / vSphere. Многие из вас знакомы с этой проблемой, и она описана в базе знаний VMware: "Сеть не работает на клонированной виртуальной машине Linux (2002767) . "

  1. Создайте виртуальную машину CentOS.
    • Это простая виртуальная машина с минимальным набором программного обеспечения и работающим сетевым стеком. Идея в том, что мы берем минимальную виртуальную машину, клонируем ее и добавляем дополнительное программное обеспечение позже.
  2. Клонировать эту ВМ
  3. VMware Fusion или vCenter назначит новый MAC-адрес сетевому интерфейсу на клонированной виртуальной машине.
  4. Linux не знает об этом новом MAC-адресе, и поэтому сеть не работает. Файл /etc/sysconfig/network-scripts/ifcfg-ethN имеет MAC-адрес интерфейса на первой машине.
  5. Чтобы исправить это, мне нужно найти MAC-адрес новой виртуальной машины, отредактировать ifcfg-ethN и добавьте этот MAC в HWADDR= поле. Я не могу просто вырезать и вставить MAC в поле, поэтому это может быть чревато ошибками, особенно если я забуду ручку и бумагу для записи MAC.
  6. (Бонусные баллы) На новой виртуальной машине часто eth0, eth1 и т. Д. Отображаются в неправильном порядке. Чтобы исправить это, необходимо тайный танец вокруг /etc/udev/rules.d

Я могу это сделать, но когда я просто хочу запустить новую виртуальную машину, чтобы что-то протестировать, это чревато ошибками и болью.

Есть ли способ упростить этот ручной процесс? Когда вы клонируете новую машину, как вы решаете проблему с MAC-адресом?

Поскольку постоянство устройства только мешает этим виртуальным машинам, удалите его:

  • Полностью удалите HWADDR и UUID строки из ifcfg файл и
  • Удалить /etc/udev/rules.d/70-persistent-net.rules перед клонированием

Это должно позволить eth0 с новым MAC-адресом фактически использовать ifcfg-eth0 при начальной загрузке.