Сервер метрик

Сервер метрик используется в инфраструктуре QHB для сбора, агрегации и пересылки метрик в систему мониторинга Graphite. Список и особенности формирования метрик QHB содержатся в разделе Метрики QHB.

Тема установки и настройки Graphite выходит за рамки данной документации. Пожалуйста, обратитесь к документации Graphite.

Сервер метрик должен быть установлен и настроен на каждой машине, где работают компоненты QHB (сам сервер баз данных или QCP)/ Подробную информацию см. в разделе Установка.

Настройка сервера метрик

Пример файла конфигурации устанавливается по пути /etc/metricsd/config-example.yaml.

Для работы сервера необходимо скопировать его в /etc/metricsd/config.yaml и подправить необходимые параметры. Особого внимания требует секция aggregationbackends:

  # Конфигурация серверов. Должен быть сконфигурирован хотя бы один сервер.
  backends:
    # Конфигурация сервера graphite
    - graphite:
      # Адрес терминала TCP Graphite для текстового протокола. Порт по умолчанию: 2003.
      # Доступен только протокол TCP, поэтому если Graphite не принимает подключение к этому порту, это вызовет ошибку!
      address: "graphite:2003"
      # Префикс, добавляемый к имени каждой метрики. Необязательный параметр; по умолчанию — пустая строка.
      prefix: ""
      # Время ожидания подключения. Необязательный параметр; по умолчанию — 30 секунд.
      connection_timeout: "30 sec"
      # Время ожидания отправки данных. Необязательный параметр; по умолчанию — 5 секунд.
      send_timeout: "5 sec"
      
    # Конфигурация CSV-бэкенда (в случае необходимости копирования данных о метриках в CSV-файлы)
    - csv:
      # Каталог, содержащий CSV-файлы.
      directory: "/var/lib/qhb/csv_create"
      # Системный идентификатор инстанса QHB.
      qhb_instance: "instance_name"
      # Интервал переключения CSV-файлов (опционально).
      rotation_age: 1 h
      # Настройка времени следующего переключения после запуска (опционально).
      rotation_offset: 2022-03-01T18:00:00      

Исправьте параметр address на реальный адрес сервера Graphite в вашей сети. Также рекомендуется изменить значение параметра prefix на, например, имя машины, на которой запущен сервер. Этот префикс будет добавляться ко всем генерируемым метрикам.

Параметры конфигурации CSV-бэкенда необходимы в случае, если нужно сохранять данные метрик в CSV-файлы.
Для этого используются следующие параметры:
directory указывает место расположения CSV-файлов;
qhb_instance - системный идентификатор инстанса, в чем-то аналогичен параметру prefix, но его значение при загрузке данных метрик заполняет отдельный столбец в таблице метрик, не связанный с именем метрик. Может быть полезен при наличии нескольких инстансов QHB на одном сервере;
rotation_age - период переключения CSV-файлов. Единицы измерения можно задавать, например, в виде секунд (s), минут (m), часов (h), дней (d).
rotation_offset - параметр задает время переключения на очередной CSV-файл после запуска сервера метрик. Время указывается для часового пояса UTC. Параметр удобно использовать для выравнивания начала очередного периода, например, по началу следующего часа.

Для автоматического запуска сервера при старте системы активируйте соответствующий сервис systemd:

$ sudo systemctl enable --now metricsd.service