内存使用率高,但不清楚内存去哪儿了

内存使用率高,但不清楚内存去哪儿了

我的系统是一个软件网络拦截器,运行在 Ubuntu 14.04.4 LTS(GNU/Linux 3.16.0-71-generic x86_64)上。我已将其部署在多个站点中,但其中一个站点出现了以下奇怪的问题。在系统运行期间,它会消耗大量内存,直到填满整个交换区并变得非常低。请注意,这不是我们输入最密集的安装之一。我的问题是,当我打开 htop 时,进程使用的内存量没有增加。因此,我关闭了系统的所有进程。此外,我们使用 MongoDB,它占用了大量内存,因此我也将其关闭。关闭所有程序后,CPU 几乎降至零,但仍有 20GB 被使用,似乎是由于某些内核问题而泄漏的。因此,我转向 /proc/meminfo,但结果根本没有告诉我有关丢失的内存在哪里的任何信息:

MemTotal:       32948744 kB
MemFree:        10695472 kB
MemAvailable:   10925256 kB
Buffers:           34780 kB
Cached:           294564 kB
SwapCached:          564 kB
Active:           262064 kB
Inactive:         158464 kB
Active(anon):      82344 kB
Inactive(anon):     8896 kB
Active(file):     179720 kB
Inactive(file):   149568 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:      16777180 kB
SwapFree:       16753824 kB
Dirty:             11816 kB
Writeback:             0 kB
AnonPages:         90708 kB
Mapped:            32500 kB
Shmem:                56 kB
Slab:             168804 kB
SReclaimable:     138864 kB
SUnreclaim:        29940 kB
KernelStack:        3040 kB
PageTables:         4600 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    33251552 kB
Committed_AS:     538280 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      203084 kB
VmallocChunk:   34359505748 kB
HardwareCorrupted:     0 kB
AnonHugePages:     18432 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       65472 kB
DirectMap2M:    33488896 kB

根据我在网上读到的有关 meminfo 输出的信息,这些数字根本就不对 - 没有大量的内存消耗者。

此外,根据 htop 的数据,以下是内存使用量最大的用户:

  840 _statsd    20   0 1181M 22672  4024 S  0.0  0.1  5h54:36 statsd /etc/statsd/localConfig.js
 1302 _graphite  20   0  145M 16044  2164 S  0.0  0.0  4h55:38 /usr/bin/python /usr/bin/carbon-cache --c
  837 _statsd    20   0 1178M 13892  3100 S  0.0  0.0  9:15.03 /usr/bin/nodejs proxy.js /etc/statsd/prox
20639 root       20   0  101M  6216  5244 S  0.0  0.0  0:00.03 sshd: paf [priv]
20820 root       20   0  101M  6196  5228 S  0.0  0.0  0:00.02 sshd: paf [priv]
20870 paf        20   0 22504  5208  3268 S  0.0  0.0  0:00.20 -bash
20732 paf        20   0 22408  4860  3020 S  0.0  0.0  0:00.25 -bash
20869 paf        20   0  101M  3692  2732 S  0.0  0.0  0:00.01 sshd: paf@pts/3
20731 paf        20   0  101M  3636  2672 S  0.0  0.0  0:00.12 sshd: paf@pts/1
21101 paf        20   0 26060  3300  2404 R  1.4  0.0  0:00.41 htop
    1 root       20   0 33976  2744  1292 S  0.0  0.0  0:34.74 /sbin/init

编辑(额外诊断):

~$ free -m
             total       used       free     shared    buffers     cached
Mem:         32176      23619       8556          0        130        838
-/+ buffers/cache:      22650       9526
Swap:        16383         37      16346

板顶:

 Active / Total Objects (% used)    : 631869 / 707961 (89.3%)
 Active / Total Slabs (% used)      : 23836 / 23836 (100.0%)
 Active / Total Caches (% used)     : 70 / 102 (68.6%)
 Active / Total Size (% used)       : 174386.89K / 194368.76K (89.7%)
 Minimum / Average / Maximum Object : 0.01K / 0.27K / 8.00K

  OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME
