ELMA365 On-Premises > ELMA365 On-Premises Enterprise > Установка дополнений для приложения ELMA365 > Установка средств мониторинга / Мониторинг баз данных

Мониторинг баз данных

DBSExporter — дополнение, которое предназначено для мониторинга баз данных PostgreSQL, MongoDB, RabbitMQ, Redis и S3‑хранилища.

Установка дополнения состоит из следующих этапов:

  1. Загрузить helm-чарт и конфигурационный файл.
  2. Создать токен конфигурации, чтобы использовать MinIO-метрики для Prometheus.
  3. Заполнить конфигурационный файл.
  4. Установить Node Exporter на серверы с базами данных.
  5. Установить чарт DBSExporter с помощью Helm в Kubernetes-кластер.

Шаг 1: Загрузить Helm-чарт и конфигурационный файл

Для установки через интернет получите конфигурационный файл values-dbsexporter.yaml, выполнив команду:

helm repo add elma365 https://charts.elma365.tech
helm repo update
helm show values elma365/dbsexporter > values-dbsexporter.yaml

Получение конфигурационного файла для установки в закрытом контуре без доступа в интернет

Шаг 2: Создать токен конфигурации, чтобы использовать MinIO-метрики для Prometheus

Cоздайте alias и отправьте команду для генерации токена, выполнив команду:

mc alias set my_alias http://minio.local accessKey secretKey
mc admin prometheus generate my_alias

Шаг 3: Заполнить конфигурационный файл

Заполнение конфигурационного файла для установки DBSExporter

Заполнение параметров подключения к приватному registry для установки в закрытом контуре без доступа в интернет

В конфигурационный файл values-dbsexporter.yaml вы можете добавить дополнительные настройки:

  1. Подключить в DBSExporter несколько баз данных как внутренних, так и внешних. Для этого продублируйте параметры блока instances и настройте параметры подключения к каждой реплике. Например:

instances:    
  - name: mongodb-1
    uri: "mongodb://mongodb-1:27017"
  - name: mongodb-2
    uri: "mongodb://mongodb-2:27017"

  1. Включить сбор метрик с Yandex Cloud.

Сбор метрик с Yandex Cloud является платной услугой. Подробнее читайте в официальной документации сервиса.

Пример включения сбора метрик с Yandex Cloud:

global:
# Экспорт yandex метрик
  yandexExporter:
    enabled: true
    bearerToken: "your_bearerToken"
    folderId: "your_folderId"
    services: ["managed-mongodb", "managed-postgresql"]
    relabelings: {}

  1. Связать DBSExporter с Deckhouse. Пример:

global:    
  provisioner: "deckhouse"

Шаг 4: Установить Node Exporter на серверы с базами данных

Чтобы отслеживать состояние серверов с базами данных, выполните установку Node Exporter. Для этого:

  1. Загрузите Node Exporter на сервер с базой данных:

wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz

  1. Разархивируйте архив, загруженный на предыдущем шаге:

tar xvf node_exporter-1.8.2.linux-amd64.tar.gz && cd node_exporter-1.8.2.linux-amd64

  1. Скопируйте файл node_exporter:

sudo cp node_exporter /usr/local/bin/

  1. Создайте пользователя для Node Exporter:

sudo useradd --no-create-home --shell /bin/false nodeusr

  1. Задайте владельца для исполняемого файла node_exporter:

sudo chown -R nodeusr:nodeusr /usr/local/bin/node_exporter;

  1. Создайте файл node_exporter.service для запуска Node Exporter в качестве службы:

cat <<EOF | sudo tee /etc/systemd/system/node_exporter.service;
[Unit]
Description=NodeExporter
[Service]
TimeoutStartSec=0
User=nodeusr
ExecStart=/usr/local/bin/node_exporter \
--web.listen-address=:9100
[Install]
WantedBy=multi-user.target
EOF

  1. Перечитайте конфигурацию systemd:

sudo systemctl daemon-reload

  1. Запустите службу node_exporter.service:

sudo systemctl enable --now node_exporter.service

После установки Node Exporter заполните параметры в конфигурационном файле values-dbsexporter.yaml, чтобы отслеживать состояния серверов с базами данных. При этом адреса хостов будут извлекаться из пунктов instances конфигурационного файла.

Пример заполнения параметров:

global:
# Настройки node exporter
  nodeExporter:
    enabled: true
    port: 9100
    relabelings: {}

Шаг 5: Установить чарт DBSExporter с помощью Helm в Kubernetes-кластер

Выполните установку чарта DBSExporter в namespace monitoring.

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

helm upgrade --install -n monitoring dbsexporter elma365/dbsexporter -f values-dbsexporter.yaml

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

helm upgrade --install dbsexporter ./dbsexporter -f values-dbsexporter.yaml -n monitoring