Как мне управлять resolv.conf с помощью Puppet и NetworkManager?

У меня есть несколько хостов, которые явно управляют файлами resolv.conf . У меня есть другие, которые полагаются на NetworkManager, который делает много вещей, включая запись resolv.conf file .

Существует ли последовательный способ управления этой информацией с помощью Puppet, например, с некоторым модулем, где я могу описать DNS-серверы и поисковые запросы семантически, а затем ожидать, что правильная вещь произойдет в зависимости от того, как настроен хост?

В противном случае есть модуль, который будет взаимодействовать с NetworkManager, чтобы делать то, что я хочу? Выделение явного файла resolv.conf довольно тривиально, поэтому мне не нужна помощь в этом, если я иду по этому маршруту.

One Solution collect form web for “Как мне управлять resolv.conf с помощью Puppet и NetworkManager?”

Когда вы используете NetworkManager, он обычно управляет /etc/resolv.conf поэтому вы не хотите управлять этим напрямую с марионеткой. Вместо этого вы хотите управлять конфигурационными файлами, которые зависят от битового распределения.

Но исходный формат конфигурации по умолчанию хранится в /etc/NetworkManager/system-connections и в этом каталоге вы можете удалить новые файлы конфигурации, например, с марионеткой. Другим способом является libnm с NetworkManager через API (напрямую через D-Bus или через libnm или даже с помощью nmcli ).

По-прежнему существует опция установки dns=none в главном разделе /etc/NetworkManager/NetworkManager.conf и обработки resolv.conf самостоятельно.

Linux и Unix - лучшая ОС в мире.