Vladimir
06.03.2018
10:29:07
если для алертинга то чаще всего достаточно хостовых метрик для каких-то per host алертов
но per-service уже нет
Andor
06.03.2018
10:29:50
Google
Andor
06.03.2018
10:30:02
не самое удобное решение чуваки выбрали конечно
Vladimir
06.03.2018
10:43:20
Evgeny дальше проблема в том, что алертить по хостам можно (но неудобно, потому что хочется пер сервис, а это уже требует чтобы метрики не зависели от хоста), а прогнозы строить нельзя, потому что вот сдох сервер, его заменили - метрики пропали, данные поменялись
Evgeny
06.03.2018
10:45:40
Andor
06.03.2018
10:47:56
в блокчейн
микросервисный блокчейн метрик
Vladimir
06.03.2018
10:53:26
типичный пример - человек в каком-нибудь скриптовом языке вместо имени каунтера шлет адрес каунтера
и у тебя каждый инсанс приложения шлет тонны треша
или просто люди решили что UUID клиента нужно указать в метрике
а клиентов десятки тысяч )
новых
Andor
06.03.2018
10:56:50
чота я короче посмотрел на то что я делаю
и понял что переизобретаю prometheus-operator
Google
Andor
06.03.2018
10:58:36
кто им пользовался? какие впечатления?
sum (container_spec_memory_limit_bytes{id=~"/kubepods/.*"}) / sum (machine_memory_bytes{kubernetes_io_role="node"}) возвращает мне 44%
а sum(kube_pod_container_resource_limits_memory_bytes) / sum(machine_memory_bytes{kubernetes_io_role="node"})возвращает мне 27%
понятно что где-то что-то не то считаю
навскидку не знаете, что?
Bogdan (SirEdvin)
06.03.2018
12:48:46
Вроде же разные сущности, нет?
Andor
06.03.2018
12:49:02
а вроде одна и та же
по-разному экспортируемые
первое - из cadvisor, второе из kube-state-exporter
66271
06.03.2018
12:58:13
Andor
06.03.2018
12:59:57
да понятно что надо смотреть и сравнивать
может я прост что-то очевидное пропустил
Slach
06.03.2018
14:46:26
Andor
06.03.2018
14:47:26
оказалось что это хитрая логика работы burstable подов в кубере, надо отфильтровывать по id!~"/kubepods/burstable.*"
ну или научиться правильно их обрабатывать
насколько проще стало жить с kube-state-metrics
sum(kube_pod_container_resource_requests_memory_bytes) by (node) / sum(kube_node_status_capacity_memory_bytes and on (node) kube_node_labels{label_kubernetes_io_role="node"}) by (node)
и всё красиво сразу показывает
и для cpu:
sum(kube_pod_container_resource_requests_cpu_cores) by (node) / sum(kube_node_status_capacity_cpu_cores and on (node) kube_node_labels{label_kubernetes_io_role="node"}) by (node)
Andrey
06.03.2018
16:28:35
да с этими "контейнерами" та ещё фигня, у меня есть центось а эта зараза при рестарте контейнера меняет его id и id сетевых интерфейсов и вот их лови каждый раз, прям хоть коллектд патчь :)
Google
Andor
06.03.2018
16:28:51
зачем их знать ваще?
ну то есть с одной стороны неразберихи стало много, а с другой - да и норм всё
Andrey
06.03.2018
17:36:42
IMS – не является в компании системой мониторинга, мониторинг отдельная тема, другое подразделение, другое ПО.
Статистика нагрузки и использования ресурсов собирается IMS-ом и используется в процессе прогнозирования и планирования мощностей (Capacity Planning) ИТ-инфраструктуры.
типа а тут я немного вышиваю, о кровавом ынтырпрайзе, это МТС на хабре про свою инвенторилку поведал
Pablo
06.03.2018
18:26:08
Alexander
06.03.2018
18:32:21
Andrey
06.03.2018
18:33:50
так оно в общем принципиально скорее сломано чем верно, так как под каждый рестарт виртуалки новая метрика или продолжение чьейто старой, словарь и вот это всё внешними скриптами, так костыль на время
Bogdan (SirEdvin)
06.03.2018
18:36:53
Для меня откровенная загадка, почему все Тулы собирают по id, а не по name
Pablo
06.03.2018
18:37:20
Bogdan (SirEdvin)
06.03.2018
18:38:59
С платными я не знаком из-за особенностей работы
Cadvisor, collectd и zabbix так делают
Vladimir
06.03.2018
18:42:18
Andrey
06.03.2018
18:42:26
ну оно скорее на уровне где они собирают имя не очень видно
Vladimir
06.03.2018
18:42:47
И стоит просто не давать людям возможности метриками убить прод
Bogdan (SirEdvin)
06.03.2018
18:51:53
Andrey
06.03.2018
18:53:39
ну что ж... остаётся порадоваться за гугля и опечалится состоянием опенсорца :)
Phil
06.03.2018
19:42:38
Слушайте, а какие-нибудь типовые дашборды на node_exporter покидайте мне, пожалуйста. Ну рекомендуете которые конечно. диск, xfs, la, память, сеть, что там ещё бывает
Nklya
06.03.2018
19:44:18
На сайте графаны не?
Bogdan (SirEdvin)
06.03.2018
19:51:40
На сайте графаны есть почти под любой популярный экспортер, да
Phil
06.03.2018
20:06:14
Ну вот xfs в экспортере есть, а в дашбордах не нашел
Ну и хотелось бы сейчас на поглазеть а там зоопарк
Google
Pablo
06.03.2018
21:25:17
Sergey
06.03.2018
21:31:07
Кстати, если кто помнит, был у меня вопрос с 401 ошибками. В общем, таким образом графана сообщает, что SQLite не подходит ей в качестве базы. Стоило заменить SQLite на PostgreSQL - всё сразу магическим образом исчезло.
Vladimir
06.03.2018
22:22:51
Phil
06.03.2018
23:05:24
Нихрена с прометеем и джобами не понял, и лейблами. Это влияет на графану. Если там вот эта хрень как приборная доска - не дай бог у вас с джоба на джоб что-то переехало и оно об этом не знает
Алексей
06.03.2018
23:15:41
джобы довольно стабильны. врятли они перезежают
Phil
06.03.2018
23:23:09
ну я игрался. я кстати так и не понял что это. дашборды многие прибиты гвоздями к названию джобов
Алексей
06.03.2018
23:29:06
да. я не знаю зачем так делают
я поле джоб вообще ставлю во время дискаверинга
Роман
07.03.2018
09:43:03
Коллеги, а есть в прометее метрика, которая показывает статус ноды кубернетеса: Ready или NotReady? Или для этого какой-то особый экспортер нужен?
Andor
07.03.2018
09:43:32
Бери kube-state-metrics
Роман
07.03.2018
09:44:47
Andor
07.03.2018
09:45:10
ищи по kube_node_...
Прямо щас посмотреть не могу, через полчасика напомни,если сам не найдёшь к тому времени
Vasyl
07.03.2018
10:22:08
господа, а можете объяснить несколько нубских вопросов по графиту? В связке graphite-carbon. Как понимаю, сам карбон шлет метрики memUsage, metricsRecieved, cpuUsage и тд?
Роман
07.03.2018
10:32:51
Andor
07.03.2018
10:33:10
хз, щас гляну
sum(kube_node_status_condition) by (condition, status)
вот там есть condition="Ready"
кажется это то что тебе надо
{condition="Ready",status="false"}
{condition="Ready",status="true"}
{condition="Ready",status="unknown"}
Google
Роман
07.03.2018
10:39:05
Ну да. То, что нужно. У меня почему-то есть метрики с меткой "app", и без неё. Поэтому их в 2 раза больше. Спасибо.
Andor
07.03.2018
10:39:35
ты возможно релейбелингом её добавляешь сам
из аннотаций кубера
One
07.03.2018
12:11:22
тогда когда заваливается один из них, то полностью не слепнешь
Andor
07.03.2018
12:14:35
хм, почему-то мне куберовские метрики для некоторых нод возвращают что requests > limits
sum(kube_pod_container_resource_limits_cpu_cores) by (node) / sum(kube_pod_container_resource_requests_cpu_cores) by (node)
есть и больше единицы и меньше единицы
Andrew
07.03.2018
12:17:04
Добрый день господа
подскажите пожалуйста
как вы мониторите smart через prometheus?
Paul
07.03.2018
12:18:56
raid-ы так же
Andrew
07.03.2018
12:20:41
textcollector + cron
выглядит как очень крутой костыль
всегда помнить что в кроне что-то должно работать чтоб быть уверенным что ты узнаешь о поломке
Andor
07.03.2018
12:20:54
зачем помнить?
руками что ли эти кроны пишешь?
Andrew
07.03.2018
12:22:57
даже если не руками
если какимнить ансиблом
а кто-то начнет править ансибл
и сломается мониторинг
мне что
гадать это крон не работает? или smartctl недоступно?