@pro_ansible

Страница 496 из 625
Юра
22.06.2018
10:58:49
Что пакет добавляет знаю, допишу плейбук для инсталла

Просто в rhel по такому-же шаблону корректно ставится

Roman
22.06.2018
11:00:16
роль от dj-wasabi которую выше как пример привели - вполне рабоачая и даже обновляется время от времени. Есть все основания использовать ее, а не городить свое.

Просто в rhel по такому-же шаблону корректно ставится
В доках https://docs.ansible.com/ansible/latest/modules/package_module.html написано указывать имя, значит надо указывать имя, самый надежный вариант.

Google
Юра
22.06.2018
11:01:42
Тут цель в изучении ансибла, а не установке агента

Nklya
22.06.2018
11:03:45
Ну так даже если не использовать сторонние роли, бывает очень полезно подсмотреть как сделано у других

Roman
22.06.2018
11:05:01
Тогда добавляйте репозиторий через apt_repository и apt_key изучите больше...

Stepan T.
22.06.2018
11:20:59
Господа, помогите некрофилу. Оказалось, что в 16.04 ubuntu ансибл из официального репозитория ставится 2.0.2, а он сильно отличается от того, к чему я привык =( мне нужна документация

Dmitry
22.06.2018
11:21:54
а добавить ppa нельзя?..

Stepan T.
22.06.2018
11:22:15
Боюсь что нет.

Anton
22.06.2018
11:23:01
Не ставь из репы никогда

pip install ansible

Stepan T.
22.06.2018
11:23:33
Хм.

bebebe
22.06.2018
11:23:43
не ставьте из pip'a, делайте docker run --rm

Stepan T.
22.06.2018
11:24:34
Так, отставить холивар! Про pip понял, но предпочёл бы ознакомиться с документацией сначала

Nklya
22.06.2018
11:25:01
какой документацией? на 2.0.2 ансибл?

Google
Anton
22.06.2018
11:25:13
ansible это пакет питона

Как и awscli к примеру

Ставить пакеты питона не из репы питона - зло

И часто даже не пашет, или как в твоём случае outdated

bebebe
22.06.2018
11:27:02
ставить пакеты вне докера - зло, если только десктоп приложения ;-)

Anton
22.06.2018
11:27:22
ansble не приложение

А докер ты тоже из докера ставишь?

Anton
22.06.2018
11:28:23
Слабак ?

Vadim
22.06.2018
11:28:27
не ставьте из pip'a, делайте docker run --rm
Ансиблу часто куча утилит нужна, так что получается неудобно - свой контенер пилить

bebebe
22.06.2018
11:29:22
ну я уже год переодически засовываю десктоп в контейнеры, с переменным успехом, из-за нехватки времени

впрочем это уже какой-то оффтопик коллеги

Anton
22.06.2018
11:29:49
Угу, СУБД тоже в докер

Stepan T.
22.06.2018
11:29:58
module index для А 2.0 где добыть?

Vadim
22.06.2018
11:30:30
собственно в этом и смысл ;-) как для меня.
Аа, делать FROM ansible? Вариант, но там же поди alpine

bebebe
22.06.2018
11:30:30
Угу, СУБД тоже в докер
это специальная олимпиада которая проходит раз в месяц в чате @kubernetes_ru

Google
bebebe
22.06.2018
11:30:54
можно найти и ubuntu

Nklya
22.06.2018
11:31:00
module index для А 2.0 где добыть?
даже если найдешь какой-то старый PDF с докой, то зачем эта некрофилия?

bebebe
22.06.2018
11:31:40
Аа, делать FROM ansible? Вариант, но там же поди alpine
собственно вот публичные образы на любо вкус и цвет https://hub.docker.com/r/ansible/ansible/tags/

Vadim
22.06.2018
11:35:04
Rawhide 2 years ago, centos - 1 year ago. Это вредительство какое-то

bebebe
22.06.2018
11:35:41
собственно вот его образы я использую

не до конца понимаю, почему ansible/ansible dockerhub такой старый

Banschikov
22.06.2018
11:47:55
не до конца понимаю, почему ansible/ansible dockerhub такой старый
Ага. Тут мне понадобился этот образ. Даже не смог запулить его(. Свой собирал

bebebe
22.06.2018
11:59:33
Ага. Тут мне понадобился этот образ. Даже не смог запулить его(. Свой собирал
берите отсюда https://hub.docker.com/r/williamyeh/ansible/tags/ и вообще, есть достаточно универсальный метод ARG ansible_version 2.5.0.0 FROM YOUR_FAVORITE_BASE_OS RUN pip install ansible==${ansible_version} и собирайте его как docker build --build-arg ansible_version=2.6.0.0 -f ansible.Dockerfile `

Roman
22.06.2018
13:59:11
я правильно понимаю что gather facts можно отключить только для play но не для task?

Sergey
22.06.2018
14:00:16
хотя нет, правильно, это я тебя неправильно поправляю ?)))

Roman
22.06.2018
14:00:37
?

Sergey
22.06.2018
14:00:42
на уровне тасков факты не собираются уже

поэтому и отключение нинада

Nklya
22.06.2018
14:01:54
ну отключение нада когда питон через raw ставищь например

Roman
22.06.2018
14:02:31
ну отключение нада когда питон через raw ставищь например
вот именно для этого мне и надо, есть пример какой-нибудь?

