Настройка мониторинга локального кластера YDB

На этой странице рассказано, как настроить мониторинг локального однонодового кластера YDB, запущенного с помощью инструкции по Быстрому началу работы.

YDB предоставляет множество сенсоров состояния системы. Мгновенные значения сенсоров можно посмотреть в веб-интерфейсе:

http://localhost:31002/counters/

Связанные сенсоры объединены в подгруппы (например counters auth). Чтобы посмотреть значения сенсоров только определенной подгруппы, перейдите по URL следующего вида:

http://localhost:31002/counters/counters=<servicename>/
  • <servicename> — имя подгруппы сенсоров.

Например, данные об утилизации аппаратных ресурсов сервера доступны по следующему URL:

http://localhost:31002/counters/counters=utils

Для сбора значений метрик вы можете использовать популярный инструмент с открытым исходным кодом Prometheus. Значения сенсоров YDB в формате Prometheus доступны по URL следующего вида:

http://localhost:31002/counters/counters=<servicename>/prometheus
  • <servicename> — имя подгруппы сенсоров.

Визуализировать данные можно с помощью любой системы, которая поддерживает формат Prometheus, например Zabbix, Amazon CloudWatch или Grafana:

grafana-actors

Настройка мониторинга с помощью Prometheus и Grafana

Чтобы настроить мониторинг кластера YDB с помощью Prometheus и Grafana:

  1. Установите Prometheus.

  2. Отредактируйте файлы конфигурации Prometheus:

    1. В файле ydbd-storage.yml в секции targets укажите адреса всех серверов кластера YDB и порты узлов хранения, работающих на серверах.

      - labels:
          container: ydb-static
        targets:
        - "ydb-s1.example.com:8765"
        - "ydb-s2.example.com:8765"
        - "ydb-s3.example.com:8765"
      

      Для локального однонодового кластера YDB в секции targets укажите один адрес:

      - labels:
          container: ydb-static
        targets:
        - "localhost:8765"
      
    2. В файле ydbd-database.yml в секции targets укажите адреса всех серверов кластера YDB и порты узлов баз данных, работающих на серверах.

      - labels:
          container: ydb-dynamic
        targets:
        - "ydb-s1.example.com:31002"
        - "ydb-s1.example.com:31012"
        - "ydb-s1.example.com:31022"
        - "ydb-s2.example.com:31002"
        - "ydb-s2.example.com:31012"
        - "ydb-s2.example.com:31022"
        - "ydb-s3.example.com:31002"
        - "ydb-s3.example.com:31012"
        - "ydb-s3.example.com:31022"
      

      Для локального однонодового кластера YDB, в секции targets укажите один адрес:

      - labels:
          container: ydb-dynamic
        targets:
        - "localhost:8765"
      
    3. В файле prometheus_ydb.yml при необходимости в секции tls_config укажите сертификат центра регистрации (Certification Authority, CA), которым подписаны остальные сертификаты TLS кластера YDB:

      scheme: https
      tls_config:
          ca_file: '<ydb-ca-file>'
      
  3. Разместите отредактированные файлы в одной директории и запустите Prometheus, указав в опциях запуска файл конфигурации prometheus_ydb.yml.

  4. Установите и запустите Grafana.

  5. Создайте источник данных с типом prometheus в Grafana и подсоедините его к запущенному экземпляру Prometheus.

  6. Загрузите дашборды YDB в Grafana.

    Вы можете загрузить дашборды с помощью инструмента Import Grafana UI или выполнить скрипт. Обратите внимание, что скрипт использует базовую аутентификацию в Grafana. Для других случаев модифицируйте скрипт.

    Ознакомьтесь со справочником по дашбордам Grafana.

Предыдущая
Следующая