Anonymous
Разобрался. Нужно дополнительно сортировать: groups: nomad_servers: "'nomad_servers' in (ec2_tags|list)"
Anonymous
@Numkovich будет жить. Поприветствуем!
inqfen
А, я опоздал
Michael
Народ, привет! Возможно я сейчас спрошу дичь.
Michael
Возможно ли с помощью ansible собрать список (csv к примеру) всех пользователей линуксовых тачек - по формату прям как в passwd описаны они.
Aleksey
cat grep uniq
Aleksey
Нее?
Michael
Затупил - Суть задачи следующая: 1. Собрать список пользователей включая системных со всех линуксовых машин (примерно пол сотни виртуалок); 2. Сложить всё это богатство локально в один файлик, в котором должен быть написан еще и хост напротив юзверя; Возможно ли это реализовать ансамблем? Почитал просто про модуль user и там увидел только добавление/удаление пользователей. Может я какой модуль не нашел еще?
Dr. L.S.Dee
Затупил - Суть задачи следующая: 1. Собрать список пользователей включая системных со всех линуксовых машин (примерно пол сотни виртуалок); 2. Сложить всё это богатство локально в один файлик, в котором должен быть написан еще и хост напротив юзверя; Возможно ли это реализовать ансамблем? Почитал просто про модуль user и там увидел только добавление/удаление пользователей. Может я какой модуль не нашел еще?
Вообще сабж служит прежде всего для приведения конечных узлов к требуемому состоянию. Сбор информации с конечных узлов an sich не служит приведению их к требуемому состоянию. Но несомненно можно раздать на них какое-то ПО, которое будет собирать такую информацию, если наличие такого ПО входит в требуемое состояние узлов.
Michael
Всем спасибо! Пойду костылить/говнокотить =)
Dr. L.S.Dee
Колега. Задача распространённая. Но Тимур ответил верно
Я имел в виду разделение функции между собственно сабжем — и сбором информации.
Anonymous
Ее я обычно ставлю админка, что условно если поискать тут по тегу #странное, чуть ли не каждую неделю на таких вм ансибл пытаются реализовать LDAP
Anonymous
Я бы наверное пошёл по пути костылей и баша
Dr. L.S.Dee
Колега. Задача распространённая. Но Тимур ответил верно
Если бы мне именно это понадобилось вдруг, и я был бы ограничен только PoSh и DSC, то сделал бы именно так. Написал модуль, собирающий данные - это одна сущность. И включил бы модуль в конфигурацию узлов - это другая сущность и прямая задача DSC.
Anonymous
Так какую задачу решить пытаетесь ? Аудит что есть ? Выпилить левых или ещё что то ?
Dr. L.S.Dee
niko
сначала через shell кладешь в файлик, потом через fetch стягиваешь полтыщи файлоиков с именем "{{inventory_hostname}}_users" но нет, ансибл тут не нужен)
Anonymous
То есть аудит
Anonymous
mussh -h списокхостов -m0 -c 'cat /etc/passwd|cut -d":" -f 1' > users.txt
Потом ещё первым столбцам добавить хост откуда. Все склеить.
Anonymous
И все. Задача наверное решена
niko
Потом ещё первым столбцам добавить хост откуда. Все склеить.
его муссш выводит) разве что причесать вывод)
Timur
Если очень хочется попрограммировать, можно написать соответствующий inventory плагин для ансибла, выдергивающий инфу по пользователям, и просто вызвать ansible-inventory
Michael
зря я вас тут потревожил конечно =)
Timur
На выходе будет готовый отчет в json или yaml
Timur
Но это явное забивание гвоздей микроскопом
Anonymous
«Когда в руках ансибл, все кажется гвоздями» (с)
Anonymous
У меня мой бос хочет чтобы у нас все ставилось абсолютно через ансибл
Michael
Пусть я забил сейчас пару гвоздей отличным микроскопом, но я сделал большую часть =) Но я таки смог собрать в нужном мне формате этот долбаный список =))
Anonymous
Только там нюансов вагон. Но это никого не волнует. Зато с плясками и песнями ))
Anonymous
Я на каждой первой работе такую задачу ставлю ) а люди все равно каждый раз страдают и изобретаются велосипед
Michael
Ты бы гит свой оставил с кодом
щас ссылку кину но не на гит, а пастебин
Anonymous
Тоже отлично
Dr. L.S.Dee
Но это явное забивание гвоздей микроскопом
Но наличие такого плагина не только решает сиюминутную задачу, но и позволит ее воспроизвести, если что. Пока не закидали помидорами: там выше я писал, что это, как я понимаю, не та задача, которая должна решаться сабжем. Но если уж браться, то шоб красиво.
Michael
Тоже отлично
Ловите =) Решилось всё в две таски =)))) Аж стыдно шо полез сюда с вопросами =) https://pastebin.com/D7KTWrmc
Michael
#respect #КиВ #правильноекомьюнити
Оформил с комментариями https://t.me/sysodminium/3200
Timur
Если интересует более красивое решение без башсибла, то есть модуль facter
Anonymous
Вот если бы каждый вопрошающих сжечь, когда находил решение своих проблем - делился бы им. Представляете как стало бы прекрасно
Timur
https://docs.ansible.com/ansible/latest/modules/facter_module.html
Timur
Может вытаскивать любую инвентарную инфу с удаленных хостов через паппетовский facter
username
сорри за офтоп Есть идеи чем автоматизировать настройку GUI приложений типа Firefox/Thunderbird (не тупо копирование профиля, а именно конфигурация добавление bookmarks/plugins)?
Timur
Прописывание в конфиг нужных ключей?
George
Там формат вполне внятный, пихтон скрипт для управления ключами можно за вечер наговнякать
username
Прописывание в конфиг нужных ключей?
ну не совсем внятый, если не хочеться заморачиваться) Я собственно особо не надеялся на готовое решение, так на всякий спросил).
Dr. L.S.Dee
Плагины - архивы с расширением .xpi + какой-то джейсон. Закладки - джейсон был, только я его чот не нахожу у себя. Но я же помню! Требование: наличие файлов + наличие текстовых файлов определенного содержания.
Dr. L.S.Dee
ну как вариант, брать clean install, копировать директорию потом делать то что надо, потом diff'ом смотреть чё поменялось и думать...
Расширения лежат в конкретном каталоге мозиллы в профиле, в подкаталоге extensions, например. Сколько расширений - столько и xpi-шек. С названиями, соответствующими имени расширения. Джейсон с регистрацией расширений тоже находится. Джейсон закладок можно выгрузить из любой установки, посмотреть чо там есть.
Dr. L.S.Dee
Но можно и сравнить снимки, да. Хотя бы на предмет возможных упущений.
Dr. L.S.Dee
Или доки почитать мозилловские. Гайд по написанию экстеншонов же у них есть, например.
username
проблема больше с thunderbird ибо надо смотреть как он пароли шифрует
Dr. L.S.Dee
Алгоритм? или где хранит файл с зашифрованными?
username
Алгоритм/Синтаксис
Dr. L.S.Dee
При собственно шифровании может быть использован пользовательский токен, так что просто скопировать файлик может и не прокатить.
Dr. L.S.Dee
Чай, не Опера бородатых времен, где можно было wand.dat украсть.
Dr. L.S.Dee
Но это, наверное, все же сильный оффтопик тут.
Anonymous
@zdet87 будет жить. Поприветствуем!
SM
@zdet87 доброе пожаловать!
Anonymous
@MuslimBeibytuly будет жить. Поприветствуем!
Anonymous
Может кто-то подсказать, каким образом в aws dynamic inventory plugin (https://docs.ansible.com/ansible/latest/plugins/inventory/aws_ec2.html) можно сделать одну группу дочерней для другой?
Денис
all: children: docparsers: children: docparsers-win: docparsers-linux:
Денис
в инвентори файле
Денис
вот docparsers-win, docparsers-linux эти группы приезжают из динамик инвентори
Денис
в плейбуке просто потом пишу hosts: docparsers
Денис
ансибл нормально работает, когда у него одновременно dynamic и static инвентори