SlideShare a Scribd company logo
1 of 31
Download to read offline
Использование
VictoriaMetrics
в стеке Prometheus/Grafana
Alex 🐱 Chistyakov
TL;DR
- https://github.com/VictoriaMetrics/VictoriaMetrics#pro
metheus-setup и все заработало!
- github.com/alexclear/vagrant-prometheus-lab
2
Новости
- Я перешел на ansible-galaxy и requirements.yml вместо
git submodules, как вы и просили
3
Новости
- Я перешел на ansible-galaxy и requirements.yml вместо
git submodules, как вы и просили
- (github.com/alexclear/vagrant-prometheus-lab)
4
Соцопрос
- Важный вопрос про семью (автор - не я)
5
Соцопрос
- Важный вопрос про семью (автор - не я)
- Terraform или Vagrant? (здесь рассказчик должен
осветить плюсы и минусы каждого из вариантов)
6
Почему недостаточно Prometheus
- Хотим хранить метрики дольше, чем 15 дней
7
Почему недостаточно Prometheus
- Хотим хранить метрики дольше, чем 15 дней
- Хотим хранить метрики дольше, чем 15 дней, более
эффективно, чем это делает сам Prometheus
8
Почему VictoriaMetrics
- Модель хранения данных как у ClickHouse
9
Почему VictoriaMetrics
- Модель хранения данных как у ClickHouse
- VictoriaMetrics - это TSDB, а не просто прослойка
между облачным хранилищем и Prometheus (?)
10
Почему VictoriaMetrics
- Модель хранения данных как у ClickHouse
- VictoriaMetrics - это TSDB, а не просто прослойка
между облачным хранилищем и Prometheus (?)
- Это продукт с открытым исходным кодом
11
Почему VictoriaMetrics
- Модель хранения данных как у ClickHouse
- VictoriaMetrics - это TSDB, а не просто прослойка
между облачным хранилищем и Prometheus (?)
- Это продукт с открытым исходным кодом
12
Преимущества VictoriaMetrics
- Бесшовная интеграция (надо изменить четыре строчки
в конфигурационных файлах) 👏
13
Как оценить загрузку серверов?
- mean/median/95th percentile показателя (по всей
серверной группе)
14
Как оценить загрузку серверов?
- Disk util %
15
Как ”на глаз” провалидировать VM?
- Посмотреть график для Prometheus
- Переключиться на VictoriaMetrics
- Сравнить визуально
16
🐞
- Тот же график, что и выше, но в VM
17
Преимущества VictoriaMetrics
- Очень быстрая скорость реакции на дефекты 👏
- (https://github.com/VictoriaMetrics/VictoriaMetrics/issu
es/55)
18
Преимущества VictoriaMetrics
- Размер на диске! 👏
- 15 дней Prometheus - 4.6 GiB
19
Преимущества VictoriaMetrics
- Размер на диске! 👏
- 15 дней Prometheus - 4.6 GiB
- 10 дней VictoriaMetrics - 527.0 MiB
20
Что насчет отказоустойчивости?
- Вы должны выбрать что-то одно
21
Что насчет отказоустойчивости?
- Вы должны выбрать что-то одно
- Я выбираю shared nothing
22
Что насчет отказоустойчивости?
- Вы должны выбрать что-то одно
- Я выбираю shared nothing
- Поэтому инстанса будет два (независимых)
- Или три (в военное время или на АЭС)
23
Что насчет масштабируемости?
- Есть clustered configuration (это sharding, а не HA)
24
Что насчет масштабируемости?
- Есть clustered configuration (это sharding, а не HA)
- Я не пробовал и планирую только в исследовательских
целях (не забыть рассказать, почему)
25
Как делать alerting?
- Пока при помощи Prometheus, дальше Александр
обещал что-нибудь придумать
26
Как улучшить?
- Поставить retention у Prometheus не 15 дней, а сутки
27
Как улучшить?
- Поставить retention у Prometheus не 15 дней, а сутки
- Добиться того, чтобы Prometheus не писал на диск
вообще (на самом деле нет)
28
Как оно устроено внутри?
- Пока не знаю
29
Вопросы, пожалуйста!
- alexclear@gmail.com
- Skype, Telegram: demeliorator
- Канал в Telegram: https://t.me/lhommequipleure
- Подкастики: https://t.me/demeliorator_pod
30
Выводы
- VictoriaMetrics это будущее
Здесь должна быть хохма, например: “Я поставил
VictoriaMetrics, и все работает!”, как вам такое?
31

