理解mongostat的结果

12

我正在尝试理解mongostat的结果:

例子

insert  query update delete getmore command flushes mapped  vsize    res faults locked % idx  
0      2      4      0       0      10       0   976m  2.21g   643m      0      0.1          0       
0      1      0      0       0       4       0   976m  2.21g   643m      0        0          0       
0      0      0      0       0       1       0   976m  2.21g   643m      0        0          0    

我明白了

mapped - 976m
vsize-2.2.g
res - 643m
  • res - 标识占用了多少RAM,因此我数据库中的大约650MB是在RAM中的
  • mapped - 数据库总大小(通过内存映射文件计算)
  • vsize - ???

不确定为什么vsize很重要,或者它在这种情况下确切意味着什么 - 我正在运行m1.large,所以我有大约400GB的硬盘空间+8GB的RAM。

可以有人帮我解释一下吗?

  1. 我是否在正确的页面上
  2. 我应该在生产环境中监视哪些统计信息?
3个回答

9

这个链接应该能够提供足够的信息。

mapped       - amount of data mmaped (total data size) megabytes
vsize        - virtual size of process in megabytes
res          - resident size of process in megabytes

3

3

1)我进入了正确的页面

mongostat实际上不是一个"实时监控"工具。它主要用于连接到特定的服务器并观察特定情况(当此作业运行时发生了什么?)。但它并不适用于跟踪性能随时间变化的情况。

通常,对于服务器监视,您需要使用像Zabbix或Cacti或Munin这样的工具。或者使用一些第三方服务器监视器。 MongoDB网站提供了列表

2)我在生产环境中应该监视哪些统计信息

您应该监视与任何服务器相同的基本统计信息:

  1. CPU
  2. 内存
  3. 磁盘IO
  4. 网络流量

针对MongoDB,您需要运行db.serverStatus()并跟踪以下内容:

  1. 操作计数器
  2. 连接数
  3. 索引计数器

请注意,这些都是递增计数器,因此您需要在监视系统(Zabbix、Cacti等)中创建正确的"计数器类型"。其中一些监控程序已经提供了MongoDB插件。

还要注意,MongoDB有一个名为MMS的"免费"监控服务。我说"免费"是因为使用MMS需要接受销售人员的来电。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接