У меня есть кластер OpenStack, на котором работает около 200 экземпляров CentOS, и я получил жалобу от своего хостинг-провайдера на то, что трафик DNS становится слишком большим для их серверов. Чтобы решить эту проблему, я установил пару экземпляров преобразователя привязки и хотел бы отправить их через DHCP, но мне не удалось найти способ гарантировать, что директива resolv.conf options rotate
либо выталкивается через dhcp, либо может быть установлен через какой-то файл конфигурации, который, как я полагаю, будет жить в /etc/sysconfig
.
Я снова столкнулся с этой проблемой, и после МНОГО поиск в Google и ярость Я обнаружил, что следующее добавит options rotate
, или буквально все, что угодно, /etc/resolv.conf
без блокировки файла или иного нарушения функциональности:
Создать, поместите в файл следующее /etc/dhcp/dhclient.d/rotate.sh
:
rotate_config() {
echo "options rotate" >> /etc/resolv.conf
}
rotate_restore() {
:
}
А потом chmod +x /etc/dhcp/dhclient.d/rotate.sh
.
Любой исполняемый файл, например /etc/dhcp/dhclient.d/*.sh
будет подхвачен dhclient / NetworkManager и требует двух функций, *_config()
и *_restore()
который будет запускаться при переходе интерфейса вверх / вниз соответственно.
Так /etc/dhcp/dhclient.d/*.sh
потребности foo_config()
и foo_restore()
.
Тим прав, что это конфигурация на стороне клиента, но мне любопытно, зачем вам это нужно? какова ваша цель ? Причина в том, что могут быть другие способы достижения вашей цели, например:
вы можете использовать LVS (виртуальный сервер Linux) для создания кластера DNS-серверов и предоставления единого IP-адреса всем вашим серверам.
вы можете построить двухузловой кластер рекурсии powerDNS с кардиостимулятором, и этот рекурсер будет использовать несколько серверов имен для своих запросов.
В options rotate
Настройка на самом деле является настройкой на стороне клиента, а не чем-то определенным и распространяемым через DHCP-сервер.
Вам нужно будет установить файл конфигурации. Я предпочитаю устанавливать его в resolv.conf, развернутом с помощью Puppet, но я думаю, что его также можно установить в sysconfig.