Anastasia
https://docs.ansible.com/ansible/latest/modules/rabbitmq_user_module.html https://docs.ansible.com/ansible/latest/modules/rabbitmq_queue_module.html
Anastasia
@anatoliykv ^
Sebor▂▅▇█▓▒░
Вот так как тут https://github.com/IronCore864/ansible-rabbitmq-cluster/blob/master/tasks/create_users.yml
ты если используешь что-то специфичное, то сразу об этом и надо говорить, а стандартный способ тебе Анастасия подсказала
Отделение Bereke Bank
Вот так как тут https://github.com/IronCore864/ansible-rabbitmq-cluster/blob/master/tasks/create_users.yml
И все в таком духе - name: Add rabbitmq admin user rabbitmq_user: user: admin password: "{{ rabbitmq_admin_password }}" vhost: / configure_priv: .* read_priv: .* write_priv: .* tags: administrator state: present
Anatolii
И все в таком духе - name: Add rabbitmq admin user rabbitmq_user: user: admin password: "{{ rabbitmq_admin_password }}" vhost: / configure_priv: .* read_priv: .* write_priv: .* tags: administrator state: present
Получается если я хочу создать нового пользователя, то просто применяю этот ямл и все?
Sebor▂▅▇█▓▒░
мне кажется, тебе стоит подтянуть матчасть
Anatolii
мне кажется, тебе стоит подтянуть матчасть
Та это само собой) только начинаю с ансиблом разбираться
Anastasia
Получается если я хочу создать нового пользователя, то просто применяю этот ямл и все?
вы можете попробовать сделать так, как в документации. Если возникнут проблемы, с которыми вы не сможете самостоятельно разобраться или ваша цель не будет таким образом достигнута - мы здесь :)
Sebor▂▅▇█▓▒░
Та это само собой) только начинаю с ансиблом разбираться
ну тогда начни с оф доки, там все довольно подробно написано (в том числе про терминологию)
Dimujin
Установил awx Надо залить 1К хостов, раздать хосты пользователям. Как это можно из файла hosts подгрузить. Чтобы не заводить по одному
Vladimir
Дык там же можно просто Inventory заполнить
Dimujin
Да, но это в ручную, нельзя разве просто скопировать вставить 1000 хостов?
Vladimir
Всем дня. Скажите , а есть готовые плейбуки для инвенторизации серверов ? Собрать информации CPU/HDD/MEMORY и положить в файлик. Писать на скриптах что-то лень
Vladimir
я думаю хватит, но мне лень писать простите =) Думал на такую очевидную вещь , есть что то готовое
Dimujin
У меня в докере awx. Благодарю!
Ждун
только у меня вызывает раздражение просьба о помощи, потому что лень?
Alex
Уверен, что кто-то не поленился и написал
Muhammad
+1
Отделение Bereke Bank
я думаю хватит, но мне лень писать простите =) Думал на такую очевидную вещь , есть что то готовое
в ansible.cfg и делаешь с этими файлами что хочешь) fact_caching = jsonfile fact_caching_connection = $HOME/ansible/facts
Artem
https://www.linuxtopic.com/2019/02/ansible-playbook-get-hosts-information.html
Oleg
need help! прописываю в файле шаблона j2 такую строку: {{lookup('env', 'instance_virt_hostname') | default('"{{ansible_hostname}}"', true)}} но в итоге при пустой переменной у меня вставляется {{ansible_hostname}} вместо имени хоста. Что я не так делаю? Спасибо за помощь.
Vladislav 👻
Вроде кавычки и скобки не нужны в дефолте
Oleg
{{lookup('env', 'instance_virt_hostname') | default('ansible_hostname', true)}} - так тоже пробовал и рез-т тогда ansible_hostname
Vladislav 👻
Одинарные тоже не нужны
Oleg
мм....сча попробую..
Vladimir
Подскажите пжлст. Имею вот такую конструкцию: - name: Add users user: name: "{{ item.key }}" groups: "{{ item.value.groups | default('operator') }}" shell: "{{ item.value.shell | default('/bin/bash') }}" uid: "{{ item.value.uid }}" home: "{{ item.value.home | default(\"/home/{{ item.key }}\") }}" state: "{{ item.value.state | default('present') }}" loop: "{{ lookup('dict', sysadm) }}" Все отрабатывает корректно, кроме настройки домашней директории, т.е. home: "{{ item.value.home | default(\"/home/{{ item.key }}\") }}" Директория прописывается - /home/{{ item.key }} Может кто знает, как привильно экранировать данную перменную, чтобы при накате подтягивалось значение переменной, не ее название ?
Отделение Bereke Bank
убери {{ }} внутри {{ }}
Artem
и если юзаешь "{{ }}" то внутри используй '
Vladimir
Ой, июньский LDAP на Ansible :-)))
Не ldap, просто накат пользователей :)
Vladimir
Он не умеет такие запросы решать?
Vladimir
убери {{ }} внутри {{ }}
home: "{{ item.value.home | default(\"/home/item.key\") }}"
Vladimir
Вот так?
Vladimir
Не работает
Sergey
Он не умеет такие запросы решать?
Умеет. Только "накат пользователей" указывает на антипаттерн "избегание LDAP".
Vladimir
С этим согласен :)
Vladimir
и если юзаешь "{{ }}" то внутри используй '
home: "{{ item.value.home | default('/home/item.key') }}"
Vladimir
Так тоже не работает
Vladimir
/home/item.key
Vladimir
А мне нужно, чтобы он переменную подставлял
Sergey
ты в фильтр передаёшь строку, кто что должен подставить?
Aleksey
Ой, июньский LDAP на Ansible :-)))
вы так говорите LDAP будто это что то хорошее
Aleksey
локальный пользователь всему голова!
Vladimir
локальный пользователь всему голова!
Помоги мне разобраться с экранированием, пжлст
Sergey
вы так говорите LDAP будто это что то хорошее
Вообще - да. Доклад могу кинуть, но это в другом чате.
Aleksey
давайте больше точек отказа в критической инфре!
Aleksey
щас пойдут мутные истории про sssd
Sergey
давайте больше точек отказа в критической инфре!
Лёш, это не ансибловая дискуссия, честно -> @ru_ldap
Sergey
@kislyanitsin https://jinja.palletsprojects.com/en/2.11.x/templates/#other-operators
Vladimir
default('stroka' ~ var1 ~ 'stroka2')
А вот так сработало, да
Vladimir
Спасибо
Sergey
Спасибо
Всегда пожалуйста. Почитаешь по ссылке - всё системно в голове разложишь.
Div
для начала, закиньте простынь на pastebind пожалуйста
Sergey
@sahaquielx ^^^ +++
Viktor
хочется пройтись for и подставлять несколько include в один config-file. Написать for не выходит. Подскажите, где я повернул не туда? https://pastebin.com/7xfLb0js ожидаю output: ... include /etc/nginx/include/common_headers; include /etc/nginx/include/keep_alive_headers; ...
Div
а теперь первый пост потрите, пожалуйста
Div
и будет вам мир и покой в душе.
Div
так пробовали? {% for item in your_list %} include /etc/nginx/include/{{ item.1.name }}; {% endfor %}
Div
вот тут почитайте https://jinja.palletsprojects.com/en/master/templates/#for
Div
там же ниже if на всякий случай.
Viktor
спасибо! на самом деле, сильно запутался, пытаясь обратиться в for к headers_vhost.
Div
как я путался в начале... с опытом пройдет.
George
А где бы мне в плейбуке положить переменную (общую для нескольких ролей), которую можно переопределить в любом месте inventory (group_vars/all, group_vars/*, host_vars)? Что-то я курю маны и мне грустно.
Full
В инвентори и положи.
George
Инвентори генерирует программа.
Vitaliy
По возможности, прошу подсказать: имеется конфиг, который нужно обновить частично сверить username и password и заменить если отличается. authentication: replication: username: replication_user password: replication_password superuser: username: superuser_user password: superuser_password rewind: username: rewind_user password: rewind_password Пробую для этого lineinfile, с параметром insertafter: '^ replication:' получаю в результате замену всех нижележащих username password на replication_user, replication_password. Как правильно решить эту задачу? чтобы к примеру затронуть только блок replication: username: replication_user password: replication_password Шаблоном не желательно, так как другая часть конфига не должна быть затронута.
George
Прочитать как yaml и заменить с combine.
Vitaliy
Прочитать как yaml и заменить с combine.
Пока не понятно. Если можно, пример или тыкнуть в док.