
Magistr
17.02.2017
11:24:16
- name: add host to hostgroup
add_host:
name: 127.0.0.1
groups: ssp-services
это правда изврат вариант )

Mikhail
17.02.2017
11:24:26
хотелось бы ничего не править, а просто выполнить плейбук при желании для левого хоста

Magistr
17.02.2017
11:25:13
сделай копию плейбука

Google

Magistr
17.02.2017
11:25:39
у тебя же там только список ролей надеюсь ?

Mikhail
17.02.2017
11:25:58
да я могу и хост временно добавить, но бредово как-то это

jagga
17.02.2017
13:09:29
динамический список смотри

Dmitry
17.02.2017
14:26:25
в инвентори же можно добавить хост прямо при выполнении плейбука, например
а, понял вопрос

Mikhail
17.02.2017
17:03:58
в принципе конечно ерунда это, но удобно было бы

Hackru
17.02.2017
17:10:21
пасаны
а есть аналог для file rsync --delete ?
короче, задача, таскать roles/rolename/files/* в директорию на хосте но при этом стирать имеющиеся файлы

Konstantin
17.02.2017
17:11:57

Hackru
17.02.2017
17:13:16
http://docs.ansible.com/ansible/synchronize_module.html

Google

Hackru
17.02.2017
17:13:19
оно шоле

Dmitry
17.02.2017
17:25:38

Mikhail
17.02.2017
17:30:28

Dmitry
17.02.2017
17:30:43
тогда ничего

Mikhail
17.02.2017
17:31:31
и для хоста, которого нет в инвентори
в общем пока два варианта или временно добавить хост в инвентори (или инвентори переопределить) или сгенерить плейбук

Dmitry
17.02.2017
17:38:11
я бы скрипт написал

Mikhail
17.02.2017
17:39:24
ну в следующий раз как наткнусь на это - напишу

Dmitry
17.02.2017
17:40:01
-i понимает скрипт, который выплюнет что нужно
но вот как ему в командной строке там аргументы передать :)
чтобы скрипт понял $1 $2 с хостом и группой :)

Mikhail
17.02.2017
17:41:19
а что скрипт-то должен выдать? и в каком виде это надо в -i пихнуть?
по-моему самый простой вариант - это генерить одноразовый инвентори и его подсунуть

Dmitry
17.02.2017
17:42:11
блин
ну прочтет уже кто-нить про dynamic inventory скрипт? :)
он должен выдать json с группой и хостом
http://docs.ansible.com/ansible/dev_guide/developing_inventory.html
в -i передается путь к нему

Mikhail
17.02.2017
17:45:11
хм, это наверное и есть вариант )
спс

Dmitry
17.02.2017
17:45:15
в принципе верно выше написано, можно намутить в шелле алиас, который распарсит свои аргументы и вызовет все что :)

Mikhail
17.02.2017
17:45:41
ага

Google

Sander
17.02.2017
18:01:45
Всем привет

Ruslan
17.02.2017
18:09:58
Привет

Sander
17.02.2017
18:13:58
хотел бы посоветоваться, не знаю подойдет ли для таких задачь ansible.
так как ничего другого я не знаю )
но использовать инструменты не по назначению тоже не хочу.
Ruslan
подойдет ли ansible для этого решения?
-------
- у меня есть на prod.servere контейнер, который отвечает за backup базы данных.
- у меня таких серверов много и бекапы запускаются по cron-у.
- бекапы заливаются на s3, но держать доступы открытыми на prod servere я не хочу
----
поэтому думаю создать отдельный сервер с ansible, который будет перебрасывать пароли и открыть доступ на s3, только во время заливки бекапа на s3.
все это будет запускатся каждый день по cron, все что ему нужно, перебросить доступ к s3 bucket в контейнер и запустить его.
----------------
в случаи какой-нибудь ошибки, отправить письмо на email.
чтоб я знал, если на какой-то сервер не выполнился backup базы данных.
----------------
как подобное реализовать? и подойдет ли ansible.


Hackru
17.02.2017
18:29:19
Я бы дженкинсом воспользовался
Но под ним можно и ансибл

Sander
17.02.2017
18:31:38
я jenkins ток 1 раз пробывал нет такой практики хорошей.
можно же запустить, таски чтоб он для каждого сайта делал каждый день в определенное время?

Hackru
17.02.2017
18:32:19
Можно

Sander
17.02.2017
18:32:29
а логи и результаты? успешно или не успешно
---
а gitlab ci? подойдет?

Sander
17.02.2017
18:33:02
но навряд ли получится логировать, он же просто контейнер запустит и все
контейнер должен как-то сам уведомление послать, если ошибка случилась
ansible может только сообщить если не удалось подключиться по ssh и тоже что-то сделать
@hackru

Matvey
17.02.2017
18:37:41
Gitlab CI не умеет запускать джобы по расписанию
лучше jenkins с ansible-плагином

Sander
17.02.2017
18:39:51
ехх понятно
а можно как-то без jenkins?
у меня просто все на gitlab не хочется плодить.

Google

Sander
17.02.2017
18:40:51
например если ansible не смог приконектиться к серверу, то в случаи ошибки, чтоб он письмо отправил мне на почту

Matvey
17.02.2017
18:40:51
я вот тоже не хочу, и ищу решение
если найду - отпишусь)
есть еще Ansible Semaphore, посмотри

Sander
17.02.2017
18:41:35
да мне ui не нужен вообще
пока что в голову приходит, запустить все по крону
просто боюсь сделать не правильно
потом жалеть буду

Admin
ERROR: S client not available

Matvey
17.02.2017
18:42:48
можно и кроном, если его достаточно
крон умеет письма слать, а ансибл умеет создавать крон-джобы

Hackru
17.02.2017
18:43:33
Почитай статью на хабре, серебренная пуля системного администрирования, про дженкинс
На самом деле, штука классная для запуска скриптов

Sander
17.02.2017
18:44:49
да я знаю, но блин не хочу я учить jenkins.
куда мне gitlab уже использую
и туда же jenkins

Hackru
17.02.2017
18:45:06
Там учить нечего

Sander
17.02.2017
18:45:12
целая пляска с техналогиями

Hackru
17.02.2017
18:45:24
Пятиклассник разберётся

Sander
17.02.2017
18:45:33
да не хочу я, за последнее время столько информации что ...

Google

Sander
17.02.2017
18:45:52
еще сервак с jenkins держать

Matvey
17.02.2017
18:46:07
можно же в контейнере развернуть

Sander
17.02.2017
18:46:15
я хочу запустить вначале систему, так чтоб оно работало нормально.
но потом допиливать, улучшать ее

Matvey
17.02.2017
18:46:30
ну тогда крон

Sander
17.02.2017
18:47:04
---
я охренею же, ansible, docker, реплекции, бекапы, всякие свистелки ...
настройка nginx, iptables, тюнинг сервера, php, nodejs, go
до дурки не далеко

Matvey
17.02.2017
18:47:28
женкинс если очень утрированно тот же самый крон, только продвинутей

Sander
17.02.2017
18:48:00
я jenkins месяца так 3-4 назад пробывал, play framework какой-то ставил, но уже не очень помню как там и что

Matvey
17.02.2017
18:48:37
там yum install jenkins, создал жобу, настроил расписание и отчеты, и все

Sander
17.02.2017
18:49:04
да не хочу я пока что ничего лишнего еще учить, да и времени нет.
если надо будет jenkins, я заюзаю
но что оно мне даст?

Matvey
17.02.2017
18:49:27
значит крон

Sander
17.02.2017
18:49:34
запуск ansible по расписаню, это может сделать cron.
что еще? мне надо чтоб была отправка письма с логами, если в ansible случилась ошибка, например не смог приконектиться к серверу
---
все остальные ошибки, которые могут случиться во время бекапа, будет отправлять мне на почту, сам контейнер с prod сервера.

Matvey
17.02.2017
18:50:47
у ansible есть модуль mail, который умеет слать письма

Sander
17.02.2017
18:51:21
а как ansible, сказать отправить notify : "mail_error"
если случилась ошибка
?

Matvey
17.02.2017
18:52:06
регистрируешь вывод через register, отдаешь его в следующей итерации через модуль mail