mongo-exporter获取mongo指标数据测试
1. Docker部署mongo
# 创建保存mongo数据与mogo配置文件目录
mkdir /home/wjy/{data,etc}
# 进入 /home/wjy/etc编写默认的配置文件(容器内拷贝出来、百度、下载安装程序)
# 默认未创建用户前不开启security
# docker run 启动单实例的mongo服务
docker run -itd -p 27017:27017 --name mongo -v /home/wjy/mongo/[data:/data/db](http://data/data/db) -v /home/wjy/mongo/[etc:/etc/mongo](http://etc/etc/mongo) mongo --config /etc/mongo/mongod.conf
2. 配置文件信息
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# Where and how to store data.
storage:
dbPath: /data/db
journal:
enabled: true
# engine:
# wiredTiger:
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0
# how the process runs
processManagement:
timeZoneInfo: /usr/share/zoneinfo
# 未创建Admin角色前注释掉,不开启验证
security:
authorization: enabled
#operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options:
#auditLog:
#snmp:
3. 创建连接账号
# 进入容器
docker ps
docker exec -it <container_id> bash
# 客户端连接mongo
mongo
# 使用admin库创建用户
use admin;
db.createUser({
user: 'admin', // 用户名
pwd: '123456', // 密码
roles:[{
role: 'root', // 角色
db: 'admin' // 数据库
}]
})
# 推出容器,修改配置文件,开启security
exit
# 重启容器
docker ps|grep mongo
docker restart <container_id>
4. 使用mongo-exporter采集mongo指标数据
# 直接通过运行mongodb-exporter二进制程序
./mongodb-exporter --mongodb.uri=[mongodb://admin:[email protected]:27017/](mongodb://admin:[email protected]:27017/) --web.listen-address=:9999
# --mongodb.uri 指定连接mongo-server的连接参数,连接参数需要指定账户名与密码
# mongodb://<username>:<password>@<ip>:<port>/<db_name>?k=v&k=v
# --web.listen-address 指定mongo-exporter web界面监听端口
# 打开浏览器,访问对应主机的9999端口就可看到输出