@pro_ansible

Страница 568 из 625
Ruslan
04.09.2018
10:10:32
А есть у кого-нибудь плейбук с LAMPом для Wordpress под Centos?

Fedor
04.09.2018
10:10:50
в гелекси вроде бы полно их

Ruslan
04.09.2018
10:12:39
под убунту они в основном

и старые

Google
Fedor
04.09.2018
10:13:27
а там без разницы, если в роли есть по грепу yum то пойдёт. и если ставится state=latest, то тоже пойдёт.

на худший случай можно взять за основу и дописать

Ruslan
04.09.2018
10:15:25
ну лан, я так спросил, мало ли у кого есть готовый вариант

Terminator
04.09.2018
10:16:15
@Alexander_Paul будет жить. Поприветствуем!

Evgeniy
04.09.2018
11:16:36
Коллеги, столкнулся с проблемой с передачей список хостов в переменную внутрь контейнера докера. Может кто-то имел дело с такой бедой уже. discovery.zen.ping.unicast.hosts: {{ groups['servers'] }} - env роли ansible для контейнера [2018-09-04T14:05:14,752][WARN ][o.e.d.z.UnicastZenPing ] [server1] failed to resolve host ['server3']] - docker logs "discovery.zen.ping.unicast.hosts=['server1', 'server2', 'server3']", - docker inspect

возможно проблема с тем, что они в env приходят с одинарными ковычками, вместо двойных, как в доке elastic'a

bebebe
04.09.2018
11:18:19
group['servers']|join(" ")?

Evgeniy
04.09.2018
11:25:08
discovery.zen.ping.unicast.hosts: "{{ groups['servers']|join(" ") }}" here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n with_items:\n - {{ foo }}\n\nShould be written as:\n\n with_items:\n - \"{{ foo }}\"\n"}

bebebe
04.09.2018
11:25:30
ну вы оберните в {{ }}

как советует документация и warning

Vadim
04.09.2018
11:31:12
вложенные кавычки здесь принято экранировать или заменять на одинарные, вдруг увидят дети?

Evgeniy
04.09.2018
11:32:22
join(', ') вот так зашло

Andrei
04.09.2018
12:31:25
ребята, кто знает почему если через ansible запускаю tasks: - name: Get running processes shell: "ps -aef | grep -w ssh | grep -w 54320 | awk '{print $2}'" register: running_processes - debug: msg: "{{ running_processes.stdout_lines }}" то "msg": [ "26807" ] но с таким pid процесса нет, в терминале проверяю ps -aef | grep -w ssh | grep -w 54320

Google
Andrei
04.09.2018
12:32:48
нужно, чтобы следующим шагом сделать - name: "Kill previous sessions" shell: "kill -9 {{ item }}" with_items: "{{ running_processes.stdout_lines }}"

Div
04.09.2018
12:33:56
а не проще ли убить / перезапустить модулем systemd?

Andrei
04.09.2018
12:35:59
а не проще ли убить / перезапустить модулем systemd?
systemd модуль разве не сервис целиком перезапустит?

Div
04.09.2018
12:36:31
да. а у вас какая цель?

Andrei
04.09.2018
12:37:00
конкретный ssh туннель прибить

не понимаю откуда в stdout_lines какие-то левые данные

Div
04.09.2018
12:39:15
делайте debug: msg=running_processes

советую еще пошерстить маны по ssh. думаю что он все умеет без костылей на баш.

Wom
04.09.2018
12:44:37
ppl, как в конструкцию xtradb_master_node: "{{ hostvars[ groups[xtradb_nodes_group][0] ].ansible_default_ipv4.address }}" вместо ansible_default_ipv4.address, вставить ansible_{{ xtradb_bind_interface }}.ipv4.address ?

Wom
04.09.2018
12:55:23
eval?
не понял

bebebe
04.09.2018
12:55:44
это я наверное не понял, поясните что вы хотите, но другими словами?

Wom
04.09.2018
12:56:56
прописано брать дефолтный ип первого сервера группы. мне нужно брать ип с конкретного интерфейса этого же сервера. интерфейс прописан в отдельной переменной

Udjin
04.09.2018
13:02:43
парни, а как мне заставить ансибл динамически определять группу на которую натравлен плейбук и получить список хостов, которе в неё входят? запускаю через -l groupname у меня main.yml содержит hosts: all инвентарник - [groupname] и два хоста вот мне это в плейбуке, два хоста списком получить надо. Хостов может быть и больше

ансибл умеет такое, не?

bebebe
04.09.2018
13:07:46
Udjin
04.09.2018
13:09:44
Wom
04.09.2018
13:10:59
Google
Alex
04.09.2018
13:11:01
group_name - я руками должен писать?
да, тут имя нужной группы указывается, но м.б. можн ои через переменную передать

Udjin
04.09.2018
13:11:41
{{ ansible_play_hosts }}
опачки, щас попробую

Wom
04.09.2018
13:12:24
у вас надеюсь gather_facts: true ?
ну так почти копипаста :)

Andrei
04.09.2018
13:14:45
вангую что у вас ansible_connection=ssh и ansible показывает свой же pid по которому запускает таску
увидел это, когда убрал awk и оставил только shell: ps axu | grep 54320 | grep ssh

bebebe
04.09.2018
13:17:12
ну так почти копипаста :)
а если запустить ansible -m setup <TARGET_HOST> | sed '1s/.*/{/' | jq '.ansible_facts.ansible_en0.ipv4.address' ?

