3

У меня есть микросервер HP с 4 гигабайтами, рядом с которым стоит довольно миниатюрный рабочий стол LXDE. Это прежде всего веб-сервер и небольшой виртуальный сервер. Он использует стабильную версию Debian 7.2.

# free -m
             total       used       free     shared    buffers     cached
Mem:          3840       3262        577          0         19        238
-/+ buffers/cache:       3005        834
Swap:         7628         12       7616

Из этого я заключаю, что это не обычная проблема, которая пугает людей, увеличивающих размер кэша дисков. Если я заставлю кэши падать, это освободит всего около 100 мегабайт, так что я не думаю, что здесь проблема.

То, что я пытаюсь выяснить, это то, что использует 3 гигабайта.

# cat /proc/meminfo 
MemTotal:        3932292 kB
MemFree:          919468 kB
Buffers:            2356 kB
Cached:            74220 kB
SwapCached:         1932 kB
Active:           201688 kB
Inactive:          44464 kB
Active(anon):     153004 kB
Inactive(anon):    24032 kB
Active(file):      48684 kB
Inactive(file):    20432 kB
Unevictable:          16 kB
Mlocked:              16 kB
SwapTotal:       7812088 kB
SwapFree:        7798840 kB
Dirty:                40 kB
Writeback:             0 kB
AnonPages:        167800 kB
Mapped:           362992 kB
Shmem:              7412 kB
Slab:              43164 kB
SReclaimable:      10728 kB
SUnreclaim:        32436 kB
KernelStack:        3688 kB
PageTables:        14072 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     9778232 kB
Committed_AS:    1364204 kB
VmallocTotal:   34359738367 kB
VmallocUsed:     2580308 kB
VmallocChunk:   34357040804 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      124480 kB
DirectMap2M:     3938304 kB
DirectMap1G:           0 kB

Взглянув на /proc/meminfo , добавление всех активных / неактивных разделов составляет всего около 1 ГБ, в результате чего мне остается еще 2 ГБ. Это также хорошо согласуется с выводом top и тем, где я должен субъективно рассматривать то, что работает в системе прямо сейчас.

Некоторые другие посты предлагали посмотреть на номер Slab: здесь, но это всего лишь 43 мегабайта.

Любая идея, где еще я должен искать эти недостающие 2 гигабайта?

2 ответа2

2

Вы можете увидеть, что съедает вашу память с помощью этой команды.

ps -e -orss=,args= | sort -b -k1,1n

0

Если у вас возникла проблема с виртуальной машиной, возможно, вы столкнулись с чем-то, что называется "Раздувание". По сути, это способ для хост-системы применить давление памяти к гостевой ОС, потребляя выделение памяти гостем, когда другие хосты начинают использовать значительный объем памяти.

http://www.vfrank.org/2013/09/18/understanding-vmware-ballooning/

Если вы используете VMware, запустите команду

vmware-toolbox-cmd stat balloon

Это покажет количество всплывающей памяти. Я бы рискнул предположить, что именно здесь находятся ваши 2 ГБ памяти, и это будет вашим ответом на использование вашей другой памяти. Какой бы виртуальный хост использовал его.

Другие источники: обнаружение раздувания памяти внутри затронутой виртуальной машины

Отключите всплывающую память, чтобы подтвердить проблему.

Unballooning memory: «Unballooning» RAM, которая была взорвана VMware

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .