Matvey
strategy: free пробовал, она подходит только для hosts: all
Matvey
по умолчанию идет linear, то есть последовательная
Sergey
В любом случае спасибо за помощь. :)
Фу таким быть. Вместо того, чтобы чувак всем говорил, что есть русские чуваки, лучше всех знающие ансибл, он всем будет говорить, что есть русские резко посылающие чуваки. Ты этого хотел добиться?
manefesto
да я с ним уже поговорил
Sergey
strategy: free пробовал, она подходит только для hosts: all
всё зависит от задачи. если фактически запуск можно разделить на несколько независимых запусков - раздели внешними средствами. в общем случае у тебя между ролями могут быть зависимости, или сами роли написаны не идемпотентно, и это никак изнутри самого ансибла не отследить. идеальный вариант - твой собственный плагин стратегии, который учитывает все особенности окружения.
Aleksei
Коллеги, нужен совет Хочу начать тестить свои playbook'и с помощью Molecule. Есть люди, которые пытались его сдружить с VMWare? И есть ли в этом смысл (может просто стоит контейнер поднимать и внутри него проводить тестирование)? З.Ы. Контейнеризация пока на рабочем месте не используется
Aleksei
*тестировать свои roles
Aleksey
ну так я же
bebebe
Коллеги, нужен совет Хочу начать тестить свои playbook'и с помощью Molecule. Есть люди, которые пытались его сдружить с VMWare? И есть ли в этом смысл (может просто стоит контейнер поднимать и внутри него проводить тестирование)? З.Ы. Контейнеризация пока на рабочем месте не используется
лучше контейнер поднимать. но все зависит от задачи, у меня есть интеграциионый тест плейбуки который поднимает 6 виртуалок, настраивает между ними хитро сети и эмулирует ряд сетевых нагрузок (создание tun туннеля, и прочие пинги)
Aleksei
ну так я же
Как ты это сделал? В доке не указано его в качестве провайдера
Nklya
Вторая молекула умеет поднимать инстансы везде, где ансибл умеет
Aleksei
И да, почему лучше контейнер? Не огребу я из-за этого грабли ( с каким-нибудь selinux, к примеру)? =)
bebebe
Роли пока простенькие (разверни проект с PHP, поставь zabbix агент на машинки и т.д.). Для начала ничего серьёзного брать не собирался
ээм, вы эти роли против серверов будете накатывать? если да, то лучшим тестом будет легковесная виртуалка.
Aleksei
ээм, вы эти роли против серверов будете накатывать? если да, то лучшим тестом будет легковесная виртуалка.
Именно. Виртуалки на VMWare. И быстрым пробегом по доке немного напугало то, что в качестве провайдера я его там не нашёл
bebebe
Именно. Виртуалки на VMWare. И быстрым пробегом по доке немного напугало то, что в качестве провайдера я его там не нашёл
я именно в виртуалке не тестировал, но рядом с репозиторями ansible видел рядом Vagrant файлы для тестирование плейбук, достаточно часто встречаются
bebebe
https://github.com/kubernetes-incubator/kubespray/blob/master/Vagrantfile вот например
Nklya
И да, почему лучше контейнер? Не огребу я из-за этого грабли ( с каким-нибудь selinux, к примеру)? =)
потому что контейнер поднять очень просто и докер на билд агенте поставить для тестов нет проблем
Nklya
по сравнению с полноценными виртуалками
Aleksei
https://github.com/metacloud/molecule/issues/1292
Спасибо. Покопаюсь на досуге! ^^
Aleksey
Как ты это сделал? В доке не указано его в качестве провайдера
полный конвеер можно у меня в сборке посмотреть https://code.getnoc.com/noc/ansible_deploy/tree/microservices
Aleksey
тут сценарии https://code.getnoc.com/noc/ansible_deploy/tree/microservices/molecule/default
Aleksey
тут https://code.getnoc.com/noc/ansible_deploy/blob/microservices/.gitlab-ci.yml сборочник
Aleksey
в целом схема работает но я огреб очень странную сетевую проблему которую пытаюсь зафиксить 4 день
Aleksey
Из минусов. Не могу цвета в ансибле. Долгий старт виртуалки. Около 2,5 минут. Но весь прогон 25 Так что не критично
bebebe
генерацию /tmp/temporary_ssh_key можно один раз сделать и таскать потом как артифакт в стейджи, а потом прибить
bebebe
ну это такое, вообще мне нравится ваш ci, у меня примерно такой же подход
Aleksey
Спасибо
Dmitry
господа, еще про раскатку докеров ансиблом
Dmitry
как мне подождать пока докер поднимется?
Dmitry
прежде чем выполнить следующий шаг
Dmitry
могу взять wait_for, но пока только в голову приходит там тупо подождать
Dmitry
попробую подождать 3306
Vitaly
или docker.sock
Dmitry
(речь про контейнер с мускулом)
Dmitry
или docker.sock
ммм, вариант
Dmitry
я правда думаю, что между появлением имени контейнера в сокете и его поднятием, все равно уйдет существенное время
Vitaly
ну если контерйнер с mysql то да, почему не через сетевой порт
Vitaly
тем более номар порта явно в переменной задан
Yury
ну сделай docker ps | grep -i running | grep container
bebebe
как мне подождать пока докер поднимется?
https://blog.newrelic.com/2016/08/24/docker-health-check-instruction/
bebebe
чисто модулем опросить не получится https://github.com/ansible/ansible/issues/33622 еще не сделали
Dmitry
https://blog.newrelic.com/2016/08/24/docker-health-check-instruction/
хелчеки хорошая вещь, но я не готов ими обмазываться
bebebe
а как вы тогда хотите определить что абстрактный workload у вас ready to use?
bebebe
безотносительно ansible или нет
Dmitry
Dmitry
если порт ап, то скорее всего оно едет
Dmitry
и да, оно вот уже заработало
Nklya
А еще можно sleep сделать))
bebebe
если порт ап, то скорее всего оно едет
далеко не обязательно, если например mysql в HA кластере galera, или по другим интересным причинам впрочем ладно, я бы советовал делать wait_for пока mysql не подключится клиентом
Dmitry
если будет падать - буду думать и усложнять
George
Как правильно делать handler'ы на ансибле (несколько тасков в handler'е, флаги и т.д.): https://medium.com/opsops/using-block-for-handlers-in-ansible-a55f45b62a96
Roman
Roman
Подскажите как с этим жить
bebebe
поменять цветовую схему терминала на более светлую?
Nklya
как перестать постить скриншоты?
matt
и начать постить фото экрана
Ruslan
ignore_errors: yes
Vadim
Roman
это телеграмм так жмет) исправился: https://paste.fedoraproject.org/paste/l8C7cS9IS6SS-jBFrelrPQ
Nklya
ух ты, федора тоже запилила свой пастебин
bebebe
это телеграмм так жмет) исправился: https://paste.fedoraproject.org/paste/l8C7cS9IS6SS-jBFrelrPQ
у вас в темплейте встречаются русские символы?
bebebe
и попробуйте поменять имя таски на "copy mysql config"
Roman
да, в комментариях
bebebe
да, в комментариях
попробуйте убрать, это питоно проблема
Aleksey
@FuxGN большой вопрос в том как ко всему этому делу приделать кеши. ибо каждый раз всё качать тупо долго
Aleksey
я про тесты в вмварьке
Aleksei
я про тесты в вмварьке
Да ладно. Самое долгое - поднятие ВМ, мне кажется. Дальше уже всё должно быть быстро
Aleksey
у меня полный прогон на всё про всё 30+ минут.
Aleksey
пакетов надо с гиг
Aleksey
я конечно преувеличиваю но не на много