221169 198528  89%    0.10K   5671       39     22684K buffer_head
123690 121130  97%    0.19K   5890       21     23560K dentry
 82768  81847  98%    0.98K   5173       16     82768K ext4_inode_cache
 50708  31368  61%    0.57K   1811       28     28976K radix_tree_node
 39372  30686  77%    0.04K    386      102      1544K ext4_extent_status
 31790  31790 100%    0.12K    935       34      3740K kernfs_node_cache
 14091   6729  47%    0.19K    671       21      2684K kmalloc-192
 13376   8603  64%    0.06K    209       64       836K kmalloc-64
 13312  11934  89%    0.03K    104      128       416K kmalloc-32
 11776  11776 100%    0.03K     92      128       368K jbd2_revoke_record_s
  8500   7085  83%    0.05K    100       85       400K shared_policy_node
  8064   8064 100%    0.07K    144       56       576K Acpi-ParseExt
  7700   7700 100%    0.57K    275       28      4400K inode_cache
  7680   7680 100%    0.01K     15      512        60K kmalloc-8
  7424   7424 100%    0.02K     29      256       116K kmalloc-16
  6928   3739  53%    0.25K    433       16      1732K kmalloc-256
  5712   5265  92%    0.08K    112       51       448K anon_vma
  5088   4025  79%    0.12K    159       32       636K kmalloc-128
  4992   4992 100%    0.06K     78       64       312K ext4_free_data
  4312   4312 100%    0.07K     77       56       308K ext4_io_end
  3948   3948 100%    0.09K     94       42       376K kmalloc-96
  3876   3876 100%    0.04K     38      102       152K Acpi-Namespace
  3575   2475  69%    0.63K    143       25      2288K proc_inode_cache
  2232   2124  95%    0.11K     62       36       248K jbd2_journal_head
  2016   2016 100%    0.14K     72       28       288K ext4_groupinfo_4k
  1888   1459  77%    0.50K    118       16       944K kmalloc-512
  1804   1804 100%    0.36K     82       22       656K blkdev_requests
  1575   1479  93%    0.31K     63       25       504K nf_conntrack_ffffffff81cd3800
  1512   1512 100%    0.11K     42       36       168K task_delay_info
  1400   1400 100%    0.62K     56       25       896K sock_inode_cache
  1232   1158  93%    1.00K     77       16      1232K kmalloc-1024
  1104   1104 100%    0.09K     24       46        96K ftrace_event_file
  1104   1048  94%    0.66K     46       24       736K shmem_inode_cache
  1020   1020 100%    0.02K      6      170        24K numa_policy
   903    903 100%    0.38K     43       21       344K scsi_cmd_cache
   896    850  94%    2.00K     56       16      1792K kmalloc-2048
   819    819 100%    0.10K     21       39        84K blkdev_ioc
   810    810 100%    1.06K     27       30       864K UDPv6
   732    403  55%    2.55K     61       12      1952K task_struct
   560    544  97%    0.25K     35       16       140K dquot
   510    510 100%    0.08K     10       51        40K Acpi-State
   510    510 100%    0.05K      6       85        24K jbd2_journal_handle
   504    504 100%    1.75K     28       18       896K TCP
   476    476 100%    1.12K     17       28       544K signal_cache
   368    368 100%    0.25K     23       16        92K tw_sock_TCP
   320    320 100%    1.94K     20       16       640K TCPv6
   315    315 100%    2.05K     21       15       672K idr_layer_cache
   315    276  87%    2.06K     21       15       672K sighand_cache
   288    288 100%    0.25K     18       16        72K tw_sock_TCPv6
   256    256 100%    0.06K      4       64        16K kmem_cache_node
   256    256 100%    0.02K      1      256         4K jbd2_revoke_table_s
   234    234 100%    0.88K     13       18       208K mm_struct
   225    225 100%    0.62K      9       25       144K files_cache
   219    219 100%    0.05K      3       73        12K ip_fib_trie
   204    204 100%    0.94K     12       17       192K UNIX
   192    168  87%    4.00K     24        8       768K kmalloc-4096
   192    192 100%    0.12K      6       32        24K ext4_allocation_context
   150    150 100%    0.16K      6       25        24K sigqueue

有人可以给我一些关于如何进一步调查这个问题的线索吗?

相关内容