FAQ для Церкви Метрик. v 0.1.4 (last update 14 Dec 2017)
VSКанал: https://t.me/metrics_ru
Про InfluxDB
Q: Я хочу взять InfluxDB чтобы запилить X
A: Не надо.
Q: Но он же такой хороший, вот про него сколько сказано крутого
A: Это маркетинг. Не ведитесь.
Q: А какие у него проблемы? Вот я в него начал отправлять 20 метрик в секунду и он отлично рабоатет!
A: Вот краткий и неполный список проблем на момент версии 1.4 (применимо и к более младшим):
1. Стабильность. Периодически падает и теряет данные.
2. Скорость. Заявленное в маркетинговых бумажках касается не постоянного рейта, а спайков. "Show tag keys from all" на средней базе может положить все.
3. Потребление ресурсов . Сожрать 256ГБ RAM, закусить 320GB свопа и все равно упасть по OOMу - легко (в момент 6и часового запуска).
4. Платная кластеризация.
5. Частые breaking changes. За 3 года сменили 5+ движков, периодически выкатывают фичи непонятно зачем сделанные, например сделали ifql.
6. Безалаберность при подготовке релизов. Например как они ломали поддержку Прометея в телеграфе 1.3.2 (замена символов не попадающих под [a-z], https://github.com/influxdata/telegraf/issues/2937). В целом недостаточное тестирование релизов.
7. Не самосогласованные утилиты экспорта и импорта из базы - если вы что-то экспортировали через cli, то импортировать обратно файлик не прокатит. restore из backup полностью заменяет всю метаинформацию о базах. Селективности и merge не завезли.
Про Zabbix
Q: Почему Zabbix говно? Я вот пользуюсь и мне норм
A: По множеству причин:
1. Реляционные базы данных не подходят для time-series. Когда даже плохие системы тянут сотни тысяч точек в секунндну, заббиксу становится уже плохо.
2. Zabbix отвратительно мастштабируется.
3. Он не вписывается в современные концепции мониторинга (многомерные метрики, точнее теги, мониторинг по метрикам в первую очередь).
4. Он не подходит для работы с короткоживущими метриками, например из докера.
5. См. его bugtracker и список Feature Request'ов. Все важное из него давно реализуется другими системами мониторинга, но не заббиксом.
6. Как вишенка на торте - особо отвратительный интерфейс в духе "привет 90ые"
В церкви строжайще запрещено обсуждать заббикс. Если очень хочется поговорить про заббикс - https://t.me/ZabbixPro
Q: Что использовать вместо InfluxDB и Zabbix?
A: Graphite + Moira/Bosun/баш скрипты или Prometheus
Про Graphite
Q: Раз Graphite такой клевый, почему его все не используют?
A: Потому что он тоже говно. А все потому что:
- Он очень любит I/O, делает много мелких IOPS при работе с диском.
- Он не очень преспособлен под мониторинг короткоживущих сущностей (нет адекватной поддержки тегов), нет метаданных.
- Тяжел в плане администрирования (single-server решение с кластеризацией где-то сбоку и набором странных скриптов для управления всем)
- Оригинальный написан на питоне, поэтому еще и адски медленный (пользуйтесь по возможности https://github.com/go-graphite и https://github.com/lomik/go-carbon или https://github.com/lomik/carbon-clickhouse)
- Слишком многое есть в альтернативной реализации, включая несколько видов совместимых хранилищ, но из скоторых почти все работает не очень хорошо.
Про Prometheus
Q: Может тогда Prometheus - серебряная пуля?
A: И тоже нет. У него два существенных недостатка:
- Нет возможность вешать Action на Alarm'ы
- Из коробки нет долговременного хранилища
Про Cacti
Q: Почему Cacti говно?
A: Краткий список собственно почему:
1. rrd под капотом
2. как следствие первого пункта, невозможность самому, внятно, управлять аггрегацией метрик
3. нулевая масштабируемость
4. pooler модель сбора метрик
5. околонулевая возможность автоматизации (т.е. она есть, но чтобы ее настроить до вменяемого состояния нужно потратить уйму времени)
6. прожорливость до iops, даже со всякими boost плагинами
7. нет вменяемых дашбордов
8. заточен в основном под сетевые девайсы - мониторить им сервера клауды и прочие контейнеры мазохизм
Q: Почему тогда ее еще не закопали?
A: Потому что все еще торт! Ну а на самом деле все-таки неплохо мониторит сетевые девайсы, многое для сети есть из коробки, логика отображения устройств в виде дерева хорошо ложиться в голову менеджеров и прочего руководящего состава и они ее любят.