@ru_devops

Страница 973 из 999
Dmitry
20.09.2018
08:47:37
А вот тяжесть или легкость

Navern
20.09.2018
08:48:17
А вот тяжесть или легкость
Если ты пьяный не разтбрался в коде - значит тяжелый))

А вообще я думаю тяжелый может значить(если оперировать таким термином), что у микросервиса несколько зон ответственности

То есть он делает разные вещи

Google
Евгений
20.09.2018
08:50:06
Ну это всё условно же

Ivan
20.09.2018
08:50:56
Вот вам бы это всё обсуждать в чате хайлоада, где присутствую спикеры

Dmitry
20.09.2018
08:51:01
Вообще-то, это все и признаки монолита. Разве нет?
Небольшая команда и четкий овнер?

Евгений
20.09.2018
08:51:04
Две функции в апи уже можно сказать, что сервис делает разные вещи. Всё-таки по-моему важно один ли сервис одинёшенек или есть ещё 80 таких же

Bogdan (SirEdvin)
20.09.2018
08:51:41
Небольшая команда и четкий овнер?
Небольшая команда - это очень условно. У нас вот команда из 5-6 человек, но монолит.

Navern
20.09.2018
08:51:50
А так философские понятия на все можно натянвть

Евгений
20.09.2018
08:53:04
Но две функции могут делать одно и тоже старое апи и новое
Я имел в виду две разные функции. Создать объект/удалить объект

Нет, у вас микросервис )
Один микросервис!

Google
Bogdan (SirEdvin)
20.09.2018
08:53:16
Нет, у вас микросервис )
Я смотрю на этот код, который мы не сможем переписать месяцов за 6 и как-то это не очень похоже на микросервис

Евгений
20.09.2018
08:53:31
Почему?

Bogdan (SirEdvin)
20.09.2018
08:53:37
Как по мне, если сервис нельзя переписать меньше чем за месяц он не очень то и микро

Евгений
20.09.2018
08:54:09
Bogdan (SirEdvin)
20.09.2018
08:54:35
Окей, тогда еще докину, что он реализует несколько (много) бизнес-процессов.

Dmitry
20.09.2018
08:54:38
В остальных докладах были ещё и другие признаки

Bogdan (SirEdvin)
20.09.2018
08:54:42
А микросервис вроде так делать не должен)

Евгений
20.09.2018
08:54:55
Например команда, которая писала сервис перепишет за месяц, а какая-нибудь левая будет полгода въезжать чо происходит

Александр
20.09.2018
08:55:38
Или имеется ввиду логика?

Navern
20.09.2018
08:55:45
Александр
20.09.2018
08:56:06
Лолшто!
То што написано жи

Евгений
20.09.2018
08:56:22
Те писать сразу не говно код?)
Ну, если бы это было возможно, то спрос на ops был бы в сотни раз меньше

Bogdan (SirEdvin)
20.09.2018
08:57:14
Код устаревает, если что. А управлять техническим долгом так, что бы компенсировать устаревание вроде как очень сложно.

Dmitry
20.09.2018
09:00:09


Navern
20.09.2018
09:01:27
ура, сингл респонсибилити))

зона ответственности)

Google
Александр
20.09.2018
09:03:40
С козырей зашел

Dmitry
20.09.2018
09:04:40
С козырей зашел
Сомневаешься - читай

