环境升级加固后MongoDB Ops Manager部署监控失效排查求助
MongoDB Ops Manager版本识别故障排查
可能导致版本无法识别的原因
- 磁盘上的MongoDB二进制文件被误删除或移动:
currentState.VersionsOnDisk为空,说明Ops Manager代理在指定路径下找不到任何MongoDB版本文件 - 权限变更:运行Ops Manager自动化代理的用户(通常是
mongodb-mms-automation-agent)失去了MongoDB安装目录的读写/执行权限,无法扫描目录内容 - 路径配置失效:Ops Manager中设置的MongoDB安装路径被修改,代理指向了空目录或不存在的路径
- 代理服务异常:自动化代理进程未正常启动,或配置文件被篡改,无法完成磁盘版本扫描任务
需核对的Linux/Ops Manager必要配置
Linux系统侧
- 权限检查:确保
mongodb-mms-automation-agent用户对MongoDB安装目录(默认/opt/mongodb)拥有r-x权限,可执行ls -ld /opt/mongodb查看权限,用chown -R mongodb-mms-automation-agent:mongodb-mms-automation-agent /opt/mongodb修正 - SELinux策略:若开启SELinux,需确认是否允许代理进程访问MongoDB路径,可临时执行
sudo setenforce 0测试,问题解决后添加永久规则:sudo semanage fcontext -a -t mongod_var_lib_t "/opt/mongodb(/.*)?" && sudo restorecon -Rv /opt/mongodb - 防火墙规则:确保代理服务器与Ops Manager控制台之间的8080、8443端口通信不受限制
Ops Manager侧
- 核对自动化部署配置中的
MongoDB Installation Directory路径,确认路径存在且包含MongoDB版本目录 - 检查代理配置文件
/etc/mongodb-mms/automation-agent.config中的mmsGroupId、mmsApiKey是否正确,且代理已成功注册到控制台 - 确认Ops Manager的版本库中已添加MongoDB 5.0.18版本(进入
Deployment > Automation > Versions页面查看)
服务器升级/加固是否会引发该报错
是的,服务器升级或加固操作极有可能触发此问题:
- 系统升级可能重置文件权限,导致代理用户失去对MongoDB目录的访问权限
- 加固操作(如清理无用文件、收紧目录权限、修改SELinux规则)可能误删除MongoDB二进制文件,或阻断代理进程的扫描权限
- 系统升级后依赖库变更,可能导致自动化代理进程无法正常启动,进而无法完成磁盘版本检测
Ops Manager检测磁盘MongoDB版本的特定设置
- 自动化代理用户需对MongoDB安装目录拥有读取和执行权限,能遍历目录下的版本子目录
- MongoDB版本目录需符合规范:以
mongodb-linux-x86_64-<version>命名,且目录下bin文件夹中存在mongod二进制文件 - 代理配置文件中
automation.versionsDirectory参数需正确指向MongoDB安装目录(默认无需修改,若自定义路径需手动配置) - 代理进程需能正常执行
mongod --version命令,以此验证并读取版本信息
内容的提问来源于stack exchange,提问作者mikefreudiger
相关产品推荐
相关产品推荐

