@pro_ansible

Страница 546 из 625
Fedor
13.08.2018
10:48:00
ну и может быть tmp сделан как noexec

или селинукс очень ядрёно настроен

Artem
13.08.2018
10:48:31
а есть у кого-нибудь под рукой плейбука под percona multi-master для RPM-based distro?

Google
thomas
13.08.2018
10:50:49
спасибо

Fedor
13.08.2018
10:51:02
you are welcome

Artem
13.08.2018
12:36:11
че-то я ума не приложу как ansible’ом дернуть свежеиспеченный мускул (5.7) на предмет grep 'temporary password' /var/log/mysqld.log

Constantin
13.08.2018
12:40:38
- name: Read some string from log by grep shell: grep 'temporary password' /var/log/mysqld.log register: response_grep changed_when: response_grep.stdout...

Artem
13.08.2018
12:41:16
- name: Find temporary password shell: "echo `grep 'temporary.*root@localhost' /var/log/mysqld.log | sed 's/.*root@localhost: //'`" register: mysql_root_password_temp tags: register + - name: Set new password from temporary password shell: 'mysql -e "SET PASSWORD = PASSWORD(''{{ mysql_root_password }}'');" --connect-expired-password -uroot -p"{{ mysql_root_password_temp.stdout }}"' нагуглил

Fedor
13.08.2018
12:41:53
есть файнды в ансибле

ими было бы правильнее, наверное

Constantin
13.08.2018
12:42:03
есть файнды в ансибле
Ну вот или так даже лучше

Fedor
13.08.2018
12:42:23
мало ли, что может в стдаут попасть

Maksim
13.08.2018
12:55:48
Привет. Кто использовал ansistrano в проде ?

Sergey
13.08.2018
12:56:55
А какую задачу эта зверушка должна решать?

Maksim
13.08.2018
13:00:44
Обычная задача, деплой на сервера

Nklya
13.08.2018
13:03:59
у ансибла есть модуль деплоя

Google
Sergey
13.08.2018
13:09:31
Обычная задача, деплой на сервера
Название намекает на какой-то гибрид ансибла и капистрано (рубишная балалайка, аналог фабрика питонячьего)

Maksim
13.08.2018
13:10:18
Nklya
13.08.2018
13:11:02
https://docs.ansible.com/ansible/2.5/modules/deploy_helper_module.html

Artem
13.08.2018
13:11:29
А зачем там echo ?)
в душе не знаю)

cent
13.08.2018
13:14:29
в душе не знаю)
echo `echo some` масло масляное)

Сергей
13.08.2018
13:15:20
echo `echo some` масло масляное)
фу быть таким echo $(echo some)

cent
13.08.2018
13:17:24
фу быть таким echo $(echo some)
Пропустил пероральный прием зеленочки?)

Gleb
13.08.2018
14:17:38
https://github.com/ansible/ansible/issues/31691 а поделитись воркараундом?

Terminator
13.08.2018
14:56:08
@sunxe будет жить. Поприветствуем!

Artem
13.08.2018
14:57:30
хм, а почему может не работать хендлер (старт/рестарт)?

- name: Copy .my.cnf file with root password credentials template: src=root.my.cnf.j2 dest=/root/.my.cnf mode=0600 notify: - restart mysql TASK [percona : Copy .my.cnf file with root password credentials] ******************************************************************************************************************************************************************************************************************************************************************************** ok: [percona1] ok: [percona2] ok: [percona0] и все, след шаг уже валится из-за стопнутого мускула

Дмитрий
13.08.2018
14:58:32
Подскажите, делаю всю роль под рутом, а один таск мне нужно выполнить под текущим пользователем. Как это сделать? Можно поставить become_user на эту таску, но как сделать когда пользователь зараннее не известен?

Artem
13.08.2018
14:58:50
# cat ../handlers/main.yml --- - name: restart mysql service: name=mysql state=restarted