Andrei
04.09.2018
13:19:15
bebebe спасибо!

bebebe
04.09.2018
13:24:38
sed должен был удалить то что портило json... а какой у вас ansible? впрочем возвращасяь к вопросу, ansible -m setup <TARGET_HOST> | vim -R - и попробуйте найти ansible_en0

Wom
04.09.2018
13:26:20
есть и адрес у него есть

bebebe
04.09.2018
13:29:44
есть и адрес у него есть
тогда вернемся к: hostvars['localhost']['{{ 'ansible_' + iface}}'].ipv4.address вы localhost меняли? :)

и все таки напишите версию ansible, может быть она старая?

Wom
04.09.2018
13:30:47
bebebe
04.09.2018
13:31:14
дайте доступ (бггг) :D

Wom
04.09.2018
13:31:23
ok: [localhost] => { "hostvars['localhost']['ansible_en1'].ipv4": [ { "address": "192.168.3.47", "broadcast": "192.168.3.255", "netmask": "255.255.255.0", "network": "192.168.3.0" } ] }

добавляешь address - и сразу облом

bebebe
04.09.2018
13:31:54
о! в вашем ansible это list of maps

Google
bebebe
04.09.2018
13:32:30
hostvars['localhost']['{{ 'ansible_' + iface}}'].ipv4[0].address

в моем это просто map

@womchik hostvars['localhost']['{{ 'ansible_' + iface}}'].ipv4[0].address вот так должно сработать

Admin
ERROR: S client not available

Strong
04.09.2018
14:34:27
всем привет

- name: Install tomcat shell: mv "/tmp/apache-tomcat-8.5.{{ release }}* /opt/{{ instance_root }}"

fatal: [office-tomcat-test]: FAILED! => {"changed": true, "cmd": "mv \"/tmp/apache-tomcat-8.5.33* /opt/rmtr\"", "delta": "0:00:00.002745", "end": "2018-09-04 17:32:14.387734", "msg": "non-zero return code", "rc": 1, "start": "2018-09-04 17:32:14.384989", "stderr": "mv: missing destination file operand after ‘/tmp/apache-tomcat-8.5.33* /opt/rmtr’\nTry 'mv --help' for more information.", "stderr_lines": ["mv: missing destination file operand after ‘/tmp/apache-tomcat-8.5.33* /opt/rmtr’", "Try 'mv --help' for more information."], "stdout": "", "stdout_lines": []}

и копирование тоже не проходит

че он хочет

на серваке командой все ок

lav
04.09.2018
14:36:45
mv directory?

Strong
04.09.2018
14:36:56
ага или копирование

lav
04.09.2018
14:37:07
а если с -R ?

Strong
04.09.2018
14:38:48
пишет такого аргумента нет

lav
04.09.2018
14:39:39
```- name: Install tomcat shell: mv -R "/tmp/apache-tomcat-8.5.{{ release }}* /opt/{{ instance_root }}" ``` Так?

Strong
04.09.2018
14:39:43
если модуль copy то fatal: [office-tomcat-test]: FAILED! => {"changed": true, "cmd": "mv -R \"/tmp/apache-tomcat-8.5.33 /opt/rmtr\"", "delta": "0:00:00.002463", "end": "2018-09-04 17:38:17.358059", "msg": "non-zero return code", "rc": 1, "start": "2018-09-04 17:38:17.355596", "stderr": "mv: invalid option -- 'R'\nTry 'mv --help' for more information.", "stderr_lines": ["mv: invalid option -- 'R'", "Try 'mv --help' for more information."], "stdout": "", "stdout_lines": []}

Vadim
04.09.2018
14:40:02
вайлдкарды - это плохо, пнтятнеко? Их надо экранировать (а лучше убрать)

bebebe
04.09.2018
14:51:01
Google
Strong
04.09.2018
14:56:55
Почему вы не используете synchronize?
потому что когда тестировал чисто плейбуком, то все работало, добавил в роль, перестало, synchronize работает спасибо

Maksim
04.09.2018
15:19:07
Никто не сталкивался с тем что ansible при выполнении плейбука работает в LANG=C и в итоге в переменных окружения сервисов которые он запускает тое стоит LANG=C ?

началось после обновления до 2.6.3

Terminator
04.09.2018
15:25:40
@DodgeCamaro будет жить. Поприветствуем!

@goodnix будет жить. Поприветствуем!

Эдуард
04.09.2018
17:01:01
Alexander
04.09.2018
18:45:35
Слушьте, а вот лежат в role1/templates/ файлы, а я из role1/tasks к ним только по относительному пути могу обращаться? Типа ../templates/template1.j2`можно, а нельзя типа `template1.j2? Ну, вроде $PATH что-то...

Wom
04.09.2018
18:46:04
можно просто по имени

Alexander
04.09.2018
18:46:25
Надо авторам нововведения нередактируемой строки кода руки оторвать

Wom
04.09.2018
18:46:47
"назови меня просто по имени..."

Alexander
04.09.2018
18:46:53
Wom
04.09.2018
18:47:05
-vvv

Alexander
04.09.2018
18:47:56
Он в files и tasks смотрит, а в templates нет.

Wom
04.09.2018
18:47:59
Could not find or access
вот в таком формате пути указывать не надо - https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html

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