Владимир
благодарю
Alex
Какое-то шестое чуйство мне подсказывает, что "Инвентори: ansible_host vs FQDN" как-то связаны с вашей проблемой.
а есть какая то принципиальная разница или подводные камни при использовании инвентори в ini формате по сравнению с yaml, например?
Отделение Bereke Bank
сувать переменные проще в yaml инвентори. в остальном пофиг. ini меньше букв и читать удобнее имхо. каких-то проблем при использовании и того и другого не замечал
Alex
а есть простой способ формировать инвентори в yaml формате?
Сергей
Подскажите, пожалуйста есть ли практики расположения дополнительных файлов в разрезе инвентарей?
Vladislav 👻
Нет, сам сейчас костыль приделываю. Пока думаю о том, что путь до файла переопределять в инвентори и брать его от туда же
Сергей
Вам поможет переменная inventory_dir
Сергей
получается не красиво - но работает
Vladislav 👻
Да, я в курсе
Vladislav 👻
Других вариантов я не нашел оптимальных
Sun
нид хелб, я туплю. Можно вот так в /etc/sudoers делать или нет? ALL= NOPASSWD: /usr/bin/{jcmd,jconsole,jstack,jstat,java}
Vladislav 👻
можно сделать валидацию, но вроде нет, полный путь должен быть
Sun
можно сделать валидацию, но вроде нет, полный путь должен быть
Сходил в официальный ман по sudoers. Нет, нельзя.
Aliaksei
нид хелб, я туплю. Можно вот так в /etc/sudoers делать или нет? ALL= NOPASSWD: /usr/bin/{jcmd,jconsole,jstack,jstat,java}
а зачем тебе судо для утилит, jstack не подключится к процессу если он запущен от другого пользователя (вроде)
Sun
да, я уже прочитал доку. 🙂
Oleg
https://docs.ansible.com/ansible/latest/modules/win_rds_cap_module.html#win-rds-cap-module подскажите пож-та. данный модуль подходит для локальных групповых политик? Хочу его использовать для таймаута RDP.
Balagur
Подскажите плиз, как то можно при изменении файлов через шаблоны выводить какие в результате строки добавились, какие удалились.
Balagur
Или ansible просто переписывает весь файл?
Anonymous
Подскажите пожалуйста, можно ли сделать чтоб команда ансибла запустилась на всех хостах одновременно? Так как сейчас отправляется команда ждёт выхлопа от первой тачки и только потом идёт на след хост...
Anonymous
Strategy: free
Спасибо большое👍👍👍
George
Strategy: free
Это хороший совет ? @tnt4brain
Я и твой кот
5 по дефолту, если точно помню
Полина
Всем привет. Я хочу поставить ansible на virtual env (первый раз с ним знакомлюсь). Как я понимаю в эту область необходимо поставить все нужные для работы ansible пакеты (например питон). А что еще нужно туда ставит? И пропадает ли virtual env при перезагрузке машины?
Николай
yum install python3-virtualenv virtualenv-3 ansible-venv-28 source ansible-venv-28/bin/activate pip3 install ansible== pip3 install ansible==2.8.10 pip3 install netaddr selinux jmespath "Область" создаётся командой virtualenv Не пропадёт, это просто каталог с файлами
Andrey
Народ, подскажите кто делал может. У меня есть плейбук с таким вот кусочком: container_env: EVENTBUS__USERNAME: "auth_user" EVENTBUS__PASSWORD: "12345678" Я хочу заменить на вот это: container_env: "{{ lookup('url', 'http://localhost:8000/all-items.txt', wantlist=True) }}" какой должнн быть ответ сервера, что бы такое заработало?
Влад 🇺🇦
всем привет, подскажите, как может быть такое что docker-compose up ругаеться при запуске /usr/local/bin/docker-php-entrypoint: 9: exec: php-fpm: not found а если я стартую через ansible его то все ок - name: Create and start services docker_compose: project_src: /opt register: output
Влад 🇺🇦
не, ошибку я понимаю, только почему ее нету когда я через ансибл запускаю?
Grek 🇺🇦
где запускается таск в ансибле, на каком хосте?
Влад 🇺🇦
да, контейнеры запущены, в логах ошибки нету
Влад 🇺🇦
потом я делаю docker-compose down
Влад 🇺🇦
и docker-compose up
Влад 🇺🇦
и один контейнер уже не стартует
Влад 🇺🇦
вот ту ошибку выбивает что выше
Sebor▂▅▇█▓▒░
George
вот ту ошибку выбивает что выше
А у тебя вольюм к контейнеру не подцеплен ? Нужно внимательно обнюхать его содержимое
George
И докер компоуз файл с его окружением - override и .env
George
А чем он плох?
Вот и хочу узнать - оно же порядок в принципе ломает выполнения тасок ?
Отделение Bereke Bank
Вот и хочу узнать - оно же порядок в принципе ломает выполнения тасок ?
Почему? В рамках одного хоста все таски выполняются как описано. Ты избавляешься от проблемы когда все хосты ждут одного тормозного
Sergey
Это хороший совет ? @tnt4brain
Нет. Этот план - говно, я в нём не участвую.
Отделение Bereke Bank
Правда единственный раз когда я пробовал free - ансибл послал меня нахер со словами "с add_host низя"
Viktor
Привет. Помогите в jinja задать условие. Есть несколько кластеров редиса, хочу для разных сделать разный command в таск: {% if ansible_hostname in redis_queue_group %} command: ["foo"] {% else %} command: ["bar"] {% endif %} Помогите написать правильно такую логику
Sergey
Подскажите пожалуйста, можно ли сделать чтоб команда ансибла запустилась на всех хостах одновременно? Так как сейчас отправляется команда ждёт выхлопа от первой тачки и только потом идёт на след хост...
Сделай параметр forks больше единицы. По умолчанию Ансибл запускает 5 воркеров, если у тебя меньше хосто обрабатывается одновременно - ищи кривую настройку.
Viktor
в group_vars или host_vars задай команды
можно чуть подробнее? вообще, у нас динамический inventory с GCP, но машины тегаются по лейблам. Как мне правильно проверить вхождение ansible_hostname в заданный pattern в jinja?
Viktor
А переменные где хранишь?
сорян, в group_vars, да, подумал сначала о чем-то другом вроде класс, не подумал сразу. получится что-то типа command: "{{ redis_gv_command }}"?
Отделение Bereke Bank
да
Viktor
спасибо. Но вспомнил, почему я начал думать про jinja. мне для одной группы хостов command нужен, для других -- не нужен вообще.
Влад 🇺🇦
спасибо, разобрался, оказываеться в env файле была переопределена переменная PATH, по этому оно не находило php-fpm
Полина
А осле установки ansible в venv где искать инвентарный файл и файл хостов?
Отделение Bereke Bank
создаешь где хочешь и при запуске плейбука указываешь его в -i
Alex
А осле установки ansible в venv где искать инвентарный файл и файл хостов?
venv не имеет никакого отношения к твоему инвентарю
Отделение Bereke Bank
А осле установки ansible в venv где искать инвентарный файл и файл хостов?
https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html#directory-layout так наверное понятнее будет
Полина
о, спасибо
....
супер. спасибо
аккуратнее с "is (un)defined" недавно очень больно запнулись при обновлении о багу - https://github.com/ansible/ansible/issues/23675 там по ходу обсуждения описали обходное
Yks
столкнулся с проблемой. Таска инклюдится но не исполняется. В таске определяю факт. Потом этот факт использую в loop, что бы для каждого loop_var заинклюдить и запустить таску. playbook.yml - include: pre_run.yml - тут регистрируется варса main_steps ( в ней все как надо я дебаг выводил) tags: single - include_tasks: main_steps.yml - эту таску я хочу инклудить и исполнять для каждого main_step из main_steps варсы loop: "{{ main_steps | default([]) }}" loop_control: loop_var: main_step tags: single Что происходит в логе - TASK [obfuscate : include_tasks] *************************************** Friday 04 September 2020 11:23:09 +0000 (0:00:00.144) 0:00:36.724 ** included: /data/ansible/roles/obfuscate/tasks/main_steps.yml for host1 included: /data/ansible/roles/obfuscate/tasks/main_steps.yml for host1 included: /data/ansible/roles/obfuscate/tasks/main_steps.yml for host1 т.е. происходит инклуд таски на каждую loop_var\ далее исполняется следующая таска в плейбуке может я чего не так использую
енот
кто юзает ансибль и марьядб, у вас всё нормально? у меня команда mysql_db шлёт меня нахрен с ошибкой, я чет даже не знаю что делать, своё костылить через cmd? TASK [geerlingguy.mysql : Remove MySQL test database.] *********************************************************************************************************************** fatal: [kali]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, u\"Access denied for user 'root'@'localhost'\")"} Дело в том, что в /root/.my.cnf создается файл не с login_user, а с user.
енот
Ребят, я третий или четвертый раз задаю этот вопрос. Конечно, мне никто не обязан. Но, может, я что-то не так делаю? На меня ни разу вообще внимания не обратили.
Aleksandr
не целыми сутками же здесь сидеть
енот
так я неделю уже пытаюсь
енот
.my.cnf [client] user=mysqluser password=mysqlpass откуда login_user?
он ПРОСИТ его, в ошибке же видно. я не знаю откуда он его придумал.
енот
это роль и встроенный mysql_db модуль, ничего другого
Aleksandr
версия ансибла, версия субд
енот
версия ансибла, версия субд
root@debianclr:~/ansible/kaliningrad# ansible --version ansible 2.9.13 config file = /etc/ansible/ansible.cfg configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/dist-packages/ansible executable location = /usr/bin/ansible python version = 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]
енот
версия ансибла, версия субд
root@debianclr:~# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 73 Server version: 10.3.23-MariaDB-0+deb10u1 Debian 10
енот
login_user это параметр модуля
прописал в переменных, не помогло