@pro_ansible

Страница 149 из 625
Matvey
17.02.2017
18:53:17
ну и условия в ansible тоже есть

Sander
17.02.2017
18:54:19
ошибку то да в register, а если вообще не приконектилось

где мне делать register ошибки

Matvey
17.02.2017
18:55:23
если сам ansible вернет ошибку, это упадет в крон, и он тоже умеет слать почту, только нужно локальный mta настроить

Google
Sander
17.02.2017
18:55:53
блин

то есть через крон надо что -то делать =/

какой-то геморой

что такое mta?

Matvey
17.02.2017
18:56:59
так а как еще запустить что-то по расписанию, без планировщика?

mail transfer agent, postfix там или exim

Sander
17.02.2017
18:57:13
ну крон то я запустить могу по плану

проблема с обработкой ошибок

если прямо во время коннекта случилась ошибка в ansible

Matvey
17.02.2017
18:57:51
так она упадет в лог крона

Sander
17.02.2017
18:59:39
и как мне из логов определить что там ошибка, это просто файл с текстом, без какого либо формата. ни json, ни yml

1) ansible запустил таски для запуска backups на prod серверах. 2) на 20 сервере, случилась ошибка соединения, и 20 сервер остался без бекапа. 3) ошибка упала в log file. 4) как мне отправить уведомление об ошибке? a) Единственный вариант что приходит в голову, чтоб он запускал после ansible, еще какой-нибудь python скрипт, который будет проверять пустой или не пустой log file, если не пустой отправит письмо, после отправки письма удалит log file. b) если нет лог файла, отправит сообщение, что все прошло на ура. ===================

Albert
17.02.2017
19:05:09
exit code

Google
Sander
17.02.2017
19:05:12
вот только что идея появилась, кто что думает? только надо запустить это все последовательно, скорей создать придется баш скрипт типо. ansible-playbook backup.yml python deploy_status.py

Albert
17.02.2017
19:05:15
Слышал о таком?

Sander
17.02.2017
19:06:29
ты про stdout stdin stderr?

Matvey
17.02.2017
19:06:43
не-не, там не так

там обычное письмо



Sander
17.02.2017
19:07:13
но ansible же еще никаких тасков еще не успел запустить, я не смогу ему notify выдать.

Matvey
17.02.2017
19:07:24
у меня есть крон-джоба которая курлом дергает определенный сервис, и шлет локально письма

вот на скрине можно видеть что оно не законектилось

Sander
17.02.2017
19:09:14
----------------------------- так как в итоге делать то, я расписал то как я вижу, по шагам. застрял я на логах, когда не произошел коннект к серверу.

Matvey
17.02.2017
19:10:23
пиши плейбук, делай джобу в кроне с командой ansible-playbook и все

Sander
17.02.2017
19:10:39
так это без проблем

ошибку то надо тоже как-то обрабатывать

Matvey
17.02.2017
19:10:49
в кронтабе укажи адрес куда слать письма

Sander
17.02.2017
19:11:10
вот про крон уже не понял, как он письмо отправлять будет.

если он запускает ansible playbook

и как он поймет когда что делать и что отправлять

Anatoly
17.02.2017
19:12:14
погодите, вы базу бэкапите да? у 20 сайтов? и на каждый сайт у вас свой отдельный дб-серв?

Matvey
17.02.2017
19:12:33
если хочешь заморочиться - напиши скрипт, который будет обрабатывать ошибку и разруливать условия. если не хочешь - проста забирай все письма от крона после отработки

Sander
17.02.2017
19:12:46
нет сайтов не 20, сайтов ну допустим 50, на 20 случилась ошибка не коннектится к 20.

Google
Matvey
17.02.2017
19:12:52
ну это встроенный функционал крона, слать отчеты о выполнении

Sander
17.02.2017
19:13:23
значит я не знаю cron, я умею только запускать программу через крон

окай крон будет слать письма, вы отдельную почту для этого делаете себе или как?

просто там будет свалка

Matvey
17.02.2017
19:15:26
делаешь crontab -e, пишешь MAILTO=som@mail.com, на второй строке пишешь джобу 45 9 * * * somecommand

Sander
17.02.2017
19:15:40
и какую-то систему алертов делаете, если ошибка? чтоб я каждый день не проверял письма, что там пришло. Чтоб мне приходили алерты куда-то об ошибках