More Related Content

What's hot

Docker integration into Badoo
Docker integration into BadooDocker integration into Badoo
Docker integration into BadooAnton Turetsky
 
Мониторь, автоматизируй Docker
Мониторь, автоматизируй DockerМониторь, автоматизируй Docker
Мониторь, автоматизируй DockerBadoo Development
 
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)Bosun современный мониторинг / Дима Медведев (OneTwoTrip)
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)Ontico
 
Common Lisp как второй язык
Common Lisp как второй языкCommon Lisp как второй язык
Common Lisp как второй языкValeriy Zamarayev
 
Scala performance под капотом
Scala performance под капотомScala performance под капотом
Scala performance под капотомRoman Grebennikov
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует GoArtem Kovardin
 
Как перезапустить проблемное приложение и одновременно отладить его
Как перезапустить проблемное приложение и одновременно отладить егоКак перезапустить проблемное приложение и одновременно отладить его
Как перезапустить проблемное приложение и одновременно отладить егоOlga Rusakova
 
Groovy presentation on Exception #7 conference
Groovy presentation on Exception #7 conferenceGroovy presentation on Exception #7 conference
Groovy presentation on Exception #7 conferencevoituk
 
Управление памятью в CPython
Управление памятью в CPythonУправление памятью в CPython
Управление памятью в CPythonAnton Patrushev
 
Sampling profiling
Sampling profilingSampling profiling
Sampling profilingSlach
 
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6Nikolay Samokhvalov
 
Shytikov on git Magic
Shytikov on git MagicShytikov on git Magic
Shytikov on git Magicshytikov
 
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовПлюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовYandex
 
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...Yandex
 
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24"Готовим промисы правильно", Андрей Яманов, MoscowJS 24
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24MoscowJS
 
Git для продолжающих
Git для продолжающихGit для продолжающих
Git для продолжающихIvan Evtukhovich
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовYandex
 
Рефакторить легаси код? Только с юнит тестами!
Рефакторить легаси код? Только с юнит тестами!Рефакторить легаси код? Только с юнит тестами!
Рефакторить легаси код? Только с юнит тестами!SmartStepGroup
 
Akka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный кодAkka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный кодRoman Grebennikov
 
Взаимодействие Go и C-библиотек. Go и Erlang
Взаимодействие Go и C-библиотек. Go и ErlangВзаимодействие Go и C-библиотек. Go и Erlang
Взаимодействие Go и C-библиотек. Go и ErlangDevDay
 

What's hot (20)

Docker integration into Badoo
Docker integration into BadooDocker integration into Badoo
Docker integration into Badoo
 
Мониторь, автоматизируй Docker
Мониторь, автоматизируй DockerМониторь, автоматизируй Docker
Мониторь, автоматизируй Docker
 
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)Bosun современный мониторинг / Дима Медведев (OneTwoTrip)
Bosun современный мониторинг / Дима Медведев (OneTwoTrip)
 
Common Lisp как второй язык
Common Lisp как второй языкCommon Lisp как второй язык
Common Lisp как второй язык
 
Scala performance под капотом
Scala performance под капотомScala performance под капотом
Scala performance под капотом
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует Go
 
Как перезапустить проблемное приложение и одновременно отладить его
Как перезапустить проблемное приложение и одновременно отладить егоКак перезапустить проблемное приложение и одновременно отладить его
Как перезапустить проблемное приложение и одновременно отладить его
 
Groovy presentation on Exception #7 conference
Groovy presentation on Exception #7 conferenceGroovy presentation on Exception #7 conference
Groovy presentation on Exception #7 conference
 
Управление памятью в CPython
Управление памятью в CPythonУправление памятью в CPython
Управление памятью в CPython
 
Sampling profiling
Sampling profilingSampling profiling
Sampling profiling
 
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
 
Shytikov on git Magic
Shytikov on git MagicShytikov on git Magic
Shytikov on git Magic
 
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовПлюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
 
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...
Илья Биин: Организация совместной работы Go и Python-based сервисов в Ostrovo...
 
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24"Готовим промисы правильно", Андрей Яманов, MoscowJS 24
"Готовим промисы правильно", Андрей Яманов, MoscowJS 24
 
Git для продолжающих
Git для продолжающихGit для продолжающих
Git для продолжающих
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
 
Рефакторить легаси код? Только с юнит тестами!
Рефакторить легаси код? Только с юнит тестами!Рефакторить легаси код? Только с юнит тестами!
Рефакторить легаси код? Только с юнит тестами!
 
