Мониторинг кластера Grafana

В этом документе описаны настройка панели мониторинга YMatrix, добавление панели node_exporter, развертывание панели мониторинга MatrixGate и развертывание панели мониторинга etcd.

Примечание!
Убедитесь, что мониторинг Prometheus и Grafana уже установлены в вашем кластере. Если это не так, обратитесь к документации Установка и управление Grafana и Установка и управление Prometheus для инструкций по установке и настройке.


1. Настройка панели мониторинга YMatrix

  1. Нажмите значок Настройки на главной странице Grafana и выберите Data Sources: Добавление источника данных 1

  2. Затем нажмите Add data source: Добавление источника данных 2

  3. Выберите Prometheus в качестве типа базы данных: Добавление источника данных 3

  4. Присвойте источнику данных имя, например: MatrixDB-Prometheus. Затем введите IP-адрес и порт Prometheus в поле URL: Добавление источника данных 4

  5. После добавления источника данных перейдите к загрузке дашборда. Нажмите кнопку + на главной странице Grafana и выберите Import: Добавление дашборда 1

  6. Существует несколько способов импорта дашборда: через официальный URL или ID, вставка JSON в текстовое поле или загрузка из файла.

  • Здесь мы выбираем загрузку из файла. Дашборд YMatrix Prometheus находится в директории установки по пути $GPHOME/share/doc/postgresql/extension/PrometheusDashboard.json. Загрузите этот файл: Добавление дашборда 2

  • При загрузке файла выберите источник данных Prometheus, созданный ранее. Добавление дашборда 3

Теперь вы увидите импортированный дашборд в списке дашбордов.

Для подробного объяснения метрик дашборда см. Интерпретация параметров мониторинга YMatrix.


2. Настройка панели мониторинга операционной системы (node_exporter)

В этом разделе описывается развертывание дашборда node_exporter.

Загрузите дашборд node_exporter: Официальный сайт Grafana опубликовал соответствующий Дашборд. Просто введите ID дашборда для импорта.

При импорте выберите ранее добавленный источник данных MatrixDB-Prometheus. Если node_exporter использует отдельный кластер Prometheus, необходимо добавить отдельный источник данных. node_exporter_2


3. Настройка панели мониторинга MatrixGate

Для развертывания gate_exporter необходимо создать базу данных matrixmgr и установить расширения matrixts и matrixmgr.

  • Создание базы данных matrixmgr
createdb matrixmgr;
  • Подключение к базе данных matrixmgr и создание расширений matrixts и matrixmgr
psql -d matrixmgr

matrixmgr=# CREATE EXTENSION matrixts;
matrixmgr=# CREATE EXTENSION matrixmgr;
  • Затем вызовите mxmgr_init_gate_exporter для инициализации и запуска:
    matrixmgr=# SELECT mxmgr_init_gate_exporter();

    При успешном выполнении в базе данных matrixmgr появится новая схема с именем "gate_exporter". Таблицы и представления в этой схеме содержат данные мониторинга и конфигурации MatrixGate. Не изменяйте их определения и содержимое вручную.

Эта команда запускает gate_exporter на хосте MXMaster.

Для остановки gate_exporter выполните mxmgr_remove_gate_exporter:

matrixmgr=# SELECT mxmgr_remove_gate_exporter();

Для перезапуска выполните mxmgr_deploy_gate_exporter:

matrixmgr=# SELECT mxmgr_deploy_gate_exporter();

Как и при загрузке панели мониторинга YMatrix, файл дашборда MatrixGate расположен по пути $GPHOME/share/ru/doc/postgresql/extension/MxgateDashboard.json. Загрузите этот файл для завершения настройки.

Для подробного объяснения метрик см. Интерпретация параметров мониторинга MatrixGate.


4. Настройка панели мониторинга etcd

1. Настройка Prometheus для сбора метрик etcd

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

$ cd prometheus-*
sudo vi prometheus.yml

Добавьте в конец файла следующее:

  - job_name: "etcd"
    static_configs:
      - targets: ["172.31.33.128:4679", "172.31.45.253:4679", "172.31.35.134:4679"]

Массив targets должен быть заменён адресами всех узлов etcd в вашем кластере.

Эту информацию можно найти в файле /etc/matrixdb6/physical_cluster.toml на хосте MXMaster:

$ cat physical_cluster.toml
cluster_id = '79LhQxjuwmXgSWZCjcdigF'
supervisord_grpc_port = 4617
deployer_port = 4627
etcd_endpoints = ['http://10.0.159.1:4679', 'http://10.0.172.185:4679', 'http://10.0.170.90:4679', 'http://10.0.146.2:4679', 'http://10.0.146.195:4679', 'http://10.0.150.110:4679', 'http://10.0.169.149:4679']

Примечание!
Если файл /etc/matrixdb6/physical_cluster.toml отсутствует и процесс etcd не обнаружен, ваш кластер был развернут не с использованием архитектуры 6.x, и мониторинг etcd не применим.

2. Запуск Prometheus

./prometheus --config.file=prometheus.yml

Примечание!
Как правило, вы хотите, чтобы Prometheus работал как фоновая системная служба. Для этого настройте его как systemd-службу.

3. Настройка дашборда etcd в Grafana

Примечание!
Требуется версия Grafana 8.2.5 или выше.

Сначала войдите в веб-интерфейс Grafana. Стандартный адрес:

http://<IP_or_domain_of_installed_node>:3000

a. Настройка источника данных (DataSource)

172.31.23.21:9090 — это порт сервиса экземпляра Prometheus, развернутого на предыдущем шаге.

b. Импорт дашборда

Перейдите на сообщество Grafana: https://grafana.com/grafana/dashboards/?search=Etcd+Cluster+Overview

На этой странице представлены дашборды, предоставленные сообществом:

Перейдите в нужный дашборд, чтобы получить его ID:

Примечание!
ID дашборда может со временем измениться. В настоящее время он равен 15308; пользователи должны проверять актуальный ID по результатам поиска.

Как показано ниже, мы импортируем дашборд с ID 15308:

Затем выберите ранее настроенный источник данных и загрузите дашборд:

Если сервер находится во внутренней сети и не может импортировать дашборд по ID 15308, скачайте JSON-файл Дашборда с машины, подключенной к интернету, и импортируйте его вручную:

Для получения дополнительной информации о ключевых элементах дашборда etcd см. Документацию по etcd.