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

Netboot из общей папки nfs. Как учесть небольшие отличия (например, в / etc)?

У меня есть набор серверов (Ubuntu 16.04), которые бездисковые и загружаются с общего ресурса nfs.

Общий ресурс доступен только для чтения, и я использую наложение tmpfs. Для этого я установил /etc/overlayroot.local.conf к

overlayroot_cfgdisk="disabled"
overlayroot="tmpfs:recurse=0"

и до сих пор он работал нормально.

Теперь я добавил больше машин с другими именами NIC, поэтому для них мне нужен другой /etc/network/interfaces (возможно в будущем хотелось бы еще разнообразить конфигурации). Как я мог добиться этого без управления отдельными, почти идентичными копиями корневых файловых систем?

Я нашел решение (Немецкие слайды / доклады) с разными уровнями auFS, которые устанавливаются через строки параметров DHCP, которые обрабатываются initrd. Но соответствующие сценарии для сборки initrd не обсуждаются.

кстати. мой /etc/network/interfaces гласит следующее

# The primary network interface
auto eno1
iface eno1 inet dhcp

# secondary network interface, connected to nfs_root
iface eno2 inet manual

На новых машинах сетевые карты называются enp24s0fx

Предсказуемые имена сетевых интерфейсов udev должны согласовываться на одном и том же оборудовании, очевидно, что у вас неоднородное оборудование.

В простом случае одного интерфейса вы можете отключить постоянное именование, добавив net.ifnames=0 biosdevname=0 в командную строку Linux. (Спросите Ubuntu: изменение имени сетевого интерфейса Ubuntu 16.04)

Однако для нескольких интерфейсов нет гарантии, что станет eth0. Вы можете снова включить постоянное именование, но настройка правил обычно выполняется путем записи конкретных MAC-адресов хоста в файл.