MongoDB

Материал из Документация Ключ-АСТРОМ
Версия от 22:49, 25 августа 2026; IKuznetsov (обсуждение | вклад) (Новая страница: «= Мониторинг MongoDB в Ключ-АСТРОМ = Инструкция по настройке расширения для мониторинга '''MongoDB'''. Расширение подключается к экземпляру '''MongoDB''' через сетевой порт (по умолчанию 27017) и собирает метрики сервера, баз данных, операций, памяти и подключений. == Воз...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Мониторинг MongoDB в Ключ-АСТРОМ

Инструкция по настройке расширения для мониторинга MongoDB.

Расширение подключается к экземпляру MongoDB через сетевой порт (по умолчанию 27017) и собирает метрики сервера, баз данных, операций, памяти и подключений.

Возможности расширения

Что делает

  • Подключается к экземпляру MongoDB через сетевой порт.
  • Собирает метрики сервера (serverStatus), включая статистику операций, подключений, памяти, блокировок и транзакций.
  • Создает сущности MongoDB Instance и Database со связями между ними.
  • Предоставляет данные для анализа производительности и работоспособности СУБД.

Что не делает

  • Не устанавливает и не настраивает MongoDB.
  • Не использует Management API или веб-интерфейс — только прямое сетевое подключение к СУБД.
  • Не выполняет трассировку запросов между приложениями.
  • Не создает и не изменяет объекты баз данных, кроме создания учетной записи для мониторинга.

Метрики начинают поступать после завершения настройки и первого цикла сбора (в течение 2–3 минут).

Предварительные условия

  • Версия MongoDB: 4.0 или выше (рекомендуется 5.0+).
  • Версия Ключ-АСТРОМ: 1.308 или выше.
  • На хосте с MongoDB установлен ЕдиныйАгент Ключ-АСТРОМ, контроллер выполнения расширений (EEC) включен.
  • Подготовлен пакет расширения (.zip) для загрузки в Расширения — либо расширение уже доступно в каталоге Расширений.
  • Сетевая доступность: порт MongoDB (по умолчанию 27017) должен быть открыт для подключений со стороны ЕдиногоАгента.
  • Учетная запись с правами мониторинга (рекомендуется пользователь с ролью clusterMonitor).

Рекомендация по подключению

При локальном мониторинге (ЕдиныйАгент на том же хосте, что и MongoDB) в конфигурации установите флажок Connect via 'localhost'?. Это позволит использовать loopback-адрес для подключения.

Для защищенного соединения можно настроить TLS (флажок Enable insecure TLS устанавливать не рекомендуется — используйте правильно настроенные сертификаты).

Шаг 0. Подготовка MongoDB к мониторингу

Данный этап выполняется непосредственно на сервере с MongoDB от имени администратора базы данных.

0.1 Подключение к MongoDB

Подключитесь к экземпляру MongoDB с помощью mongosh.

Без аутентификации:

mongosh

С аутентификацией (рекомендуется):

mongosh --username admin --password <пароль_admin> --authenticationDatabase admin

Переключитесь на административную базу данных:

use admin

Проверьте существующих пользователей (опционально):

db.getUsers()

Создайте пользователя для мониторинга с ролью clusterMonitor:

db.createUser({user: "dt_user", pwd: "<пароль>", roles: ["clusterMonitor"]})

Примечание: Роль clusterMonitor предоставляет необходимые права для сбора метрик производительности и состояния кластера, включая доступ к командам serverStatus(), dbStats() и другим диагностическим данным.

0.3 Проверка доступности баз данных

Убедитесь, что MongoDB работает корректно и базы данных доступны для мониторинга:

show dbs

Ожидаемый результат: список существующих баз данных.

Шаг 1. Загрузка расширения в Расширения

Если расширение еще не установлено в окружении:

  1. Откройте Расширения → раздел Extensions.
  2. Нажмите Загрузить Расширение 2.0 и выберите загрузку пользовательского / custom-расширения.
  3. Укажите файл .zip-пакета расширения MongoDB (доступен в каталоге Расширений или загружен из внешнего источника).
  4. Дождитесь успешной проверки подписи и загрузки.
  5. Активируйте нужную версию расширения для окружения.

Если расширение уже присутствует в Расширениях окружения, откройте его карточку и убедитесь, что требуемая версия активна. После активации перейдите на вкладку Конфигурация — можно добавлять конфигурацию мониторинга.

Шаг 2. Добавление конфигурации мониторинга

  1. Откройте Расширения → расширение MongoDB → вкладка Конфигурация.
  2. Нажмите Добавить конфигурацию мониторинга.

Шаг 3. Выбор источника мониторинга

Для типичного сценария «ЕдиныйАгент на хосте с MongoDB» выберите Мониторить локально и нужный хост. Убедитесь, что у хоста EEC отображается как «Включено».

Нажмите Следующий шаг.

Шаг 4. Параметры подключения к MongoDB

Поле Описание Пример
Port Порт MongoDB (по умолчанию 27017) 27017
User Пользователь с правами мониторинга (создан на шаге 0) dt_user
Password Пароль пользователя
Auth Mechanism Механизм аутентификации (оставьте пустым для использования стандартного)
Authentication Database База данных аутентификации (обычно admin) admin

Рекомендации по настройке:

  • Порт: Оставьте значение по умолчанию (27017), если только MongoDB не использует нестандартный порт.
  • Пользователь: Используйте учетную запись, созданную на шаге 0 с ролью clusterMonitor.
  • Authentication Database: Укажите admin (база данных, где создан пользователь).
  • Enable insecure TLS: Не устанавливайте данный флажок в production-средах. Используйте корректно настроенные сертификаты для TLS-соединений.
  • Connect via 'localhost'?: Установите флажок при локальном мониторинге (ЕдиныйАгент на том же хосте, что и MongoDB). Это гарантирует подключение через loopback-адрес.

Шаг 5. Ярлык конфигурации и наборы метрик

  • Оставьте конфигурацию включенной (Enabled).
  • Укажите понятный ярлык (Description), например имя кластера или окружения.
  • Рекомендуется включить все наборы функций:
    • Instance (метрики сервера)
    • Database (метрики баз данных)
  • Сохраните конфигурацию.

Шаг 6. Проверка статуса

В разделе Конфигурация расширения убедитесь, что:

  • Конфигурация включена.
  • Состояние отображается как Ok.
  • Указан корректный хост выполнения.

При статусе Ok можно перейти к дашборду кнопкой Перейти на дашборд.

Через 1–3 минуты в Ключ-АСТРОМ появляются сущности MongoDB Instance (а также Database — если они есть в MongoDB).

Контрольный список

Пункт
1 На сервере MongoDB создана учетная запись dt_user с ролью clusterMonitor.
2 Пакет расширения загружен в Расширения и активирован.
3 Конфигурация мониторинга добавлена и включена, состояние Ok.
4 Выбран корректный режим (локально / удаленно).
5 Указаны корректные параметры подключения (порт, пользователь, пароль, Authentication Database).
6 При локальном мониторинге установлен флажок Connect via 'localhost'?.
7 На дашбордах и в сущностях отображаются метрики MongoDB.

Возможные проблемы

Симптом Что проверить
Состояние конфигурации не Ok Сетевая доступность порта MongoDB (27017) с хоста ЕдиногоАгента / АктивногоШлюза, корректность учетных данных, статус EEC.
Ошибка авторизации Проверьте логин и пароль пользователя, а также Authentication Database (обычно admin). Убедитесь в наличии роли clusterMonitor.
Нет сущностей Database В MongoDB нет баз данных, либо еще не завершился первый цикл сбора.
Нулевые значения метрик Ожидаемо при отсутствии нагрузки; расширение отражает фактическое состояние СУБД.
Требуется удаленный сбор Группа АктивныхШлюзов с сетевым доступом к host:27017 и отдельная учетная запись с ролью clusterMonitor.
Ошибка подключения при TLS Проверьте сертификаты. Временно для тестирования можно установить флажок Enable insecure TLS (не рекомендуется для production).
Расширение не видит базы данных Проверьте права пользователя dt_user — необходима роль clusterMonitor. Также убедитесь, что базы данных существуют и доступны (show dbs).