Eduard
она выше ...
Timur
Eduard
yeah.
Timur
В чем неудобство-то?
Timur
Из ваших слов это трудно понять
Eduard
Ещё пачка ямлов в репу, новые окружения заводить НЕ на aws боль, "переезд" c ansible-galaxy init тоже не в 5 минут укладывается.
Timur
Timur
В чем боль с не-aws?
Timur
О каком переезде с ansible-init идёт речь?
Eduard
molecule init умеет только в "чистый" init
Eduard
Рецепта по переезду не нагуглил
Timur
Rasim
Приветствую! Подскажите, пожалуйста, best practice по копированию ключей ssh. Есть task, который под нерутом с sudo копирует ключи, тут все ок. Но я его хочу добавить в плейбук, и дальше остальные task выполняются из под root. И вот можно ли для отдельного task указать отдельного ansible_user?
Rasim
или вытащить в отдельный role с указанием ansible_user в vars?
Timur
Rasim
проблема в том, что стоит PermitRootLogin no
то есть сначала нужно подключиться не из под рута, положить ключи, и дальше подключаться под рутом
зачем?
у вас вроде судоер есть
пусть он и делает рутовые таски
Rasim
вот и спрашиваю best practice
ну вон как выше Тимур написал
бест практис в эскалации прав только там, где необходимо
Rasim
ок, спасибо
DiNGeR
Добрый день. В инвентори можно задать диапазон хостов, а можно ли для переменной использовать тот же принцип?
Что-то такого вида:
[app]
app[10:25] ansible_host=192.168.0.[10:15]
Возможно в yaml формате инвентори такое возможно? Или еще каким образом? (dns`а нет)
Пока вижу вариант создать пачку host_vars скриптом.
Заранее спасибо!
George
тебе просто инвентори нужно создать так?
George
задача одноразовая? или список серверов будет постоянно меняться?
DiNGeR
Одноразовая, вопрос больше академический.
George
я бы jinja2 сгенерил и не парился
George
в остальном - динамический инвентори, не?
DiNGeR
Из того что я понял - динамические для хостов в облаке(откуда можно взять перечень vm для инвентори), но почитаю еще.
А про "я бы jinja2 сгенерил" - можете кинуть ссылку на пример? А то уже запутался в обилии всевозможных док и статей из блогов
И похоже мне рано лезть в такие дебри))
George
ну, пишешь шаблон
George
gaal@linux-x1:~/GL> cat config.j2
{% for shop in shops %}
Host {{ shop.name }}.via
hostname {{ shop.ip }}
George
типа такого. Можно использовать нормальный for loop с числами - джинджа же!
George
j2 -f yaml config.j2 variables.yaml > hosts
George
никакого рокет сайенса. Мне лично проще цикл на джиндже, чем писать скрипт на пихтоне, либо вбивать руками
DiNGeR
О! Спасибо! Про jinja еще не читал, будем пробовать.
Anonymous
Добрый день. Подскажите пожалуйста на тему inventory plugins. https://docs.ansible.com/ansible/latest/plugins/inventory.html
Есть у меня инстансы с такими тегами
tags:
Name: Yurii/Fisakov
ServiceType: swarm_worker
Как-бы мне сделать из всех инстансов с тегами swarm_worker ansible группу workers?
Anonymous
Там есть пример на сайте, но я често говоря не понял логику.
# add hosts to the group development if any of the dictionary's keys or values is the word 'devel'
groups:
development: "'devel' in (tags|list)"
Anonymous
Спросил - отвечаю.
keyed_groups:
- prefix: tag
key: tags
Pavel
всем привет.
подскажите, почему на python3 вот это отрабатывает ок:
- name: Generate .env config
template:
src: .env.j2
dest: ./../.env
А на python2 валится с ошибкой:
fatal: [localhost]: FAILED! => {
"msg": "Failed to get information on remote file (./../.env): /bin/sh: /usr/bin/python3: No such file or directory\n"
}
.
"/usr/bin/python3: No such file or directory"
Pavel
ой, оформил вопрос и сам понял
Pavel
взгляд прицепился к первой части строки =))
.
это нормально
каждый уважающий себя программист должен иметь резиновую уточку и время от времени консультироваться с ней
Pavel
да-да
.
какоето env подозрительное
.
https://unix.stackexchange.com/questions/29608/why-is-it-better-to-use-usr-bin-env-name-instead-of-path-to-name-as-my
нету ли тут какой-то путаниццы с именем файла, шебангом и выбором интерпретатора
Pavel
Пасиб, почитаю
simplemice.eth
я вам интересного принес... https://gitlab.com/redhatsummitlabs
Max
Max
спс
Sergey
simplemice.eth
еще бы оно было бы не годно
es]x
доброго, подскажите что лучше использовать и вчем различия между gtoup_by и add_host
Timur
add_host - более общий модуль, позволяющий менять инвентарь любым способом, и создавая любые группы
es]x
👍 спасибо
Bakhriddin
всем привет, подскажите что я делаю не так? руагется что ошибка с переменной
Roman
ты регистрируешь вывод команды, распечатай ее через debug: msg увидищб что там не то что ты хочешь
Timur
Про лютый башсибл промолчу
Bakhriddin
)))
Bakhriddin
Bakhriddin
укажи путь к нужной доке)
Timur
Timur
Рекомендую внимательнее изучить вот этот модуль:
https://docs.ansible.com/ansible/latest/modules/stat_module.html
Bakhriddin
Timur
Bakhriddin
Если честно, не понял связи
на разных серверах разные пути к хранилищу ключей, куда мне нужно импортировать сертификат. для получения пути вместо башсибла вы посоветовали использовать модуль stat, но я не нашел вариант его использования в своем кейсе, или я что-то не так понял
Div
Bakhriddin
Div
ок, попробую
тут мой корявый пример https://pastebin.com/raw/CYPrvuHu
Oleg
коллеги! использую модуль lineinfile, хочу построчно вставить с with_items несколько строк, но почему то необходимы список вместо построчно вставляет все сразу.
lineinfile:
line: строка {{ item }}
with_items: - "{{ var.stdout_lines | list | join('\n') }}"
var.stdout_lines это:
"первая",
"вторая",
"третья"
Oleg
подскажите плиз что тут не так?
Timur