Anatoly
17.02.2017
19:15:52
а как вы себе представляете причину по которой ансибл может не подключиться к хосту?

Sander
17.02.2017
19:16:08
проблема у хостера например

Matvey
17.02.2017
19:16:36
вот если уже обрабоку ошибок нужно, то это надо в умный скрипт оборачивать

Sander
17.02.2017
19:16:49
да всякое бывает, вот может быть просто что -то повисло и только ребут у сервера помочь может

Matvey
17.02.2017
19:16:49
но можно поколхозить, если лень

Anatoly
17.02.2017
19:16:52
если проблема у хостера у вас должен быть алерт и он никак не должен быть связан с ансиблон или крон таской

Matvey
17.02.2017
19:17:02
+1

Sander
17.02.2017
19:17:16
ну у хостера проблема с серавком, и поэтому не коннекится он к нему

Anatoly
17.02.2017
19:17:42
я о чем и говорю. для этого люди делают мониторинг

Sander
17.02.2017
19:17:56
...

Anatoly
17.02.2017
19:17:59
и это не задача ансибла

??Dmitry????
17.02.2017
19:17:59
https://newrelic.com

бесплатно мониторинг, держи

не благодари)

Google
Anatoly
17.02.2017
19:18:13
вот например да

Sander
17.02.2017
19:18:14
я знаю про new relic

Anatoly
17.02.2017
19:18:35
и можно в викторопс отправлять нотификейшены оттуда

Matvey
17.02.2017
19:18:37
о, это облачный или self-hosted?

Anatoly
17.02.2017
19:18:52
облачный

saas

Sander
17.02.2017
19:20:50
это все для мониторинга сервера

----

Anatoly
17.02.2017
19:21:35
вопрос доступности сервера для ансибла - это мониторинг сервера

никак иначе

Admin
ERROR: S client not available

Sander
17.02.2017
19:22:09
ansible это просто софт, стучаться будет до него другой сервер через ssh

Anatoly
17.02.2017
19:22:37
зачем?

Sander
17.02.2017
19:22:57
затем чтоб он запустил на prod сервере контейнер, который запустит dump базы и отправит на s3

Matvey
17.02.2017
19:23:10
чот сложно так

Sander
17.02.2017
19:23:17
тебе надо было с самого начало тут быть, сейчас будет сложно все это по второму кругу описывать

Anatoly
17.02.2017
19:23:43
я с самого начала читаю и охуеваю

Sander
17.02.2017
19:23:45
--- я не хочу чтоб с prod, был доступ на s3

Anatoly
17.02.2017
19:24:24
при чем тут это?

Sander
17.02.2017
19:24:27
я могу и без всего этого делать, но тогда с PROD у меня будет доступ к моему бакету на s3.

Google
Sander
17.02.2017
19:24:34
при том что я бекапы хочу хранить на s3

Anatoly
17.02.2017
19:24:42
я не про то

Sander
17.02.2017
19:24:52
а ansible, я запускаю контейнеры

скажите что не так то

помогите

Anatoly
17.02.2017
19:25:09
если у вас авторизация на с3 то при чем тут доступ до него?

Matvey
17.02.2017
19:25:29
сделай джобу в кроне и все

Anatoly
17.02.2017
19:25:41
ключи к доступу на с3 передавай в ансибл

Sander
17.02.2017
19:25:44
при том что, доступ разрешается через backup server -> который коннектится к prod serveru

ты не можешь через prod server запустить s3

ты можешь только через ssh backup server -> prod serveru подключится и ток тогда запустить s3

Anatoly
17.02.2017
19:26:17
а что делает бэкап сервер если он все равно ничего не хранит?

мы сейчас про прод дб? у 50 сайтов?

Sander
17.02.2017
19:26:44
я не хочу чтоб на prod, можно было спокойно делать все что хочешь с s3. поэтому у меня через другой сервер все это делается

Anatoly
17.02.2017
19:26:55
ты не понял

Sander
17.02.2017
19:27:07
только запускает таску, чтоб запустил backup container на prod, и перебрасыает ключи доступа.

Anatoly
17.02.2017
19:27:17
или не услышал

ладно

Sander
17.02.2017
19:27:34
давай я щяс распишу по пунткам

может быть вы мне идею подкините

Anatoly
17.02.2017
19:27:54
не для меня не надо

Sander
17.02.2017
19:27:54
или переубедите

я же не говорю что я прав

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