Что такое Grafana

У современной компании есть тысячи различных показателей, которые она получает из различных источников. Grafana ― это программа, которая может объединить все эти данные вместе и показать в виде понятных графиков и дашбордов. Расскажем подробнее, как пользоваться Grafana, как ее настроить, про дашборды, метрики и графики в Grafana.

Что такое Grafana

Grafana — это программа, которая предназначена для сбора данных из различных источников и их дальнейшей обработки, например, отображения в виде графиков и диаграмм. Она легко интегрируется с большинством современных ИТ-систем, чтобы забирать из них данные и представлять в таком виде, который будет легко понять даже неспециалисту.

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

Представьте себе компанию, которая занимается доставкой товаров из Китая крупными партиями и продажей их на российских маркетплейсах. Данные этой компании разбросаны по разным источникам: закупки и даты их поставок отображаются на сайте китайского оптового поставщика, данные о складских запасах лежат в Гугл-таблице, сроки поставок товаров заказчикам ― на сайте почтового оператора, а данные о продажах ― на платформах пяти крупных российских маркетплейсов.

Объединив все эти данные в одну таблицу мы все равно не сможем оценить эффективность бизнеса, так как она тут же устареет. Необходимо, чтобы эти данные обновлялись в режиме реального времени и отображались в виде понятных дашбордов и графиков, чтобы можно было оперативно отслеживать проблемы в бизнесе и решать их. Для таких случаев и придумана платформа Grafana, которая умеет объединять разрозненные данные для отображения объективных данных.

С чем взаимодействует Grafana

Всего Grafana поддерживает интеграцию со 150 сторонними сервисами: системами хранения данных, таск-трекерами, системами контейнеризации и оркестрации программного кода и системами передачи данных. Все эти сервисы напрямую подключаются к вашему дашборду, программистам не нужно писать дополнительные адаптеры, чтобы передавать данные.

  • Jira — это популярный таск-трекер, который может передавать в Grafana статусы задач, чтобы руководство могло отслеживать прогресс работы над проектом.
  • GitHub — это хостинг для хранения кода онлайн и совместной разработки. Он передает данные о том, в какие фрагменты кода внесены изменения, что помогает выстраивать планирование работы.
  • Google Sheets — это онлайн-таблицы. Grafana может оперативно подгружать данные из таблиц, которые ведут разные отделы, и тут же отображать их на графиках.
  • MySQL и PostgreSQL ― это базы данных из которых можно получать любую информацию для визуализации.
  • Kafka ― это распределенная платформа потоковой передачи данных, откуда можно получать информацию об активности пользователей.
  • Jaeger ― это система для мониторинга микросервисов, данные из которой показывают нагрузку на определенные сегменты большого приложения.

Список платформ, с которыми может работать Grafana, постоянно обновляется. Кроме того есть возможность добавлять в программу плагины, которые сделаны сторонними разработчиками.

Источник: Shutterstock. Grafana поддерживает интеграцию со 150 сторонними сервисами, что позволяет напрямую получать и визуализировать самые разнообразные данные

Визуализация в Grafana

В Grafana есть множество инструментов для визуализации данных:

  1. Графики
    Это классические линейные графики, столбчатые диаграммы и графики с заливкой.
  2. Таблицы
    Стандартные таблицы для отображения связанных данных.
  3. Панели состояния
    Это страницы, на которых можно вывести отображение часто используемых метрик и индикаторы в виде шкал и циферблатов.
  4. Тепловые карты
    Визуализации, показывающие плотность данных во времени или другим параметрам.
  5. Географические карты
    Для отображения точек сбора данных.
  6. Гистограммы и распределения
    Панели для анализа распределенных данных.
  7. Панели логов
    Отображают историю использования какого-либо сервиса.
  8. Панели трассировки
    Показывают трассировку распределенных систем, например, Jaeger и Zipkin.
  9. Панели статуса
    Отображают статусы систем и сервисов, которые необходимы для проверки их состояния.
  10. Панели графов
    Визуализируют графы и сети для анализа связей между элементами.

Grafana позволяет гибко настраивать все эти панели отображения, чтобы в итоге собрать дашборд, на котором будут все актуальные данные. Графики можно объединять между собой, перемещать и распределять по разным экранам, чтобы видеть всю картину целиком.

Источник: Shutterstock. Разнообразные инструменты визуализации в Grafana помогают собрать понятный и актуальный дашборд

Дополнительные функции Grafana

Дополнительные функции Grafana

