mongodb监控

1. mongodb监控


服务上线后,运维要对mongodb进行监控。
监控一方面要安全问题服务是否异常,有无恶意写入或操作。
另一方看性能问题,比如流量增长情况,是否需要扩容。

2. serverStatus


serverStatus为mongodb的基本命令,用来查看系统信息。
在mongodb服务器终端输入命令:
db.serverStatus();

会返回下面东西
{
        "host" : "192.168.0.1:9980",
        "version" : "2.4.9",
        "process" : "mongod",
        "pid" : 17472,
        "uptime" : 183099,
        "uptimeMillis" : NumberLong(183099365),
        "uptimeEstimate" : 182091,
        "localTime" : ISODate("2014-03-29T09:26:03.779Z"),
        "asserts" : {
                "regular" : 0,
                "warning" : 0,
                "msg" : 0,
                "user" : 17,
                "rollovers" : 0
        },
        "connections" : {
                "current" : 55,
                "available" : 8137,
                "totalCreated" : NumberLong(147027)
        },
        "cursors" : {
                "totalOpen" : 0,
                "clientCursors_size" : 0,
                "timedOut" : 0
        }

截取了一部分。主要是服务器版本, 运行时间, 当前连接数等统计信息。

3. mongostat


mongostat是mongodb自带的工具。用来监控mongodb。
运行方式:
./bin/mongostat --host 192.168.0.1 --port 9980
输出:
insert  query update delete getmore command flushes mapped  vsize    res faults  locked db idx miss %     qr|qw   ar|aw  netIn netOut  conn    set repl       time 
    *0     *0     *0     *0       0     4|0       0  10.3g  21.4g    51m      0  test:0.0%          0       0|0     0|0   382b     7k    62 repl1  SEC   17:37:57


insert  
     每秒写入的值
getmore
    get more操作得罪
command
    每秒命令数, 如果为slave,表示 local|replicated 
mapped
   本地数据库大小
vsize
  占用虚拟内存大小
res
  常驻内存的大小
qr
   客户端等待读的长度
wr
  客户端等待写的长度
ar
  客户端活跃的读数
aw
   客户端活跃的写数
netIn
   流入的网络流量
netout 
   输出的网络流量
conn
   连接数
repl
  成员状态
     M master
    SEC secondary
    REC recovering
    UNK unknown
   SLV slave

上面这些参数,监控都需要关注。
  


你可能感兴趣的:(mongodb,数据库,监控)