6 Плагин MongoDB
Обзор
Файл конфигурации Zabbix агент 2 используется для настройки плагинов. Эти параметры конфигурации Zabbix агент 2 поддерживаются для работы плагина MongoDB.
Рекомендуется указывать их в отдельном файле конфигурации (например, mongo.conf), а затем использовать директиву Include для добавления этого файла в конфигурацию Zabbix агент 2.
Плагин MongoDB является загружаемым плагином, доступен и полностью описан в репозитории плагина MongoDB.
Обратите внимание:
- Значения по умолчанию отражают значения по умолчанию процесса, а не значения в поставляемых файлах конфигурации.
- Значения поддерживают переменные окружения.
- Zabbix поддерживает файлы конфигурации только в кодировке UTF-8 без BOM.
- Комментарии, начинающиеся с "#", поддерживаются только в начале строки.
Параметры
| Параметр | Описание |
|---|---|
| -V --version | Вывести версию плагина и информацию о лицензии. |
| -h --help | Вывести справочную информацию (сокращённая форма). |
| -t, --test <item key> | Запустить плагин для тестирования (конфигурация плагина игнорируется). |
Параметры
При подключении к MongoDB плагин проверяет свою конфигурацию в определенном порядке, который определяет, какое значение использовать. Порядок, от наивысшего к наименьшему приоритету, следующий:
- Параметры, указанные в URI подключения (например, параметры запроса, определенные после
?вPlugins.MongoDB.Sessions.<session_name>.Uri, имеют наивысший приоритет). - Параметры в ключе элемента данных Zabbix агент 2 (например, mongodb.collection.stats).
- Параметры, определенные в именованной сессии (например,
Plugins.MongoDB.Sessions.<SessionName>.User,Plugins.MongoDB.Sessions.<SessionName>.Password). - Значения по умолчанию (например,
Plugins.MongoDB.Default.User,Plugins.MongoDB.Default.Password).
Например:
- Если вы укажете базу данных для аутентификации подключения к серверу MongoDB в параметре
*.<SessionName>.Uri(например,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), то плагин будет считать, что параметр*.<SessionName>.AuthSourceустановлен вadmin, даже если параметр*.<SessionName>.AuthSourceзадан с другим значением. - Если вы укажете URI в параметре
*.<SessionName>.Uri(например,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), но предоставите имя пользователя и пароль в ключе элемента данных Zabbix агент 2, плагин будет использовать имя пользователя и пароль из ключа элемента данных, даже еслиPlugins.MongoDB.Sessions.<SessionName>.UserиPlugins.MongoDB.Sessions.<SessionName>.Passwordнастроены.
Если используется схема mongodb+srv://, URI может получать параметры из DNS TXT-записи.
Параметры, полученные из этой TXT-записи, переопределяют все остальные настройки, включая параметры URI, параметры ключа элемента данных Zabbix Agent 2 и параметры сессии.
Для имени узла, используемого в строке подключения, может существовать только одна TXT-запись.
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.MongoDB.System.Path | no | Путь к исполняемому файлу плагина MongoDB. Пример использования: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb |
||
| Plugins.MongoDB.Timeout | no | 1-30 | global timeout | Тайм-аут выполнения запроса (время в секундах, в течение которого ожидается завершение запроса до его принудительного завершения). |
| Plugins.MongoDB.KeepAlive | no | 60-900 | 300 | Максимальное время ожидания (в секундах) перед закрытием неиспользуемых подключений плагина. |
| Plugins.MongoDB.Sessions.<SessionName>.Uri | no | tcp://127.0.0.1:27017 |
Строка подключения именованной сессии. <SessionName> — задает имя сессии для использования в ключах элементов данных. Должна соответствовать формату URI. Поддерживаемые схемы: mongodb:// и mongodb+srv://; схема tcp:// устарела и сохранена для обратной совместимости с существующими конфигурациями.Порт можно не указывать (по умолчанию = 27017). Примеры: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Sessions.<SessionName>.User | no | Имя пользователя именованной сессии. <SessionName> — задает имя сессии для использования в ключах элементов данных. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Password | no | Пароль именованной сессии. <SessionName> — задает имя сессии для использования в ключах элементов данных. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Direct | no | false |
Метод подключения, используемый для определения того, должно ли быть включено или отключено автоматическое обнаружение узлов набора реплик MongoDB. <SessionName> — задает имя сессии для использования в ключах элементов данных. Поддерживаемые значения: true — плагин будет подключаться только к указанному серверу, игнорируя другие участники набора реплик;false — плагин будет автоматически обнаруживать все узлы в наборе реплик.Если используется схема tcp:// (устаревшая), по умолчанию для параметра устанавливается значение true. |
|
| Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism | no | Механизм аутентификации для подключения к серверу MongoDB. <SessionName> — задает имя сессии для использования в ключах элементов данных. Поддерживаемые значения: SCRAM-SHA-1, SCRAM-SHA-256 и MONGODB-X509. |
||
| Plugins.MongoDB.Sessions.<SessionName>.AuthSource | no | admin |
База данных для аутентификации подключения к серверу MongoDB. <SessionName> — задает имя сессии для использования в ключах элементов данных. Если используется механизм аутентификации MONGODB-X509, этот параметр автоматически устанавливается в $external; изменение его на любое другое значение приведет к ошибке при запуске. |
|
| Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet | no | Имя набора реплик, используемое для автоматического обнаружения узлов набора реплик MongoDB. <SessionName> — задает имя сессии для использования в ключах элементов данных. Если этот параметр используется со схемой mongodb+srv://, он будет вести себя так, как если бы было предоставлено несколько URL; DNS-сервер может содержать TXT-запись, которая может переопределить этот (или любой другой) параметр.Недоступен, если параметр Plugins.MongoDB.Sessions.<SessionName>.Direct установлен в true — агент не сможет запуститься. |
||
| Plugins.MongoDB.Sessions.<SessionName>.ReadPreference | no | Порядок подключения к узлам набора реплик MongoDB или резервного переключения. <SessionName> — задает имя сессии для использования в ключах элементов данных. Поддерживаемые значения: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode и NearestMode.Недоступен, если параметр Plugins.MongoDB.Sessions.<SessionName>.Direct установлен в true — агент не сможет запуститься. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSConnect | no | Тип шифрования для обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. <SessionName> — задает имя сессии для использования в ключах элементов данных. Поддерживаемые значения: required — требуется TLS-подключение;verify\_ca — проверять сертификаты;verify\_full — проверять сертификаты и IP-адрес.Поддерживается начиная с версии плагина 1.2.1. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full | Полный путь к файлу, содержащему сертификаты корневого(ых) центра(ов) сертификации для проверки сертификата удаленной стороны; используется для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. <SessionName> — задает имя сессии для использования в ключах элементов данных. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified | Полный путь к файлу, содержащему сертификат агента или цепочку сертификатов; используется для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. <SessionName> — задает имя сессии для использования в ключах элементов данных. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified | Полный путь к файлу, содержащему закрытый ключ базы данных, используемый для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. <SessionName> — задает имя сессии для использования в ключах элементов данных. |
||
| Plugins.MongoDB.Default.Uri | no | tcp://127.0.0.1:27017 |
URI по умолчанию для подключения к MongoDB. Должен соответствовать формату URI. Поддерживаемые схемы: mongodb:// и mongodb+srv://.Устаревшая схема: tcp:// (используется по умолчанию для обратной совместимости с существующими конфигурациями).Порт можно не указывать (по умолчанию = 27017). Примеры: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Default.User | no | Имя пользователя по умолчанию для подключения к MongoDB. | ||
| Plugins.MongoDB.Default.Password | no | Пароль по умолчанию для подключения к MongoDB. | ||
| Plugins.MongoDB.Default.Direct | no | false |
Метод подключения по умолчанию, используемый для определения того, должно ли быть включено или отключено автоматическое обнаружение узлов набора реплик MongoDB. Поддерживаемые значения: true — плагин будет подключаться только к указанному серверу, игнорируя другие участники набора реплик;false — плагин будет автоматически обнаруживать все узлы в наборе реплик.Если используется схема tcp:// (устаревшая), по умолчанию для параметра устанавливается значение true. |
|
| Plugins.MongoDB.Default.AuthMechanism | no | Механизм аутентификации по умолчанию для подключения к серверу MongoDB. Поддерживаемые значения: SCRAM-SHA-1, SCRAM-SHA-256 и MONGODB-X509.Если значение не указано ни здесь, ни в ключе элемента данных, ни в именованной сессии, ни в URI, будет использоваться механизм на основе SCRAM (если указано имя пользователя; в противном случае аутентификация использоваться не будет). |
||
| Plugins.MongoDB.Default.AuthSource | no | admin |
База данных по умолчанию для аутентификации подключения к серверу MongoDB. Если используется механизм аутентификации MONGODB-X509, этот параметр автоматически устанавливается в $external; изменение его на любое другое значение приведет к ошибке при запуске. |
|
| Plugins.MongoDB.Default.ReplicaSet | no | Имя набора реплик по умолчанию; используется для автоматического обнаружения узлов набора реплик MongoDB. Если этот параметр используется со схемой mongodb+srv://, он будет вести себя так, как если бы было предоставлено несколько URL; DNS-сервер может содержать TXT-запись, которая может переопределить этот (или любой другой) параметр.Недоступен, если параметр Plugins.MongoDB.Default.Direct установлен в true — агент не сможет запуститься. |
||
| Plugins.MongoDB.Default.ReadPreference | no | Порядок подключения по умолчанию к узлам набора реплик MongoDB или резервного переключения. Поддерживаемые значения: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode и NearestMode.Недоступен, если параметр Plugins.MongoDB.Default.Direct установлен в true — агент не сможет запуститься. |
||
| Plugins.MongoDB.Default.TLSConnect | no | Тип шифрования по умолчанию для обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. Поддерживаемые значения: required — требуется TLS-подключение.verify\_ca — проверяются сертификаты.verify\_full — проверяются сертификаты и IP-адрес.Если значение не указано ни здесь, ни в ключе элемента данных, ни в именованной сессии, ни в URI, TLS-подключение установлено не будет. |
||
| Plugins.MongoDB.Default.TLSCAFile | no | Путь по умолчанию к файлу, содержащему сертификаты корневого(ых) центра(ов) сертификации для проверки сертификата удаленной стороны. Используется для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. | ||
| Plugins.MongoDB.Default.TLSCertFile | no | Путь по умолчанию к файлу, содержащему клиентский сертификат MongoDB или цепочку сертификатов. Используется для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. | ||
| Plugins.MongoDB.Default.TLSKeyFile | no | Путь по умолчанию к файлу, содержащему закрытый ключ клиента MongoDB, используемый для зашифрованного обмена данными между Zabbix агент 2 и отслеживаемыми базами данных. |
См. также:
- Описание общих параметров конфигурации Zabbix агент 2: Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- Инструкции по настройке plugins