Fedor
13.08.2018
15:06:11
если там то, что надо - то вполне.

если юзер задаётся, например, в инвентори, например, как ansible_user=, его можно выцепить чем-то типа vars.ansible_user или как-то так.

не помню дерева этого

ни у кого нет на примете роли, чтоб с дженкинсом поиграться?

Google
Дмитрий
13.08.2018
15:09:17
вот ansible_user_id лучше подходит, это пользователь которым коннектишься по ssh

Fedor
13.08.2018
15:09:29
?

Дмитрий
13.08.2018
15:15:29
?
Оказалось что для моего кейса достаточно become: no

Artem
13.08.2018
15:29:26
есть варианты?)

bebebe
13.08.2018
15:30:10
Особо нет

Artem
13.08.2018
15:30:43
ну оно и понятно)

ну вот… ставлю Percona-XtraDB-Cluster-57 - стартую - нет временного пароля в логе… это пиздец какой-то

Fedor
13.08.2018
15:36:37
а вручную если повторить, появляется?

именно по инструкции

Terminator
13.08.2018
15:40:42
@andreybelyak будет жить. Поприветствуем!

Andrey
13.08.2018
15:48:11
скажите пожалуйста, я использую роль https://github.com/Vinelab/ansible-supervisor чтобы поставить supervisor, роль включена как dependencies в meta/main.yml мой роли программного компонента (без supervisor он не имеет смысла, поэтому указана в зависимости, а не отдельно) Настройки всех запускаемых программ передаются как переменная supervisor.programs В процессе стало понятно, что так передавать эти настройки неудобно, так как у компонента они громоздкие, получается нечитаемо. Если бы можно было просто ей скормить готовый конфиг было бы удобнее. Как вариант я думаю сделать import_role с пустым списом программ, потом скопировать конфиг, потом дернуть хендлер роли чтобы перечитались настройки. Но мне такое решение кажется громоздким, но отказаться от роли я не могу, т.к. установка на centos громоздкая и делать ее самому не вариант. У меня философский вопрос: я что-то неправильно спроектировал или роль недостаточно хорошо продумана в смысле гибкости настроек?

ad1
13.08.2018
15:50:37
Artem
13.08.2018
15:50:57
да вот нет

ad1
13.08.2018
15:52:26
как-то чинил такое

вроде

cat /var/log/mysqld.log |grep generated здесь нет?

Artem
13.08.2018
15:54:31
ну нет же)

ad1
13.08.2018
16:00:58
она вообще стартанула(перкона)? в конфиге какой лог прописан?

Artem
13.08.2018
16:12:11
стартанула, да, и путь тот же

Google
Artem
13.08.2018
16:13:28
хм, теперь есть, странно

TASK [percona : Echo temp pass] ****************************************************************************************************************************************************************************************************************************************************************************************************************** ok: [percona0] => { "msg": "yP7oa_Xaf#i." } ok: [percona1] => { "msg": "c8ofDrInDU;V" } ok: [percona2] => { "msg": "n,lwuNs6.f.R" }

Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[4653]: /usr/bin/mysql-systemd: line 140: kill: (4651) - No such process Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[4653]: ERROR! mysqld_safe with PID 4651 has already exited: FAILURE Aug 13 19:37:20 percona0.cloud.servers.com systemd[1]: mysql@bootstrap.service: control process exited, code=exited status=1 Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[5094]: WARNING: mysql pid file /var/run/mysqld/mysqld.pid empty or not readable Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[5094]: ERROR! mysql already dead Aug 13 19:37:20 percona0.cloud.servers.com systemd[1]: mysql@bootstrap.service: control process exited, code=exited status=2 Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[5124]: WARNING: mysql pid file /var/run/mysqld/mysqld.pid empty or not readable Aug 13 19:37:20 percona0.cloud.servers.com mysql-systemd[5124]: WARNING: mysql may be already dead Aug 13 19:37:20 percona0.cloud.servers.com systemd[1]: Failed to start Percona XtraDB Cluster with config /etc/sysconfig/mysql.bootstrap. -- Subject: Unit mysql@bootstrap.service has failed крутейшая перкона… даже стартануть не смогла

