Мониторинг MongoDB с помощью Proto Observability
Сбор метрик MongoDB
Сбор метрик MongoDB
Конфигурация MongoDB
-
Создайте пользователя с правами read-only для агента ProtoOBP в admin базе данных MongoDB:
use admin db.auth("admin", "<YOUR_PASSWORD>") # Для MongoDB 2.x db.addUser("protoobp", "protoobp", true) # Для MongoDB 3.x db.createUser({ "user": "protoobp", "pwd": "protoobp", "roles": [ { role: "read", db: "admin" }, { role: "clusterMonitor", db: "admin" }, { role: "read", db: "local" } ] })
Конфигурация ProtoOBP агента
Если агент запускается в виде службы systemd на хосте
-
В файле конфигурации ProtoOBP агента (/etc/protoobp-agent/conf.d/mongo.d/conf.yaml) укажите адрес и порт MongoDB и учетную запись под которой агент сможет подключиться к базе :
init_config: instances: - hosts: - mongodb:27017 username: protoobp password: protoobp
-
Перезапустите ProtoOBP агента выполнив
systemctl restart protoobp-agent
Если агент запускается в виде Docker контейнера
- Добавьте следующие лейблы к Docker контейнеру с MongoDB:
В docker-compose.yaml
labels:
com.protoobp.ad.check_names: '["mongo"]'
com.protoobp.ad.init_configs: "[{}]"
com.protoobp.ad.instances: '[{"hosts": ["%%host%%:%%port%%"], "username":"protoobp", "password":"protoobp"}]'
или в Dockerfile
LABEL "com.protoobp.ad.check_names"='["mongo"]'
LABEL "com.protoobp.ad.init_configs"='[{}]'
LABEL "com.protoobp.ad.instances"='[{"hosts": ["%%host%%:%%port%%"], "username":"protoobp", "password":"protoobp"}]'
```
Обратите внимание
Для отображения нового хоста СУБД следует обновить страницу браузера целиком (кнопкаОбновить
в правом верхнем углу веб-консоли обновляет только значения метрик на дашборде, но не список серверов).