Size: a a a

Церковь метрик

2021 March 10

b

blkmrkt in Церковь метрик
Vladimir Smirnov
пик популярности графита пришелся год на 15
Теперь я вижу популярно стало опрашивать как это Прометей делает. Но неужели никаких плюсов у statsd протокола нет перед прометеем, в плане простоты?
источник

AS

Aleksey Shirokikh in Церковь метрик
blkmrkt
Теперь я вижу популярно стало опрашивать как это Прометей делает. Но неужели никаких плюсов у statsd протокола нет перед прометеем, в плане простоты?
конечно есть. смотри про монарх, держи в голове викторию
источник

b

blkmrkt in Церковь метрик
Vladimir Smirnov
Есть секунды
А из графаны можно как-то подсунуть время старт-стоп изнутри самого графика, а не целого дешборда?)
источник

VS

Vladimir Smirnov in Церковь метрик
blkmrkt
А из графаны можно как-то подсунуть время старт-стоп изнутри самого графика, а не целого дешборда?)
ЕМНИП графана покажет то что ей графит вернет. Но вот я не помню функций переписывающих время, их несложно написать опять же )
источник

b

blkmrkt in Церковь метрик
Aleksey Shirokikh
конечно есть. смотри про монарх, держи в голове викторию
про монарх впервые слышу, гугл на monarch metrics выдает сайт из нулевых
источник

b

blkmrkt in Церковь метрик
Vladimir Smirnov
ЕМНИП графана покажет то что ей графит вернет. Но вот я не помню функций переписывающих время, их несложно написать опять же )
Ох окей спс, не буду заморачиваться тогда)
источник

VS

Vladimir Smirnov in Церковь метрик
blkmrkt
про монарх впервые слышу, гугл на monarch metrics выдает сайт из нулевых
источник

VS

Vladimir Smirnov in Церковь метрик
Aleksey Shirokikh
конечно есть. смотри про монарх, держи в голове викторию
и я б сказал что что у графита, что у прома и виктории есть некоторые сходства в подходах, но не во всем
источник

vk

vladimir kolobaev in Церковь метрик
blkmrkt
Теперь я вижу популярно стало опрашивать как это Прометей делает. Но неужели никаких плюсов у statsd протокола нет перед прометеем, в плане простоты?
Хочу сказать что StatsD не прибит гвоздями к Графиту, и тому как пример куча statsd-exporter
источник

vk

vladimir kolobaev in Церковь метрик
Что же касается самого Графита, то от него остался протокол и обширная библиотека функций.
Вся обвязка переписана на go, а в место whisper файлов используется ClickHouse, с репликацией, шардидирование и кучей движков для таблиц под хранение тегов, имен метрик, значений и т.п.
источник

vk

vladimir kolobaev in Церковь метрик
Ну а StatsD в свою очередь позволяет агрегировать данные на лету, и это дает возможность хранить только агрегаты без массива сырых данных, которые нужно считать на стороне сервера-метрик (без разницы какого).
У нас к примеру сейчас обрабатывается 1 миллиард StatsD событий в минуту.
источник

b

blkmrkt in Церковь метрик
vladimir kolobaev
Что же касается самого Графита, то от него остался протокол и обширная библиотека функций.
Вся обвязка переписана на go, а в место whisper файлов используется ClickHouse, с репликацией, шардидирование и кучей движков для таблиц под хранение тегов, имен метрик, значений и т.п.
Яж вашими микросервисами и пользуюсь с лета 😊

Не стал заморачиваться с прометеем тк у нас не контейнеры и не хотелось морочаться с опрашиванием каждого процесса который запускается по крону на какой угодно машине, причем по несколько копий. Про пуш гейтвей в курсе, но тут вообще все плюсы отпадают по сравнению с вашим сетапом который оч просто скалируется.
источник

b

blkmrkt in Церковь метрик
vladimir kolobaev
Ну а StatsD в свою очередь позволяет агрегировать данные на лету, и это дает возможность хранить только агрегаты без массива сырых данных, которые нужно считать на стороне сервера-метрик (без разницы какого).
У нас к примеру сейчас обрабатывается 1 миллиард StatsD событий в минуту.
а сколько ЧПУ под bioyino у вас задействовано?
источник

b

blkmrkt in Церковь метрик
точнее ядер*
источник

vk

vladimir kolobaev in Церковь метрик
blkmrkt
а сколько ЧПУ под bioyino у вас задействовано?
У нас для отказоустойчивости подняты 3 мастер-ноды (bioyino). По 56 ядер в каждом. Утилизированы они по 15% в пики по CPU. Помимо них, у нас на всех кубовых нодах с сервисами, живет по 1 statsd-агенту, который принимает весь поток событий с этой конкретной ноды, предагрегирует что может, и раз в секунду отправляет семпл данных по TCP, на мастер ноды. Вот на них утилизация примерно 10% - 15% от 1 ядра.
источник

b

blkmrkt in Церковь метрик
vladimir kolobaev
У нас для отказоустойчивости подняты 3 мастер-ноды (bioyino). По 56 ядер в каждом. Утилизированы они по 15% в пики по CPU. Помимо них, у нас на всех кубовых нодах с сервисами, живет по 1 statsd-агенту, который принимает весь поток событий с этой конкретной ноды, предагрегирует что может, и раз в секунду отправляет семпл данных по TCP, на мастер ноды. Вот на них утилизация примерно 10% - 15% от 1 ядра.
Ого! А нод сколько всего у вас?

И самый главный вопрос: как у вас правила роллапов сделаны? Я отчаялся и просто напилил регулярок в rollup.xml, а так же доделал наш статсд клиент чтоб он добавлял суффикс в зависимости от типа метрики: .gauge, .sum, .avg.
источник

b

blkmrkt in Церковь метрик
Недавно еще была хвалебная статья про Кликхауз на HN, мне ее двое коллег прислали и такие: вау да действительно ты хорошую штуку установил! 🤣
источник

vk

vladimir kolobaev in Церковь метрик
blkmrkt
Ого! А нод сколько всего у вас?

И самый главный вопрос: как у вас правила роллапов сделаны? Я отчаялся и просто напилил регулярок в rollup.xml, а так же доделал наш статсд клиент чтоб он добавлял суффикс в зависимости от типа метрики: .gauge, .sum, .avg.
Под Графит 12 серверов, под StatsD 3. Но это вообще копейки по сравнению с booking, у них еще год назад серверов 300 под Графитом было.
источник

vk

vladimir kolobaev in Церковь метрик
rollup правила у нас очень простые:
        <default>
               <function>avg</function>
               <retention>
                       <age>0</age>
                       <precision>30</precision>
               </retention>
               <retention>
                       <age>3024000</age>
                       <precision>300</precision>
               </retention>
       </default>
источник

[K

[IPT] Dmitry Knyazev in Церковь метрик
Roman Khavronenko
Cмотрели https://victoriametrics.github.io/Single-server-VictoriaMetrics.html#prometheus-setup ?
Метрики отвечающие за remote_write экспортятся с префиксом prometheus_remote_storage. Посмотрите еще детали здесь https://github.com/prometheus/prometheus/issues/5803
Со стороны VM настройте мониторинг и удостоверьтесь что достаточно ресурсов для процессинга запросов от прома https://victoriametrics.github.io/Single-server-VictoriaMetrics.html#monitoring
спасибо, похоже на

It is recommended upgrading Prometheus to v2.12.0 or newer, since previous versions may have issues with remote_write.
источник