"graphite — как построить миллион графиков". Дмитрий...
DESCRIPTION
Количество данных, серверов и приложений растёт — нужны новые способы анализа этой информации. В докладе я расскажу о сравнительно новой системе для рисования графиков под названием Graphite. Почему мы выбрали именно её, какие возможности предоставляет эта система. Также я покажу, как собраны наши инсталляции Graphite.TRANSCRIPT
![Page 1: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/1.jpg)
1
![Page 2: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/2.jpg)
2
Graphite – как построить миллион графиков
Куликовский Дмитрий
![Page 3: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/3.jpg)
3
О чем
! Почему графит?
! Архитектура
! Производительность
! Вкусности
![Page 4: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/4.jpg)
4
В чем проблема?
Проще увидеть один график, чем просмотреть тысячу логов.
![Page 5: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/5.jpg)
5
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 6: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/6.jpg)
6
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 7: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/7.jpg)
7
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 8: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/8.jpg)
8
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 9: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/9.jpg)
9
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 10: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/10.jpg)
10
Варианты решения
! Zabbix
! Agave
! Munin
! Collectd
! Cacti
! Graphite
![Page 11: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/11.jpg)
11
А у нас в графите…
! Масштабирование
! Построение отказоустойчивого сервиса
![Page 12: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/12.jpg)
12
А у нас в графите…
! Простота работы с большими объёмами данных
! Гибкость работы с шаблонами графиков
![Page 13: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/13.jpg)
13
Тест на разладку hw балансера
![Page 14: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/14.jpg)
14
Графики сетевой активности p2p
![Page 15: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/15.jpg)
15
Немного цифр
! 61 requests ❘ 902 KB transferred ❘ 17.54 s
! 6900 метрик выбрано
! 3 преобразования: derivative, scale to seconds, sum
![Page 16: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/16.jpg)
16
Маловато будет!
! Нестрогий порядок timestamp’ов точек
! Данные в реальном времени
! Внутренняя простота
![Page 17: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/17.jpg)
17
![Page 18: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/18.jpg)
18
Маловато будет!
! Нестрогий порядок timestamp’ов точек
! Данные в реальном времени
! Внутренняя простота
![Page 19: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/19.jpg)
19
Маловато будет!
! Нестрогий порядок timestamp’ов точек
! Данные в реальном времени
! Внутренняя простота
![Page 20: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/20.jpg)
20
Архитектура графита
![Page 21: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/21.jpg)
21
Он такой же как и все
! 2 логических части – frontend и backend
! backend на twisted
! frontend на django
![Page 22: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/22.jpg)
22
Мegacarbon
![Page 23: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/23.jpg)
23
Мegacarbon
![Page 24: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/24.jpg)
24
3х слойная масштабируемая архитектура
![Page 25: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/25.jpg)
25
Многослойная безумная архитектура
![Page 26: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/26.jpg)
26
Наш вариант
![Page 27: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/27.jpg)
27
Производительность
![Page 28: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/28.jpg)
28
Конфигурация машин
! E5-2660
! 64Gb RAM
! 4 x ssd 300Gb в raid10
![Page 29: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/29.jpg)
29
Whisper
+ фиксированный размер файла + стабильность - один файл для всех данных - очень ресурсоёмкое создание новых метрик
![Page 30: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/30.jpg)
30
Ceres
+ внутренний механизм кеширования + мгновенное создание новых метрик + rollup идёт отдельным процессом - есть баги - rollup это дорогостоящая операция, которую надо делать
![Page 31: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/31.jpg)
31
whisper
ceres
![Page 32: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/32.jpg)
32
Решение проблем с производительностью
! Шардирование
! Распределённая отрисовка графиков
![Page 33: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/33.jpg)
33
Решение проблем с производительностью
! Шардирование
! Распределённая отрисовка графиков
![Page 34: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/34.jpg)
34
Вкусности
![Page 35: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/35.jpg)
35
Источники данных
! Collectd
! Diamond
! Collectl
! Ganglia
![Page 36: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/36.jpg)
36
Альтернативные интерфейсы - 19 альтернативных веб-интерфейсов для графита
clck.ru/8pjLG
![Page 37: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/37.jpg)
37
Giraffe
![Page 38: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/38.jpg)
38
Graph explorer
![Page 39: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/39.jpg)
39
Graphene
![Page 40: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/40.jpg)
40
Dashboard ex. 1
![Page 41: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/41.jpg)
41
Dashboard ex. 2
![Page 42: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/42.jpg)
42
Dashboard ex. 3
![Page 43: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/43.jpg)
43
Dashboard ex. 4
![Page 44: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/44.jpg)
44
Skyline
![Page 45: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/45.jpg)
45
Наши патчи
! cacti style zoom + fullscreen
! история графика
! свои функции для обработки данных
! дополнительные горячие клавиши
![Page 46: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/46.jpg)
46
Ссылочки
Форк на гитхабе - clck.ru/8pjLr Инструкция для домохозяек - clck.ru/8pjM3
![Page 47: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/47.jpg)
47
Выводы
![Page 48: "Graphite — как построить миллион графиков". Дмитрий Куликовский, Яндекс](https://reader031.vdocuments.pub/reader031/viewer/2022013105/557f2de8d8b42ad4798b49f5/html5/thumbnails/48.jpg)
48
Спасибо за внимание