Как Вы обновляете конфигурацию сопоставителя DNS, не вызывая время простоя?

Примечание

Новый вопрос, так как все остальное по этому вопросу, кажется, устарело и/или является конфликтующим. Проведите свои близкие голосования, :)

Проблема

На установках запаса Сервера Ubuntu 12 и 14 идущий совет, кажется, что способ, которым Вы вносите изменения DNS, состоит в том, чтобы отредактировать файл интерфейсов и добавить DNS - опции там. Только проблема на серверах, где время работы является беспокойством, кажется, что единственный способ вынудить те изменения быть быть примененным состоит в том, чтобы возвратить затронутый сетевой интерфейс с ifdown/ifup.

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

Проблема состоит в том, что все эти серверы были созданы с DNS - опции в interfaces файл, означая это, если я изменяюсь resolvconf head или tail файлы, я закончу с набором дублирующихся строк на перезагрузке.

Процесс должен быть чем-то как:

  1. Полностью устраните конфигурацию сопоставителя (все кончено место прямо сейчас)
  2. Установите опции на новый, известное - хорошие значения
  3. Сохраните те опции, таким образом, они сразу используются приложениями, и таким образом, они будут существовать после перезагрузки.

Так, резюме:

Что не будет работать

  • Редактирование строк в interfaces (требует, чтобы отключение электричества переработало интерфейс),
  • При редактировании resolv.conf непосредственно (не вступит в силу, не будет сохранен),
  • Редактирование resolvconf head или tail файлы (не вступит в силу, будет иметь дублирующиеся строки на перезагрузке),

Фактический вопрос

Существует ли способ вызвать изменение как это, не прерывая сервис? Идеально, я мог вынудить resolvconf пройти свой процесс обновления, не переключая интерфейс.

4
задан 4 March 2015 в 21:52

1 ответ

Если Вы абсолютно не можете иметь resolv.conf будьте в непоследовательном состоянии, вот то, что я сделал:

  1. "Состояние" сопоставителя, сгенерированного от dns- строки в Вашем /etc/network/interfaces хранится в /var/run/resolvconf/interface/(interfacename).inet - этот файл был усеченным.

  2. Те же данные (search, nameserver, и т.д. тот же материал это находится в завершенном resolv.conf) был скопирован в /etc/resolvconf/resolv.conf.d/tail ( tail файл должен был быть создан), с соответствующим комментарием, добавленным так кто-либо, который приезжает, позже видят то, что произошло.

  3. dns строки в /etc/network/interfaces были прокомментированы

  4. И наконец выполненный resolvconf -u повторно создавать /etc/resolv.conf из файла хвоста

Это имеет эффект:

  • Отделение настроек сопоставителя от сетевого интерфейса (который, если Вы находитесь на единственном интерфейсном поле, является напрасно раздражающим),

  • Размещение настроек сопоставителя в единственном текстовом файле цели ( tail файл)

  • Внесение изменений сразу вступает в силу

  • .. и наличие их сохраняется после перезагрузки

  • И регенерация в масштабе всей системы /etc/resolv.conf с resolvconfнеповрежденный механизм уведомления.

  • ... без времени простоя :D

2
ответ дан 1 December 2019 в 10:19

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

Похожие вопросы: