Anonymous
Но врать не стану я осилил только половину простыни
Anonymous
С pastebin?
Могу закинуть на pastebin, да, если это нужно.
Anonymous
В обще я дочитал до кода. Если цель только vars по группе хостов. Ответ выше
Anonymous
Есть ещё host vars
вся история в том, что в исходном репозитории таска исполняется от локалхоста
а конфиг задаётся для группы.
мне нужно, чтобы один и тот же конфиг был на хосте и на группе.
Может быть можно как-то перекинуть конфиг с группы на локалхост или обратно.
Sergei
Господа ребятки, юзает кто митоген? Стабильная поделка?
Anonymous
Sergey
Anonymous
Не оч понятно
Anonymous
сейчас сделаю нормальный пост, чтобы было понятно.
Anonymous
Ты хочешь выполнить что то на конкретной группе хостов с их vars ?
Anonymous
Делай пост )
Ivan
Aleksey
Ага в конструкции wait_for падает. Что странно
Anonymous
Дочитал до сюда
Anonymous
group_vars_dp_hadoop - целевые значения для моего кластера. Отличается именами host_group.
я подставляю те знач
Anonymous
Используйте host vars
Anonymous
По локалост дичь какая та не оч понятная
Anonymous
Но которую опять же можно решить через хост варс
Anonymous
И даже спрашивать не буду зачем локалхост
Anonymous
Да, есть большое желание убрать отсюда localhost
вопрос - какой хост вместо этого подставить, чтобы я мог один и тот же плейбук для разных кластеров гонять.
Anonymous
у каждого кластера настройки естесственно разные.
Anonymous
Первый вопрос решается через environments
Anonymous
Можно ли в hosts плейбука переменные писать, например groups[dp_hadoop[0]]
Anonymous
Второй перечитаю. Но смысл пока ускользает
Anonymous
Перечитал не понял. Перефразируйте что хотите
Anonymous
Anonymous
У вас много vars
Anonymous
Самый нижний уровень хоста
Anonymous
Но почти всегда хватит уровня envirements
Anonymous
то есть на каждый кластер делать отдельный плейбук в котором при помощи environment задавать конфигурацию, верно ?
Anonymous
Sergey
Вопрос2 - точно да.
Sergey
Только чуть по-другому:
groups['dp_hadoop'][0]
Anonymous
Anonymous
Это сильно все упростит для понимания
Anonymous
Не стеба ради - что вы имеете виду под кластером
у меня есть некоторое количество hadoop-кластеров. Условно - 5-10 машинок с разной конфигурацией.
Я хочу использовать один плейбук, один инвентори и разные переменные.
Сейчас моя проблема в том, что ключевой плейбук заточен под локалхост и мне трудно отдать нужный набор переменных для настройки конфигурации.
Anonymous
По порядку
Anonymous
Плейбук и останешься один
Anonymous
то есть кластер - это hadoop-кластер (условно 10 машин)
Anonymous
Варс вы скорей всего вынесете на envirements процентов 90
Sergey
Anonymous
И процентов 10 переопределяете на уровне host vars
Anonymous
То есть вы делаете условный варс прода типовые всем
Anonymous
И на каждый хост в хост варс переопределяете хосто зависимые
Anonymous
Если таких нет хватит vars окружения
Anonymous
Это мы я специально ещё не упоминаю переменное роли, вам они имхо ненужны
Anonymous
я видимо не совсем понимаю environment
оно действует на уровне плейбука ?
в инвентори я не могу задать для группы хостов ?
Anonymous
Они действуют на уровне
Anonymous
-i envirements/production hui-sgori.yml
Anonymous
Мог отпечататься ) но логика ясна
Anonymous
То есть production - это окружение
Anonymous
И переменное будут браться оттуда
Anonymous
-i - это инвентори
в доке вроде говорят про то, что enviroment - это уровень плейбука https://docs.ansible.com/ansible/latest/user_guide/playbooks_environment.html
Anonymous
Я сейчас спорить с мобилы ссылками не готов
Anonymous
Просто по простому об этом реально мало инфы
Anonymous
А людей кто юзает как то ещё меньше потому для многих это странно
Anonymous
могу завтра хайлайтнуть ?
Моя цель - чтобы у меня был один инвентори, а внутри я бы уже на уровне group_vars разруливал - кому что делать.
Anonymous
Потому просто ответ - это так работает. И по енвам окружения хавает
Anonymous
Спасибо!
Попробую и отпишусь.
Anonymous
Anonymous
спасибо за ответы!
Anonymous
В идеале твой кластер выносится так
Anonymous
В all все дефолт
Anonymous
В envirements - переопределяешь важные для окружения вещи
Anonymous
В host vars переопределяешь вещи уровня конкретных нод
Anonymous
Вариант кормить переменными роль право на жизнь имеет и наверное многие коллеги со мной не согласиться. Но это плохой вариант. Ты теряешь управляемость
Anonymous
Отдельный момент - без веской необходимости не определять переменные группами. Это больно. И вся логика ломается, что была описана выше
𝚔𝚟𝚊𝚙𝚜
Anonymous
Скажу банальность
Anonymous
Имя хоста ничего не решает локалхост он или нет
Anonymous
Даже залам спора ради
Anonymous
А зачем плейбук на локалхост запускать ?
Anonymous
Суть в том, что мне нужно, чтобы на этом хосте были нужные мне переменные
и я хочу их задавать или в group_vars или в группе@inventory
в общем, завтра я попробую то, что вы накидали и вернусь с ответами или новыми вопросами.
Anonymous
Я вам ответил выше
Anonymous
Читайте host vars
Anonymous
Так, я спать.
Еще раз, спасибо за ответы - очень ценные советы.