Вы можете использовать для работы уже готовые шаблоны дашбордов, созданные другими пользователями. Или создать собственный и поделиться им с сообществом.

Автоматизация процессов

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

Удобный вывод данных

Данные, которые получает программа, можно выводить сразу на несколько мониторов и скрывать интерфейс, чтобы он не отвлекал от наблюдения за параметрами.

API для разработчиков

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

Система оповещений

Можно гибко настроить оповещения о различных событиях, чтобы они приходили в различные источники, например, мессенджеры.

Настройка ролей

Можно выдать сотрудникам доступ только к той информации, которая необходима для работы.

Источник: Shutterstock. Шаблонные действия можно автоматизировать, написав скрипты в Grafana

Как установить и настроить Grafana

Установка Grafana на различных платформах происходит по-разному:

Установка Grafana на Linux

  1. Сначала необходимо обновить пакеты командой:
  1. Затем устанавливаем необходимые зависимости, используя команду:

3. Добавляем репозиторий Grafana:

4. Затем происходит непосредственная установка Grafana:

5. Чтобы запустить сервис Grafana, используем команды:

6. Если мы хотим настроить Grafana для автозапуска, пишем в командной строке:

Установка на Grafana на macOS

  1. Установка на Grafana на macOS
  1. Далее устанавливаем Grafana:
  1. Запускаем программу командой:

Установка на Grafana Windows

  1. Скачиваем установочный файл по этому адресу.
  2. После окончания скачивания запустите файл и установите программу.
  3. Запустить Grafana можно будет через ярлык на рабочем столе.

Настройка Grafana

  • Доступ к веб-интерфейсу можно получить в браузере по адресу http://localhost:3000.
  • Для входа в систему используйте логин и пароль по умолчанию — admin/admin. Сразу после входа поменяйте логин и пароль.
  • Чтобы добавить источник данных, перейдите в раздел Configuration и выберите Data Sources. Там нажмите Add data source и выберите нужный источник данных, например, Prometheus или InfluxDB.
  • Программа попросит ввести дополнительные данные для доступа, после чего нужно будет сохранить изменения.
  • Чтобы создать новый дашборд, нажмите New dashboard, добавьте новую панель и выберите тип визуализации: график, таблица, карта. Настройте запросы к источнику данных и визуализацию.

Андрей Лебедев

Кейс Stworka: как создать ERP в облаке для 5000 строительных компаний

А также запустить маркетплейс для строителей и обрабатывать 1,5 млн артикулов ежедневно. Рассказываем, как компания Stworka развернула IT-инфраструктуру в Облаке...
Read More

Системы контроля версий: зачем они нужны и как их использовать

Мир разработки ПО издалека кажется непонятным и запутанным, но существуют инструменты, которые значительно упрощают жизнь и делают работу более эффективной....
Read More

Соглашение об уровне обслуживания (SLA)

Поговорим о документе, который может серьезно повлиять на успех проекта, будь то интернет-магазин, SaaS-платформа или любой другой онлайн-сервис. Речь пойдет...
Read More

Что такое S3 (Simple Storage Service)

Если вы только начинаете свой путь в разработке, вам обязательно нужно познакомиться с S3. Это краеугольный камень многих современных приложений...
Read More

Полный обзор NoSQL: особенности и использование

Развитие интернета диктует новые правила в разработке. Традиционные базы данных, которые называются реляционными (RDBMS), не справляются с задачами, которые требуют...
Read More

Как использовать DataSphere. Датасеты в DataSphere

Данные нужны в любой сфере: магазины анализируют продажи, в медцентры — истории болезней, ученые — результаты экспериментов. Чем больше информации,...
Read More

Основные задачи машинного обучения: классификация, регрессия, кластеризация и уменьшение размерности

Machine Learning ― это уже часть нашей повседневной жизни. От рекомендаций фильмов на Кинопоиске до спам-фильтров в почте — за...
Read More

Обзор CLI: командная строка и ее возможности

Когда были созданы первые компьютеры, операционной системой на них можно было управлять только при помощи ввода текстовых команд. Со временем...
Read More

Шардирование в базах данных: обзор концепции

В условиях стремительного роста объемов данных и увеличения нагрузок на информационные системы эффективность их масштабирования становится критически важной. Одним из...
Read More

Графический процессор (GPU): что это, для кого, разновидности

Дизайнерам, проектировщикам и разработчикам требуются мощные вычислительные ресурсы для работы. Обычный процессор (CPU) не справится с такими задачами, как обработка...
Read More