29
Мойра - система алертинга Алексей Ларьков, СКБ Контур

Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Embed Size (px)

Citation preview

Page 1: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Мойра - система алертинга

Алексей Ларьков, СКБ Контур

Page 2: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Хранение

Визуализация

Алертинг

Graphite

Мониторинг

Page 3: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Графит - это ...очень простой протокол

<path> <value> [timestamp]

Moira.checker.errors.vm-moira 0.0

Метрика

Page 4: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Графит - это ...удобный API

?target=sumSeries(Moira.checker.errors.*)

функция паттерн

~ 100 функций

Page 5: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 6: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

ТриггерОписывает условия уведомления через

Графитовский target

Лимиты состояний● WARN● ERROR● NODATA

Page 7: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Alerting GraphiteAPI

● Периодический pull

● Сложный target

Обычный алертинг на базе графита

Page 8: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 9: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 10: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 11: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 12: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 13: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 14: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур
Page 15: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Микросервисная архитектура

Redis

API Checker Notifier CacheUI

Page 16: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

● DB - Redis

● UI - без серверного кода

● REST API

Page 17: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Мойра - не зависит от доступности графита

Сервис Graphite relay

Graphite cache

Moira cache

Метрики

Page 18: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Cache

Метрики в формате графита

Redis

Сохраниние метрики в базу и уведомление по pub/sub

Page 19: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Cache

Метрики в формате графита

Redis

Сохраниние метрики в базу и уведомление по pub/sub

checkermaster

Подписка на метрики

Page 20: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Cache

Метрики в формате графита

Redis

Сохраниние метрики в базу и уведомление по pub/sub

checkermaster

Подписка на метрики Добавление триггера на проверку

Page 21: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Cache

Метрики в формате графита

Redis

Чтение паттернов

каждую секунду

Сохраниние метрики в базу и уведомление по pub/sub

checkermaster

Подписка на метрики Добавление триггера на проверку

Page 22: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Redis

checkermaster Добавление

триггера на проверку

Page 23: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Redis

checkermaster Добавление

триггера на проверку

checker workers

Загрузка данных триггера и вычисление состояния

Page 24: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Redis

checkermaster Добавление

триггера на проверку

checker workers

Загрузка данных триггера и вычисление состояния

Состояние изменилось?

Page 25: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Redis

checkermaster Добавление

триггера на проверку

checker workers

Загрузка данных триггера и вычисление состояния

Если да, то сохраняем уведомление

Состояние изменилось?

Page 26: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Redis

checkermaster Добавление

триггера на проверку

checker workers

Загрузка данных триггера и вычисление состояния

Сохраняем состояние

Если да, то сохраняем уведомление

Состояние изменилось?

Page 27: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

notifier

mail

sms

slack

pushover

Redis

Читаем уведомления

Fail?

Повторяем через

минутуДа

Page 28: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

30 проектов, 70 пользователей1 М уникальных метрик

20 К метрик в секунду550 триггеровХватает 2 виртуалки

Page 29: Moira: Realtime alerting, Алексей Ларьков, СКБ Контур

Спасибо!moira.readthedocs.org

gitter.im/moira-alert/moiragithub.com/moira-alert