Pavel
так он у тебя локально уже есть
Pavel
ты ж его пушил
EtoZheSlava
лол
invariance
херли он тогда не работает как надо
invariance
он че упоротый
Pavel
пулл делаешь - проверяет ёбаный хэш и вуаля - одинаковый
invariance
бля
Pavel
прибей у себя все образы
Pavel
сделай пулл
Pavel
или на другой машине попробуй
invariance
вас понял
invariance
принято
Yevhen
Кто знает, можно ли как-то управлять порядком деплоя/обновления сервисов при использовании docker stack deploy ? нужен эдакий аналог "depends_on"...
Sergey
С таким вопросами надо на йобаном
Sergey
)
Artem
И рестартует до победного то, что зависит от чего то, пока оно само не поднимется
RE
камрады привет. вопрос - кто юзал прометей для мониторинга докера - возможно ли мониторить не сам докер контейнер, а именно апликейшин в нем, допустим который экспозит порт сервиса наружу. хотя бы на уровне - живой порт или нет. дока докера пишет что пока апликейшины нельзя мониторить, только метрики самого контейнера https://docs.docker.com/engine/admin/prometheus/ Currently, you can only monitor Docker itself. You cannot currently monitor your application using the Docker target. у меня есть десяток контейнеров рассыпаных по серверам. докер стек. каждый контрейнер экспозит в оверлейную сеть порт своего микросервиса. мне надо както мониторить - живой сервис или нет. пока не было оверлея - я забиксом проверял порты. а счас забикс не видит же - все внутри сетки оверлейной мне для начала надо просто знать - живой сервис или нет и из-за того, что этот сервис внутри оверлейно сетки докера - я не могу достучаться к нему из сети хоста.
Гайрат
камрады привет. вопрос - кто юзал прометей для мониторинга докера - возможно ли мониторить не сам докер контейнер, а именно апликейшин в нем, допустим который экспозит порт сервиса наружу. хотя бы на уровне - живой порт или нет. дока докера пишет что пока апликейшины нельзя мониторить, только метрики самого контейнера https://docs.docker.com/engine/admin/prometheus/ Currently, you can only monitor Docker itself. You cannot currently monitor your application using the Docker target. у меня есть десяток контейнеров рассыпаных по серверам. докер стек. каждый контрейнер экспозит в оверлейную сеть порт своего микросервиса. мне надо както мониторить - живой сервис или нет. пока не было оверлея - я забиксом проверял порты. а счас забикс не видит же - все внутри сетки оверлейной мне для начала надо просто знать - живой сервис или нет и из-за того, что этот сервис внутри оверлейно сетки докера - я не могу достучаться к нему из сети хоста.
Как вариант поставить заббикс прокси внутрь оверлейной сети
RE
думал об этом, и потом опрашивать каждый докер контейнер в сетке пассивным способом?
RE
но как настроить этот забикс прокси сервер? ведь в забиксе это делается через веб - создать хосты, применить темплейты.
RE
и потом если рестартануть этот контейнер с забиксом - все настройки же удаляться, если база будет внутри контейнеа. или городить базу на хосте для этого забикса?
Oleg
Если самописные сервисы, то можно добавить поддержку Прометея
Гайрат
Но это если у тебя сервисы не динамичные, а создал - и какое-то время будут жить Хотя можешь задать период хранения неподдерживаемых элементов, тогда элементы данных, триггеры, графики будут сами удаляться
Oleg
С Заббиксом одна проблема - он не для динамичных сред. Если контейнеры сотнями и тысячами появляются - все плохо.
Oleg
Заббикс из коробки умеет удалять пропавшие метрики минимум через сутки
RE
Если самописные сервисы, то можно добавить поддержку Прометея
то есть надо чтото добавлять по любому? в простейшем случае Прометей, что - не умеет просто прочекать живой ли порт на нужном IP или нет?
Oleg
У нас иной раз сервисы в сварме по несколько раз на дню обновляются. Пробовал Заббиксом - печалька получается.
RE
обновляются, но не новые же создаются.
Oleg
то есть надо чтото добавлять по любому? в простейшем случае Прометей, что - не умеет просто прочекать живой ли порт на нужном IP или нет?
Мы простенький мониторинг на ноде накидали. Читает периодически через докер апи и пишет в статсд.
Гайрат
обновляются, но не новые же создаются.
Для этого и делается автообнаружение с прототипами элементов данных, триггеров
RE
у нас фиксированное кол-во докер контейнеров и следовательно - микросервисов. воти надо просто для начала видеть - живой сервис или нет. потом уже метрики буду читать с них
Гайрат
я с этой чОрной магией так и не разобрался. забил.
Она не такая чёрная, чуть подумать потыкать - и можно разобраться
Oleg
ничо не понял) это все еще в контексте прометея?
Нет, свою скрейпилку метрик запилили. К Прометею не относится
RE
не хватило времени сокрее всего. куча новых тасок. камрады - так резюмируя - может прометей делать то что мне надо или нет? если да - я продожку копать его, если нет - уж потрачу время на забикс прокси в оверленой сети
Гайрат
Я с прометеем не работал, а на заббиксе не сложно поднять систему
Гайрат
Тебе надо чекать порты просто на живучесть?
RE
да
Гайрат
Не сложно тогда
RE
типа net.tcp.service[tcp,, номер порта]
RE
забикс уже есть. просто он ослеп, так как живет на хост сети
RE
просто в случае прокси хз как без автодискавери настраивать проверки для сервисов.
RE
если прометей умеет проверят порты как мне надо - то он же через конфиг файл настраивается - его проще было бы внедрить в оверленую сеть
Vladimir
да
лучше для сетевика observium
Vladimir
имхо
RE
это чтото вроде munin
Artem
Так а не проще приложению самому отдавать метрику своего статуса, тогда все в Прометее будет
Sergey
Не проще, а правильнее
Artem
Тем более если у контейнера несколько реплик, то он чекать будет каждую реплику? И что тогда считать доступность апликейшена а данном случае?
Sergey
Любые метрики из вне приложения это костыль
Artem
Ну лучше сразу нормально делать, чем городить костыли и потом биться об грабли
Sergey
Дай я тебя обниму
Yuri
https://github.com/deslum/pyrabbit2
RE
Я пока про метрики не говорю. А просто спрашиваю как Прометей может проверить доступность порта
Yevhen
https://github.com/prometheus/blackbox_exporter
Yevhen
https://www.robustperception.io/checking-if-ssh-is-responding-with-prometheus/
Artem
Я пока про метрики не говорю. А просто спрашиваю как Прометей может проверить доступность порта
Прометей сделан в первую очередь для сбора метрик, так что от них и надо плясать, есть метрика на доступность апликейшена , то Прометей проверит, сам по себе он ничего не проверяет
Artem
Кроме доступности экспортеров
RE
Прометей сделан в первую очередь для сбора метрик, так что от них и надо плясать, есть метрика на доступность апликейшена , то Прометей проверит, сам по себе он ничего не проверяет
вот это не очень понятно. что значит "сделан для сбора метрик"? он умеет только стучаеться по http на какойто ендпоинт типа url:port/metrics ? и высасывать оттуда json с метриками?
RE
просто connect на порт сделать он не умеет простым способом? я еще не ставил его поэтому не знаю как он конфигурится. пока читаю и чтото не оч пойму - похоже весь конфиг у него в одно файле ямл и там все добы прописаны которые он делает. не так как в забиксе конечно, где практически все в гуях и мышкой делается. поэтому мне пока сложновато переключиться на новую тему
N
label-schema.org кто-то использует? и кто в чате пользует метаданные в образах? подскажите свои кейсы плз, для саморазвития интересуюсь
Artem
не не пингует, не коннектится по ssh не чекает порты
Artem
все делает экспортеры, а он только берет метрики с них
Artem
https://prometheus.io/docs/introduction/overview/
Artem
экспортеры можно писать и самому, если напишите тот который будет опрашивать порты (если такого еще нет) то он будет знать о доступности портов
Artem
но выглядеть это будет типо http_port_access=1
Artem
в виде метрики
Artem
поэтому если хотите чтобы все было по взрослому, то добавляйте в приложение метрики которые можно будет собирать и выводите туда хоть всю инфу о приложении, вплоть до среднего количества обращений и времени отклика.
Гайрат
/spam
Yaroslav
Привет!Кто сможет подсказать, докер если запускаю такой командой sudo docker run -i -t -d —env-file /home/users/onlyoffice_env onlyoffice/documentserver То образ запускается в процессах висит но через 80 порт не подключается. Если делаю перенаправление на порт 8080 docker run -i -t -d -p 8080:80 onlyoffice/documentserver Тогда через браузер открывает.Если добавляю 8080
Yaroslav
порт 80 открытый
Artem
так если хочешь на 80 порт повесить то и прокидывай на 80
Artem
-p 80:80
Artem
если он чем то другим не занят, то будеть открываться приложение
Yaroslav