Admin
ERROR: S client not available

Paul
13.08.2018
17:01:37
коллеги, подскажите, можно ли в name подсунуть {{ item }}?

Sergey
13.08.2018
17:04:06
коллеги, подскажите, можно ли в name подсунуть {{ item }}?
можно, но it depends (ты же про то, что будет выведено на экран при вызове таски?)

Paul
13.08.2018
17:04:15
да, именно про это

типовое: - name: "install {{ item }}" apt: name: "{{ item }}" with_items:

Sergey
13.08.2018
17:05:08
Тогда так: тупо с with_items не работает, не трать время.

?))))

Paul
13.08.2018
17:05:30
хреново. Спасибо. )

Sergey
13.08.2018
17:05:58
пожалуйста. но если вставишь переменную либо на loop перепишешь... ?

Vadim
13.08.2018
17:06:14
коллеги, подскажите, можно ли в name подсунуть {{ item }}?
можно - https://github.com/openshift/openshift-ansible/blob/master/playbooks/aws/openshift-cluster/build_ami.yml#L11

Paul
13.08.2018
17:10:02
какая интересная логика. Где-то работает – а где-то нет

Sergey
13.08.2018
17:13:41
какая интересная логика. Где-то работает – а где-то нет
здесь не простой хэш передаётся, а с вложениями.

поэтому, видимо, работает. но чаще, если честно, нет.

Paul
13.08.2018
17:14:06
в with_items вообще не хэш. Но мысль я понял

спасибо

мне просто хотелось понять, в какие моменты этот велосипед работает, а в какие нет

Sergey
13.08.2018
17:14:24
да, там список

Google
Paul
13.08.2018
17:14:38
вообще, на мой взгляд, это баг ансибла. точнее не баг, а нелогичное поведение

Sergey
13.08.2018
17:14:58
да, факт.

интересующий тебя кусок, кстати, находится тут: res['_ansible_item_label'] = templar.template(label)

то есть Jinja-шаблонизация вызывается. как говорится, "да, но нет".

это, если что, ansible/lib/python2.7/site-packages/ansible/executor/task_executor.py

Vadim
13.08.2018
17:19:48
вообще, на мой взгляд, это баг ансибла. точнее не баг, а нелогичное поведение
а, ты хочешь весь dict туда засунуть? Преврати в строку сначала

Paul
13.08.2018
17:20:34
а, ты хочешь весь dict туда засунуть? Преврати в строку сначала
базово with_items - это dict как я понимаю. то, что в документации описывается, в разделе simple loops

Sergey
13.08.2018
17:20:54
то бишь список

а для перебора пар "ключ-значение" как раз и есть отдельный with_dict

ad1
13.08.2018
17:21:40
А какая причина была, что стартануть не могла?

Alexandr
13.08.2018
21:15:13
подскажите пожалуйста, кто пробовал из динамического inventory сгенерировать статический файл? Меня конкретно интересует GCD gce.py

Andrey
13.08.2018
22:31:03
подскажите пожалуйста, как принято генерировать конфиги для сервисов из yaml данных или класть шаблон и использовать template? в старых книжках и примерах я видел шаблонизацию конфиг файлов, а вот сейчас в ролях постоянно встречаю генерацию конфига на основе переменных, без шаблона. Есть какое-то устоявшееся мнение как стоит делать?

Constantin
13.08.2018
22:31:28
Ребят, кто деплоил NodeJS приложение, вы не замечали, что у вас таск с модулем npm, в котором нужно собирать и билдить нативные модули уходит в себя? node-gyp просто жрет CPU и MEM, долго, пробовал час медитировать над ним. Причем, если зайти и запустить руками npm i --only=production все ок собирается

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