«Мониторинг PostgreSQL»
Дмитрий Васильев, PostgresPro
Обзор мониторингов, плюсы и недостатки. Подробнее про новый «коробочный» self-hosted клиент для PostgreSQL для Zabbix.
Со встречи #PostgreSQLRussia в компании ЛАНИТ http://www.meetup.com/postgresqlrussia/events/227606200/
5. Идеальный мониторинг
* Сбор метрик
* Отображение полученых метрик
* Анализ полученых метрик, принятие решения
* Создание инцидента
* История по прошедшим инцидентам
6. Идеальный мониторинг
Бесконечное совершенствование:
* Успешная эксплуатация системы зависит от понимания того, какие метрики
необходимо снимать и как их мониторить.
* Понимание того что, необходимо мониторить, приходит обычно вместе с
факапом
* Ваш опыт — это знание метрик и их интерпретация
8. Munin
* Очень богатый набор метрик из коробки
* Плагины PostgreSQL
* Расширяем на любом языке
* Детализация данных оставляет желать
лучшего (realtime)
* Подходит только для снятия метрик
9. DataDog
* Представляется как сервис, не нужно
мониторить за самим мониторингом :)
* OpenSource клиент
* Удобные представления, dashboards
* К стабильности клиента есть вопросы
* Нет 'must-have' триггеров
10. NewRelic
* Представляется как сервис
* OpenSource клиент
* Удобные представления, dashboards
* Создавался изначально как мониторинг
приложения, не системы.
* Встроенный плагин PostgreSQL
11. Zabbix
* В отличие от всех остальных указаных
систем, умеет всё что нужно, но не всё
хорошо/идеально делает
* Тяжело расширяем по сравнению с
другими системами
* Есть сторонние решения для PostgreSQL
* Стандарт де-факто во многих компаниях
12. Что еще можно упомянуть?
Atop (!!!)
OKMeter.IO
Riemann
PCP.IO
14. OKMeter
* Про плюсы раскажет докладчик от OKMeter
* Не OpenSource клиент (пугает самовольное
обновление и завышеные привилегии)
* Linux only
* Отсутствие enterprise-версии (self-hosted)
* Слишком простое представление инцидента
— можно поучиться у DataDog
15. Riemann
* Фреймворк для мониторинга: Monitoring as a
code :)
* Весело и прикольно делать клиента
мониторинга
* Весело и прикольно делать интеграции с
дополнительными сервисами: opentsdb и т.д.
* Весело и прикольно делать дашбоард через
поток на ws, или на чем напишешь
16. PCP.IO
* Богатое количество метрик
* Есть плагин PostgreSQL
* Честный realtime
* По заверениям расширяемая система
* Linux-only
* Несмотря на заявления RedHat проект почти
не развивается
21. Mamonsu **
** Слоненок который держит за хвост большого слона
https://github.com/postgrespro/mamonsu
* Активный zabbix agent
* Снимает также метрики системы
* Кросплатформенный
* Расширяемый
22. Mamonsu: кросплатформенность
* Написан на Pure Python (2/3), не требует libpq
* Работает на linux (упакован в deb, rpm).
Метрики системы через /proc, из коробки не
требует повышеных привилегий.
* Работает на windows (as a service too), данные
через perfomace counter
* Ничего не мешает добавить еще системы, где
работает python
23. Mamonsu: расширяемость
* Есть только supervisor и плагины
* Supervisor — loop + thread.{is_alive,start()}
* Транспорт — тоже плагин
* Плагины могут предоставлять не только
метрики, но и темплейт.
24. Mamonsu plugin
Plugin может написать домохозяин каждый, достаточно описать метод run:
И график / триггер / дисковери / и т.д.
25. Mamonsu: версия 0.0.6
* Работает у нескольких клиентов на linux **
* Тестируем windows
~ 100 items
~ 30 graphs
~ 5 discovery rules
** Последний нетривиальный баг pgsql.database.size[XXXX] changed: Type of received value
[1172591968772.000000] is not suitable for value type [Numeric (float)]