Необходимо иметь на нескольких машинах "синхронные" /etc/hosts, чтобы не обновлять их постоянно вручную можно бы было сделать копирование с одной master машины, но у каждого сервера должна быть еще и СВОЯ часть /etc/hosts
Возможны ли какие-то инклюды? Можно ли как-то решить этот вопрос другим способом? Нужно как бы свой DNS сделать
Василий Банников, поднять свой отдельный DNS сервер? Думал. Что для этого посоветуете и как его прописать на хостах? Кажется это несколько сложнее чем менять записи в /etc/hosts
Александр Маджугин, ну у тебя же уже есть сервер какой-то где ты централизованно хостами решил управлять? Вот на него устанавливаешь dns и в resolv.conf прописываешь его на хостах
что вы накинулись на человека, может ему так или иначе, во что бы это не встало надо решить задачу именно записями в хостс)
Если бы мне приспичило - решил бы задачу скриптами на бэш.
Нужно сделать такой скрипт, который бы запускался периодически из крона, а суть его работы - брать откуда-то эталонные записи и дописывать/удалять их из локального хостс.
Нет способа у меня быстро покупать домены в большом количестве, такие как я хочу, и прописывать для них DNS, а потом ждать пока обновятся. Большинство записей там кстати чтобы не ждать пока обновятся DNS зоны.
Александр Маджугин, И не надо покупать. На своём локальном DNS-сервере вы можете прописывать любые домены, даже если они вам и не принадлежат. А непрописанные запрашивать у вышестоящего сервера.
Rsa97, Руслан Федосеев, проблема как раз в этом. В мой локальный DNS будет смотреть только одна локальная машина. А чтобы туда смотрели другие машины - их надо туда завернуть. А какая мне разница - обновить у них /etc/hosts или добавить DNS? Тем более я понятия не имею как это делается без network-manager
В любом случае тогда вопрос меняется с как клонировать /etc/hosts на как распространить списки DNS на другие машины. Стало ли легче?
Александр Маджугин, не знаю, что сложного периодически запускать одной командой плейбук по нужным узлах. альтернатива - всё это делать руками и, разумеется, в какой-то момент оно разъедется.
Так, ну поставил я ансамбль подключился... а что делать-то?
Учитывая что в /etc/hosts инклюды невозможны - я не могу скопировать какой-то один файл на все серверы. Да я могу используя echo дописать хосты туда.
Но удалить их - это же ппц - надо выдумывать для sed команду получается.
Проще уже зайти на каждый - их у меня 3-5 где-то обычно
Т.е. Ansible отличное решение доставки. Но блин доставлять-то что?
Александр Маджугин, вариантов уйма:
1) через ансибл настраивать локальный dns сервер
2) напрямую хранить шаблон /etc/hosts, ну и переменными для каждого хоста. Чтобы таска собирала вам под каждую машину /etc/hosts и подкладывала его.
Т.е. на надо пытаться на ансибле втупую повторить то, что вы делаете руками. Используйте логику инструмента: под каждый комп свой файл с уникальными значениями + общий файл с общими, и ансибл вам его собирает под каждый комп и закидывает.
Можно ли как-то решить этот вопрос другим способом?
Можно. Есть такая штука как DNS :) Станьте единственным корневым хостом и раздавайте свои TLD - в пределах своей сети можно творить вообще любые безобразия.