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

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

  1. Создайте CentOS VM.
    • Это виртуальная машина с минимальным набором программного обеспечения и работающим сетевым стеком. Идея состоит в том, что мы берем минимальную виртуальную машину, клонируем ее и добавляем больше программного обеспечения позже.
  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-адресом?

1 ответ

Решение

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

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

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

Другие вопросы по тегам