Как можно предотвратить конфликты MAC-адресов и UUID при клонировании виртуальной машины VMware?
Я столкнулся со следующей проблемой как для VMware Fusion (для Mac), так и для VMware ESXi/vSphere. Многие из вас знакомы с этой проблемой, и она описана в VMware KB: " Сеть не работает на клонированной виртуальной машине Linux (2002767)".
- Создайте CentOS VM.
- Это виртуальная машина с минимальным набором программного обеспечения и работающим сетевым стеком. Идея состоит в том, что мы берем минимальную виртуальную машину, клонируем ее и добавляем больше программного обеспечения позже.
- Клонировать эту ВМ
- VMware Fusion или vCenter назначит новый MAC-адрес сетевому интерфейсу клонированной виртуальной машины.
- Linux не знает об этом новом MAC-адресе, и поэтому работа в сети не работает. Файл
/etc/sysconfig/network-scripts/ifcfg-ethN
имеет MAC-адрес интерфейса на первом компьютере. - Чтобы это исправить, мне нужно найти MAC-адрес новой виртуальной машины, отредактировать
ifcfg-ethN
и добавить этот MAC кHWADDR=
поле. Я не могу просто вырезать и вставить MAC в поле, так что это может быть ошибочной задачей, особенно если я забуду ручку и бумагу, чтобы записать MAC. - (Бонусные баллы) На новой виртуальной машине часто eth0, eth1 и т. Д. Отображаются в неправильном порядке. Исправление этого включает в себя тайный танец вокруг
/etc/udev/rules.d
Я могу сделать это, но это подвержено ошибкам и отчасти боль, когда я просто хотел раскрутить новую ВМ, чтобы что-то проверить.
Есть ли способ упростить этот ручной процесс? Когда вы клонируете новую машину, как вы решаете проблему с MAC-адресом?
1 ответ
Решение
Поскольку для этих виртуальных машин мешают постоянные устройства, удалите их:
- Полностью удалить
HWADDR
а такжеUUID
линии отifcfg
файл и - удалять
/etc/udev/rules.d/70-persistent-net.rules
перед клонированием
Это должно позволить eth0 с новым MAC-адресом фактически использовать ifcfg-eth0
при начальной загрузке.