Sergey
тоже можно
Sergey
это уже по идее на усмотрение реализующего
Sergey
Как там и что в инфраструктуре конкретной - он знает, а люди из чата - по определению нет.
Navern
Складывать стейт в факты?
да, есть же локал факты на самом деле. Ты можешь их хранить на сервере и ансибл их сам подхватит, что тоже удобно
Ievgen
Сама модель исполнения ансибла - "у нас есть хосты, к ним применяются плеи из плейбуков" - не подразумевает наличия стейта у хостов. Вернее, она ориентирована на то, чтобы хост приходил в описанный стейт из (почти) любого другого. Другое дело, что часть ПО не рассчитана на такую модель настройки - это факт. Как с этим жить? На данный момент прям крутых рекомендаций нет, но, скорее всего, требуется как раз организовать какое-то внешнее хранилище стейта хостов, и обращаться к нему по мере выполения плейбука.
Я не оспариваю stateless модель Ansible, я лишь говорю, что существующие инструменты управления concurency не идеальны )
Sergey
Ievgen
out-of -the-box
Sergey
именно
Ievgen
ну почему нет, есть ) тот же serial
Nik
А можно в инвентори сделать что то вроде host[1-11]?
Nik
В доке не нашел
matt
в доке есть, можно
Nik
http://docs.ansible.com/ansible/latest/intro_inventory.html
Nik
Не тут смотрю?
Nik
host range must be begin:end or begin🔚step
George
Nik
ошибка. сделать host[1:11]?
Nik
Nik
спасибо
George
👍
Nik
И я тут еще читаю про динамик инвентори. Вижу только завязки на облачные сервисы. Если я хочу свой локальный динамик инветнори, то есть какой то интерфейс для ансибла, который можно прикрутить? Я его описание не нашел
George
возможно awx
Александр
Nik
Ок, копну
Александр
http://docs.ansible.com/ansible/latest/dev_guide/developing_inventory.html
Vlad
Nik
https://github.com/lig/pyventory
не то. У меня снаружи база. в ней все хосты. Около базы могу написать софтинку, которая по http 9или по другому интерфейсу) будет отдавать хосты
Vlad
питоном можно загружать данные из бд
Roman
привет
Roman
У меня есть playbook
Roman
---
- name: Setup web apps
hosts: app
roles:
- web
Roman
Roman
НО tasks не подтягиваются
Roman
ansible-playbook install.yml -i inventory.txt --list-tasks
playbook: install.yml
play #1 (app): Setup web apps TAGS: []
tasks:
Roman
Кто-то сможет подсказать где бага?
Roman
Got it, Thanks!
Vladislav 👻
Vladislav 👻
Вот вариант
Vladislav 👻
http://docs.ansible.com/ansible/latest/playbooks_best_practices.html#directory-layout
Vladislav 👻
А вот тут это все описано
Ivan
Добрый день! Любителям автоматизировать труд человека)
Ivan
Я попал в тупик, не знаю как действовать, а вы наверняка знаете ответ. С Ansible более-менее познакомился. Centos настроил. Пришло время запустить докер контейнер. Предполагаю что мне надо через playbook на удалённую машину установить pip, docker-py и сам докер?
Victor
Victor
А поставить docker - в чём сложность?
Ivan
пробую
Ivan
Установил так докер, но почему то не запустился демон
Nklya
А почему он должен. Ты просто пакет поставил
Ivan
намек понял, в убунте вроде сам в systemd добавляется
Nklya
Ну на магию лучше не рассчитывать
Ivan
хотя щас и в centos командой yum install docker запустился как демон
Ivan
а через ansible не хочет запускаться
Nklya
Вот пример https://github.com/geerlingguy/ansible-role-docker/blob/dd0c6e0f8ee3aa5a9638d5318593fc80f2eaacfb/tasks/main.yml#L11
Ivan
понятно, state: started, спасибо)
Nklya
Сначала ставим пакет, потом включаем сервис и стартуем
Nklya
enabled: yes, если хочешь автостарт при загрузке
Vladislav 👻
dk
Ivan
даже ролью abaez.docker пытался ставить докер, все равно он не запускается... (((
может это вот с чем связано. Рабочая машина ubuntu, в ней я запустил контейнер centos с ssh и на него натравливаю докер
Sergey
Sergey
виртуализация внутри виртуализации?
Ivan
для теста
Ivan
как еще тестировать))
Sergey
не будет работать
Sergey
не трать время
Sergey
у тебя же контейнер с центосом откуда-то взялся?
Ivan
я хочу сделать ансибил, который на centos поставит докер, этот centos я решил сделать контейнером
Ivan
этот контейтер я на убунте руками запустил
Sergey
эта конструкция не будет работать
Sergey
хочешь проверять - нормальную виртуалку возьми с центосом
Ivan
понял, спасибо, возьму
Ivan
о, может vagrant поможет
Danila
а кто-нить сталкивался с тем, что энсибл начинает ругаться на строчку с именем модуля в плейбуке?
Danila
exception type: <class 'ansible.errors.AnsibleParserError'>
exception: no action detected in task. This often indicates a misspelled module name, or incorrect module path.
The offending line appears to be:
- name: Write postgres repo
^ here
Alex
- name: Write postgres repo
что ниже показывай
Alex
собсно он экшена найти не может
Danila
- name: Write postgres repo
- shell: echo "deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main" >> /etc/apt/sources.list.d/pgdg.list
Salem
перед shell убери дефис
Danila
а всё, рука дрогнула