Akka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный кодAkka: как я перестал бояться и полюбил асинхронный код
Akka: как я перестал бояться и полюбил асинхронный код
 
Взаимодействие Go и C-библиотек. Go и Erlang
Взаимодействие Go и C-библиотек. Go и ErlangВзаимодействие Go и C-библиотек. Go и Erlang
Взаимодействие Go и C-библиотек. Go и Erlang
 

More from Alex Chistyakov

My slides from DevOpsDays 2019
My slides from DevOpsDays 2019My slides from DevOpsDays 2019
My slides from DevOpsDays 2019Alex Chistyakov
 
My slides from SECR'2018
My slides from SECR'2018My slides from SECR'2018
My slides from SECR'2018Alex Chistyakov
 
My slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArtMy slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArtAlex Chistyakov
 
My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019Alex Chistyakov
 
My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019Alex Chistyakov
 
My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019Alex Chistyakov
 
Configuration management and Kubernetes
Configuration management and KubernetesConfiguration management and Kubernetes
Configuration management and KubernetesAlex Chistyakov
 
Python performance engineering in 2017
Python performance engineering in 2017Python performance engineering in 2017
Python performance engineering in 2017Alex Chistyakov
 
My talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGMMy talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGMAlex Chistyakov
 
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017Alex Chistyakov
 
My talk on GitHub open data at ITGM #10
 My talk on GitHub open data at ITGM #10 My talk on GitHub open data at ITGM #10
My talk on GitHub open data at ITGM #10Alex Chistyakov
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017Alex Chistyakov
 
My talk on programming languages at SPbLUG Mar 2017
My talk on programming languages at SPbLUG Mar 2017My talk on programming languages at SPbLUG Mar 2017
My talk on programming languages at SPbLUG Mar 2017Alex Chistyakov
 
My talk at DevParty 2017
My talk at DevParty 2017My talk at DevParty 2017
My talk at DevParty 2017Alex Chistyakov
 

More from Alex Chistyakov (20)

My slides from DevOpsDays 2019
My slides from DevOpsDays 2019My slides from DevOpsDays 2019
My slides from DevOpsDays 2019
 
My slides from SECR'2018
My slides from SECR'2018My slides from SECR'2018
My slides from SECR'2018
 
My slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArtMy slides from the first SPb SRE community meetup at DataArt
My slides from the first SPb SRE community meetup at DataArt
 
My slides from CC'2019
My slides from CC'2019My slides from CC'2019
My slides from CC'2019
 
My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019My slides from BMM №4 Nov 2019
My slides from BMM №4 Nov 2019
 
My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019My slides from DevOps-40 meetup Oct 2019
My slides from DevOps-40 meetup Oct 2019
 
My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019My slides from DevOps-40 meetup Dec 2019
My slides from DevOps-40 meetup Dec 2019
 
Configuration management and Kubernetes
Configuration management and KubernetesConfiguration management and Kubernetes
Configuration management and Kubernetes
 
Ansible and other stuff
Ansible and other stuffAnsible and other stuff
Ansible and other stuff
 
Python performance engineering in 2017
Python performance engineering in 2017Python performance engineering in 2017
Python performance engineering in 2017
 
My talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGMMy talk at SPb SQA sub-meetup of ITGM
My talk at SPb SQA sub-meetup of ITGM
 
My talk at SECR 2017
My talk at SECR 2017My talk at SECR 2017
My talk at SECR 2017
 
On scaling teams
On scaling teamsOn scaling teams
On scaling teams
 
MariaDB workshop
MariaDB workshopMariaDB workshop
MariaDB workshop
 
Docker for JS people
Docker for JS peopleDocker for JS people
Docker for JS people
 
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
My talk on DevOps engineer's adventures in the Windows world at UWDC 2017
 
My talk on GitHub open data at ITGM #10
 My talk on GitHub open data at ITGM #10 My talk on GitHub open data at ITGM #10
My talk on GitHub open data at ITGM #10
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017
 
My talk on programming languages at SPbLUG Mar 2017
My talk on programming languages at SPbLUG Mar 2017My talk on programming languages at SPbLUG Mar 2017
My talk on programming languages at SPbLUG Mar 2017
 
My talk at DevParty 2017
My talk at DevParty 2017My talk at DevParty 2017
My talk at DevParty 2017
 

My slides from DevOps-40 meetup Jun 2019