Asomir
15.05.2018
07:26:16
Maksim
15.05.2018
07:26:26
postgresql_users:
- name: user_cbdocs
password: cdba1
вот тут нет
это же типа массив
Google
Maksim
15.05.2018
07:26:46
эээ
Artem
15.05.2018
07:27:30
# TYPE DATABASE USER ADDRESS METHOD
local all zabbix ident
local all postgres ident map=supervisor
local all all password
host all all 127.0.0.1/32 password
host all all 0.0.0.0/0 password
Maksim
15.05.2018
07:27:30
а чо не
postgresql_users:
name: user_cbdocs
password: cdba1
и
environment:
PGPASSWORD: "{{ postgresql_users.password }}"
Crypt
15.05.2018
07:27:33
Asomir
15.05.2018
07:28:38
эээ
дефиса?
в любом случае, он выдаёт ошибку, в которой понятно, что он понимает, что есть такое postgresql_users[0].password
Crypt
15.05.2018
07:30:09
Если так то UNBELIEVEABLE
А тут кстати пишет, что опцию -u не схавал, попробуй так же, только вместо неё PGUSER вариаблю передать
Если на -d ругаца будет, то просто psql database_name
Asomir
15.05.2018
07:42:16
Stannis
15.05.2018
07:46:13
парни, как-то можноу указать минус одну группу из all ?
groups.all
Crypt
15.05.2018
07:47:18
Google
bebebe
15.05.2018
07:48:26
Asomir
15.05.2018
07:48:42
Stannis
15.05.2018
07:49:07
В роли использую такую конструкцию
в темплейте не рабит
bebebe
15.05.2018
07:49:52
Stannis
15.05.2018
07:50:02
слшиком много (
bebebe
15.05.2018
07:53:50
слшиком много (
тогда проверяйте таким способом
{% for host in groups.all:!opentsdb %}
{% if host in not groups['opentsdb'] %}
....
Stannis
15.05.2018
07:54:03
bebebe
15.05.2018
07:54:31
идея!
Спасибо
вы только в следующий по другому описывайте свой вопрос, что бы я не гадал, что вам именно в темплейте нужно использовать
Stannis
15.05.2018
07:55:04
bebebe
15.05.2018
07:56:47
и да, при таких телодвижениях настоятельно советую использовать 2.5.0.0, там была проведена БОЛЬШАЯ оптимизация по работе с переменными в темлпейте.
на 2.4.x у меня генерация темплейта пробегающего по всем группам занимала от 3 минут, в 2.5, около 15 секунд
https://github.com/ansible/ansible/issues/33259
Stannis
15.05.2018
08:10:48
Asomir
15.05.2018
08:11:55
вдруг кому понадобится. сработало вот в таком виде:
- name: Execute sql script
shell: 'PGPASSWORD={{ postgresql_users[0].password }} psql -d db -U user_db -h localhost -f /usr/pgsql-9.6/bin/db.sql'
Матвей
15.05.2018
09:04:06
Всем привет, кто нить реализовывал параллельный деплой на разные хосты, разные роли. к примеру, 5 хостов - 5 ролей. Сейчас все выполняется последовательно. А хочется все и сразу.
Maksim
15.05.2018
09:08:03
http://docs.ansible.com/ansible/latest/user_guide/playbooks_async.html
https://medium.com/@ibrahimgunduz34/parallel-playbook-execution-in-ansible-30799ccda4e0
Nazar
15.05.2018
09:54:50
Матвей
15.05.2018
09:59:29
да, как то нативно не получается, можно одну роль на несколько серверов ставить, или несколько ролей на один сервер
Google
Матвей
15.05.2018
10:00:11
получается несколько плейбуков делать надо с одной ролью
Sergey
15.05.2018
10:18:19
всё уже придумано до нас
Матвей
15.05.2018
10:20:32
strategy: free пробовал, она подходит только для hosts: all
по умолчанию идет linear, то есть последовательная
Sergey
15.05.2018
10:21:11
В любом случае спасибо за помощь. :)
Фу таким быть. Вместо того, чтобы чувак всем говорил, что есть русские чуваки, лучше всех знающие ансибл, он всем будет говорить, что есть русские резко посылающие чуваки. Ты этого хотел добиться?
Maksim
15.05.2018
10:21:48
да я с ним уже поговорил
Sergey
15.05.2018
10:23:14
strategy: free пробовал, она подходит только для hosts: all
всё зависит от задачи. если фактически запуск можно разделить на несколько независимых запусков - раздели внешними средствами. в общем случае у тебя между ролями могут быть зависимости, или сами роли написаны не идемпотентно, и это никак изнутри самого ансибла не отследить. идеальный вариант - твой собственный плагин стратегии, который учитывает все особенности окружения.
Alexey
15.05.2018
18:31:10
Коллеги, нужен совет
Хочу начать тестить свои playbook'и с помощью Molecule. Есть люди, которые пытались его сдружить с VMWare? И есть ли в этом смысл (может просто стоит контейнер поднимать и внутри него проводить тестирование)?
З.Ы. Контейнеризация пока на рабочем месте не используется
*тестировать свои roles
Алексей
15.05.2018
18:32:41
ну так я же
bebebe
15.05.2018
18:33:25
Alexey
15.05.2018
18:34:14
ну так я же
Как ты это сделал? В доке не указано его в качестве провайдера
Nklya
15.05.2018
18:36:21
Вторая молекула умеет поднимать инстансы везде, где ансибл умеет
Alexey
15.05.2018
18:36:21
И да, почему лучше контейнер? Не огребу я из-за этого грабли ( с каким-нибудь selinux, к примеру)? =)
bebebe
15.05.2018
18:36:27
Alexey
15.05.2018
18:38:00
bebebe
15.05.2018
18:38:37
Google
bebebe
15.05.2018
18:39:22
https://github.com/kubernetes-incubator/kubespray/blob/master/Vagrantfile вот например
Nklya
15.05.2018
18:40:11
по сравнению с полноценными виртуалками
Алексей
15.05.2018
18:40:56
Alexey
15.05.2018
18:44:14
Алексей
15.05.2018
18:44:18
тут сценарии https://code.getnoc.com/noc/ansible_deploy/tree/microservices/molecule/default
тут https://code.getnoc.com/noc/ansible_deploy/blob/microservices/.gitlab-ci.yml сборочник
в целом схема работает но я огреб очень странную сетевую проблему которую пытаюсь зафиксить 4 день
bebebe
15.05.2018
18:47:48
Алексей
15.05.2018
18:49:43
Из минусов. Не могу цвета в ансибле. Долгий старт виртуалки. Около 2,5 минут. Но весь прогон 25 Так что не критично
bebebe
15.05.2018
18:49:47
генерацию /tmp/temporary_ssh_key можно один раз сделать и таскать потом как артифакт в стейджи, а потом прибить
Алексей
15.05.2018
18:50:27
bebebe
15.05.2018
18:50:51
ну это такое, вообще мне нравится ваш ci, у меня примерно такой же подход
Алексей
15.05.2018
18:52:46
Спасибо
Dmitry
16.05.2018
13:08:03
господа, еще про раскатку докеров ансиблом
как мне подождать пока докер поднимется?
прежде чем выполнить следующий шаг
Google
Dmitry
16.05.2018
13:08:54
могу взять wait_for, но пока только в голову приходит там тупо подождать
Vitaly
16.05.2018
13:12:13
Dmitry
16.05.2018
13:12:16
попробую подождать 3306
Vitaly
16.05.2018
13:12:31
или docker.sock
Dmitry
16.05.2018
13:12:33
(речь про контейнер с мускулом)
я правда думаю, что между появлением имени контейнера в сокете и его поднятием, все равно уйдет существенное время
Vitaly
16.05.2018
13:14:46
ну если контерйнер с mysql то да, почему не через сетевой порт
тем более номар порта явно в переменной задан
Yury
16.05.2018
13:15:23
ну сделай docker ps | grep -i running | grep container
bebebe
16.05.2018
13:17:53
чисто модулем опросить не получится
https://github.com/ansible/ansible/issues/33622
еще не сделали
Dmitry
16.05.2018
13:19:10
bebebe
16.05.2018
13:19:42
а как вы тогда хотите определить что абстрактный workload у вас ready to use?
безотносительно ansible или нет
Dmitry
16.05.2018
13:22:00