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

Grafana

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

1. Основные особенности Grafana

  • Интерактивные дашборды: Возможность создавать настраиваемые панели управления с широким спектром визуальных элементов.

  • Поддержка множества источников данных: Платформа может подключаться к различным источникам данных, включая Prometheus, Graphite, InfluxDB, Elasticsearch и многим другим.

  • Оповещения и уведомления: Настройка триггеров для отправки уведомлений при достижении определённых условий.

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

  • Совместная работа: Возможность совместного использования дашбордов с коллегами или в больших командах.

2. Основные сведения

Grafana устанавливается в виде ресурса Deployment в Namespace nova-monitoring. Для доступа к Grafana из внешней сети установлен ресурс Ingress.

В Grafana предустановлен источник Prometheus и дашборды. Данные из этих дашбордов отображаются на странице Observe  Панели мониторинга в веб-консоли Nova Container Platform. Данные с других дашбордов не будут выведены.

Рекомендуется добавлять новые дашборды и источники данных через ConfigMap. Grafana автоматически начнёт с ними работать.

3. Добавление нового плагина

В настоящее время установка плагинов на постоянной основе невозможна. После перезапуска pod’а настройки возвращаются к исходному состоянию.
Данный функционал будет реализован в одной из будущих версий платформы.

4. Добавление нового источника данных (Datasource)

Для добавления нового источника данных создайте ресурс ConfigMap в Namespace nova-monitoring с именем nova-grafana-datasources-<имя_источника> и меткой nova-platform.io/cluster-dashboard-datasource: 'true', например:

kind: ConfigMap
apiVersion: v1
metadata:
  name: nova-grafana-datasources-test (1)
  namespace: nova-monitoring (2)
  labels:
    nova-platform.io/cluster-dashboard-datasource: 'true' (3)
data: (4)
  datasources_prometheus_new.yaml: |-
    apiVersion: 1
    datasources:
    - name: nova-prometheus-new
      type: prometheus
      url: http://prometheus-operated.nova-monitoring.svc:9090
      isDefault: false
  1. Имя ресурса: должно быть nova-grafana-datasources-<имя_источника>.

  2. Имя Namespace: не должно быть изменено.

  3. Метка, по которой ресурс автоматически добавляется в Grafana.

  4. Пример файла конфигурации. Имя файла должно быть уникально.

5. Добавление нового дашборда

Для добавления нового дашборда создайте ресурс ConfigMap в Namespace nova-monitoring с именем nova-grafana-dashboard-<имя_источника> и меткой grafana_dashboard: '1', например:

kind: ConfigMap
apiVersion: v1
metadata:
  name: nova-grafana-dashboard-alertmanager-overview (1)
  namespace: nova-monitoring (2)
  labels:
    grafana_dashboard: '1' (3)
data: (4)
  alertmanager-overview.json: |-
    {
      "annotations": {
        "list": [
          {
            "builtIn": 1,
            "datasource": {
              "type": "grafana",
              "uid": "-- Grafana --"
            },
            ...
        ]
    }
  1. Имя ресурса: должно быть nova-grafana-dashboard-<имя_дашборда>.

  2. Имя Namespace: не должно быть изменено.

  3. Метка, по которой ресурс автоматически добавляется в Grafana.

  4. Пример файла конфигурации. Имя файла должно быть уникально. Можно заранее настроить дашборд в Grafana и взять его конфигурацию из JSON Model.