Nklya
22.06.2018
14:03:40
--- - name: Check && install python hosts: all become: true gather_facts: False tasks: - name: Install python for Ansible raw: test -e /usr/bin/python || (apt -y update && apt install -y python-minimal) changed_when: False

Roman
22.06.2018
14:08:07
--- - name: Check && install python hosts: all become: true gather_facts: False tasks: - name: Install python for Ansible raw: test -e /usr/bin/python || (apt -y update && apt install -y python-minimal) changed_when: False
да, подобное у меня есть, но уже в роль добавлено. А плейбук простой --- - name: Prepare host for Ansible hosts: all become: yes roles: - ansible_bootstrap Вот думаю можно ли из task нужную часть выполнить без gather_facts или все же надо 2 отдельных play иметь в плейбуке.

Google
Nklya
22.06.2018
14:09:03
два плея в одном плейбуке, или два плейбука, по другому не знаю как

Roman
22.06.2018
14:10:09
Понял, спасибо.

Sergey
22.06.2018
14:10:28
два плея в одном плейбуке, или два плейбука, по другому не знаю как
у меня сделан в плейбуках отдельный плей, который тупо факты собирает. он работает на all, но тасков не содержит. а дальше уже стоит целевой плей, который не собирает факты, но работает работу.

inqfen
22.06.2018
14:17:54
Господа использующие dynamic inventory, юзаете готовые скрипты или велосипеды пишете?

А то мне вот надо бы и не знаю, искать готовое или самому писать

alex
22.06.2018
14:18:16
7 бед 1 ответ - вставь костыль изобрети велосипед

Nklya
22.06.2018
14:19:30
ит депендс. можно взять готовое и дописать что нужно

Admin
ERROR: S client not available

bebebe
22.06.2018
14:34:53
Господа использующие dynamic inventory, юзаете готовые скрипты или велосипеды пишете?
у меня есть куча случаев, где dynamic inventory нужно было приколхозить к текущей структуре (брать из etcd, из sql и прочего) обычно это однострочники на curl | jq

Nklya
22.06.2018
14:37:21
А как же питончик, зачем монстриков на баше рожать?

Anton
22.06.2018
14:37:40
Господа использующие dynamic inventory, юзаете готовые скрипты или велосипеды пишете?
Если дефольные устраивают - юзай их, если нет - пиши свой вариант)

bebebe
22.06.2018
14:40:34
Nklya
22.06.2018
14:42:18
я тож люблю страшные однострочники)) и даже на питоне их делал))

bebebe
22.06.2018
14:42:22
в целом вкусовщина конечно

Я все никак не овладею в полной мере jq, часов 8 помойму убил на конвертацию ldiff в JSON при помощи jq Так и не вышло

bebebe
22.06.2018
15:47:26
Но зачем?
Чтобы засунуть в факты ansible

Но зачем?
А вы как бы сделали?

Alex Milushev
22.06.2018
16:01:47
Lookup плагин?

Google
Sergey
22.06.2018
16:03:00
https://gist.github.com/Xophmeister/33e6abe5e055e122f5093f1acbc91793

https://www.python-ldap.org/en/latest/reference/ldif.html

bebebe
22.06.2018
16:04:18
https://gist.github.com/Xophmeister/33e6abe5e055e122f5093f1acbc91793
второе нагуливал, непонравилось, первое закрыл после <?php вот моё решение: ldapsearch -o ldif-wrap=no -LLL ... | sed -r 's/([^:]+)::? (.*)/"\1":"\2",/' | awk 'BEGIN {printf("{\n")} {printf("%s\n", ($0 == "") ? "\"\":\"\"}{" : $0 )}' | jq '[.]'

bebebe
22.06.2018
16:06:33
ну если "не вышло" лучше "закрыл после <php" - тогда всё ок
ну как бы тащить депенденси в виде php - это как то даже не ловко для простой задачи.

Sergey
22.06.2018
16:08:26
она не такая простая, как кажется первоначально

bebebe
22.06.2018
16:09:50
то решение что я написал выше - работает на моем наборе данных, думаю в общем случае оно будет работать мягко говоря не правильно.

она не такая простая, как кажется первоначально
если у вас будет время и получится это только на jq сделать, сниму шляпу

http://termbin.com/44f6 вот тут выложил немного артефактов от моих изысканий, может поможет кому-нибудь

там немного csv есть, т.к. есть рабочий ldiff->csv, и csv->json

Юра
23.06.2018
06:25:31
Подскажите пожалуйста, нормальная практика рулить состоянием сервисов через модуль 'service', даже если на целевой машине есть systemd и можно через него управлять?

Юра
23.06.2018
06:30:07
Ну мало ли, можно как вариант фильтровать по distribution_major_version для разных ОС, но выглядит костылём. Потому предположил что через service будет логичней сделать

Юра
23.06.2018
06:35:28
Да, он умеет это. На всякий случай решил уточнить best practice. Спасибо

Юра
23.06.2018
12:04:03
Назрел такой вопрос, подскажите пожалуйста как правильно сделать. В плейбуке есть задача на добавление правила файрвола. Как правильно написать условие, чтобы на тех системах, где есть firewalld добавлялось через его модуль, а иначе через модуль iptables? Или хотя бы подскажите, копать в эту сторону? https://docs.ansible.com/ansible/latest/user_guide/playbooks_conditionals.html

Nklya
23.06.2018
12:05:25
вынести в отдельный плейбук разные добавление правил и инклудить их в зависимости от фактов

Юра
23.06.2018
12:06:40
Спасибо

Страница 496 из 625