Иван
20.09.2018
09:53:58
Добрый день! есть кто докеры нагиосом мониторит? можете подсказать как это можно нормально сделать. а то я уже перепробовал куча разных скриптов, и ничего нормально не работает вот этот локольно показывает всё, но с нагиоса нахер шлет( https://gist.github.com/ekristen/11254304

Иван
20.09.2018
10:01:54
Alexander
20.09.2018
10:02:53
if [ "x$(which docker)" == "x" ]; then echo "UNKNOWN - Missing docker binary" exit 3 fi

Stanislav
20.09.2018
10:03:39
а от какого пользователя запускается скрипт, если его вызывает нагиос? Проверьте path у этого пользователя.

Alexander
20.09.2018
10:03:55
nagios ALL=(root) NOPASSWD: /etc/nagios/plugins-custom/check_docker.sh

у меня так

в скрипте docker ps

Stanislav
20.09.2018
10:04:45
ну скорее всего в path нет путей до бинарников докера.

Иван
20.09.2018
10:12:58
ну скорее всего в path нет путей до бинарников докера.
делаю sudo su - nagios -s /bin/sh docker ps -a и он показывает запущенные контейнеры

nagios ALL=(root) NOPASSWD: /etc/nagios/plugins-custom/check_docker.sh
а если добавляю докер в sudo и перед командой sudo то ругается nrpe что не может прочитать данные

ну скорее всего в path нет путей до бинарников докера.
если на хосте выполняю скрипт от пользователя nagios то отрабатывает нормально

Navern
20.09.2018
10:17:20
и посмотри чо и как

Иван
20.09.2018
10:19:16
в скрпт вмажь env|grep PATH
локально от nagios и nrpe выдает PATH=/usr/local/bin:/bin:/usr/bin а с сервера c nagios ничего, так же UNKNOWN - Missing docker binary

Navern
20.09.2018
10:22:20
локально от nagios и nrpe выдает PATH=/usr/local/bin:/bin:/usr/bin а с сервера c nagios ничего, так же UNKNOWN - Missing docker binary
я говорю, вставь это в проверку саму. в тот сш скрипт. Вставь в ошибку вывод which docker

Google
Navern
20.09.2018
10:22:26
подебажь нормально

Иван
20.09.2018
10:25:51
Navern
20.09.2018
10:27:10
извиняюсь, но я что то не понимаю как это сделать(
печаль) ну у тебя есть твой скрипт проверки, модифицируй его, чтобы увидеть как нагиос с ним работает. Ты скрипты вообще дебажишь? умеешь в это? можно из скрпта проверки отладочную инфу в лог писать. Нагиос дернет скрипт, а ты чекнешь лог

Ivan
20.09.2018
10:27:13
У @count0ru есть опыт мониторинга микросервисов заббиксом

Admin
ERROR: S client not available

Stanislav
20.09.2018
10:27:16
но я смотрю вы пользователю шелл указываете. и при удаленном вызове скрипта sudo требует реального tty попробуйте поиграться с этим флагом: requiretty If set, sudo will only run when the user is logged in to a real tty. When this flag is set, sudo can only be run from a login session and not via other means such as cron(8) or cgi-bin scripts. This flag is off by default.

делаю sudo su - nagios -s /bin/sh docker ps -a и он показывает запущенные контейнеры
ну и я бы типа так пробовал su - nagios -c "docker ps -a" -s /bin/sh

Иван
20.09.2018
10:41:07
Stanislav
20.09.2018
10:41:56
теперь пробуйте с сервера с нагиосом тоже самое сделать.

как там нагиос внешние скрипты вызывает?

я просто давно уже с ним не работал.

Alexander
20.09.2018
11:02:14
cat /etc/nagios/plugins-custom/check_docker.sh #!/bin/bash docker_name=$1 check_docker=docker ps | awk '{print $2}' | grep -x "$docker_name" | wc -l if [[ $check_docker = 1 ]]; then echo "OK,$docker_name is up!" exit 0 else echo "CRITICAL,$docker_name is down" exit 2 fi ..... nagios ALL=(root) NOPASSWD: /etc/nagios/plugins-custom/check_docker.sh

так работает

Alexander
20.09.2018
11:04:01
command[check_docker_container]=sudo /etc/nagios/plugins.d/check_docker.sh "container"

Navern
20.09.2018
11:08:47
одна из подстав такого скрипта

что если у тебя контейнеры называются bla и bla_bla

Google
Navern
20.09.2018
11:09:15
то падение контейнера бла ты не заметишь

так лучше работать должно

Navern
20.09.2018
11:11:35
а, да, я пропустил) значит проблема ток в моем варианте

docker ps --format '{{.Names}}' кстати так нет потребности в авк

Alexander
20.09.2018
11:12:23
да я уже понял

Дмитрий
20.09.2018
12:30:42
Доброго дня. Вопрос: есть исинга2. есть вендо-хост. использую nscp-local-uptime для получения аптайма. не подскажите как в темплейте хоста переопределить критикал и варнинг ? читаю https://docs.nsclient.org/reference/windows/CheckSystem/#check_uptime и не фига не понимаю ( пример темплейта хоста: object Host "server.ru" { check_command = "hostalive" vars.ping_address = "10.192.168.0.1" vars.client_endpoint = name vars.os_type = "windows" vars.cheked__host = true } object Endpoint "server.ru" { } object Zone "server.ru" { endpoints = ["server.ru"] parent = "master" }

Vladimir
20.09.2018
12:42:58
Какой смысл отвечать на твои вопросы людям в чате, если бы ты мог уже дважды документацию прочитать?

Vladimir
20.09.2018
12:45:33
@terrifilch короче я бы настоятельно посоветовал бы быть добрее и вежливее к людям, это полезно как для тебя как личности, так и для твоей карьеры

ptchol
20.09.2018
12:49:33
Понял
а вот группы, это уже "высокоуровневый контейнер". тут главное не запутаться.

в группах, ты уже описываешь создание группы путём создания правила assign, тоесть ты её применяешь по правилам (как раз таки наличие каких то значений у сервисов \ хостов)

но к примеру само значение аля host.vatrs.groups ты можешь задать в темплейте ) Тоесть навесив темплейт ты как бы добавляешь хост в группу которая описана опредленными правилами ))

Navern
20.09.2018
12:57:10
Мне казалось в нагиосе трешхолды для критикал/варнинг определяются на стороне чеков?

Страница 973 из 999