Upload
it-people
View
181
Download
6
Embed Size (px)
Citation preview
Мойра - система алертинга
Алексей Ларьков, СКБ Контур
Хранение
Визуализация
Алертинг
Graphite
Мониторинг
Графит - это ...очень простой протокол
<path> <value> [timestamp]
Moira.checker.errors.vm-moira 0.0
Метрика
Графит - это ...удобный API
?target=sumSeries(Moira.checker.errors.*)
функция паттерн
~ 100 функций
ТриггерОписывает условия уведомления через
Графитовский target
Лимиты состояний● WARN● ERROR● NODATA
Alerting GraphiteAPI
● Периодический pull
● Сложный target
Обычный алертинг на базе графита
Микросервисная архитектура
Redis
API Checker Notifier CacheUI
● DB - Redis
● UI - без серверного кода
● REST API
Мойра - не зависит от доступности графита
Сервис Graphite relay
Graphite cache
Moira cache
Метрики
Cache
Метрики в формате графита
Redis
Сохраниние метрики в базу и уведомление по pub/sub
Cache
Метрики в формате графита
Redis
Сохраниние метрики в базу и уведомление по pub/sub
checkermaster
Подписка на метрики
Cache
Метрики в формате графита
Redis
Сохраниние метрики в базу и уведомление по pub/sub
checkermaster
Подписка на метрики Добавление триггера на проверку
Cache
Метрики в формате графита
Redis
Чтение паттернов
каждую секунду
Сохраниние метрики в базу и уведомление по pub/sub
checkermaster
Подписка на метрики Добавление триггера на проверку
Redis
checkermaster Добавление
триггера на проверку
Redis
checkermaster Добавление
триггера на проверку
checker workers
Загрузка данных триггера и вычисление состояния
Redis
checkermaster Добавление
триггера на проверку
checker workers
Загрузка данных триггера и вычисление состояния
Состояние изменилось?
Redis
checkermaster Добавление
триггера на проверку
checker workers
Загрузка данных триггера и вычисление состояния
Если да, то сохраняем уведомление
Состояние изменилось?
Redis
checkermaster Добавление
триггера на проверку
checker workers
Загрузка данных триггера и вычисление состояния
Сохраняем состояние
Если да, то сохраняем уведомление
Состояние изменилось?
notifier
sms
slack
pushover
Redis
Читаем уведомления
Fail?
Повторяем через
минутуДа
30 проектов, 70 пользователей1 М уникальных метрик
20 К метрик в секунду550 триггеровХватает 2 виртуалки
Спасибо!moira.readthedocs.org
gitter.im/moira-alert/moiragithub.com/moira-alert