Назад | Перейти на главную страницу

Что использует оперативную память на этом сервере Ubuntu 12.04.2?

У меня два сервера в пуле с Nginx, PHP5-FPM и Memcached. По какой-то причине кажется, что первый сервер в пуле необъяснимым образом теряет около 2 ГБ ОЗУ. Я не могу объяснить, куда он идет.

После перезагрузки все возвращается в нормальное состояние, но через несколько часов оперативная память снова используется.

Сначала я думал, что дело в memcached, но в конце концов я убил все процессы, которые мог убить, и память не была освобождена. Даже инициализация 1 не освободила память.

ipcs -m пуст, и slabtop выглядит примерно так же на этом сервере и на сервере в пуле, который использует очень мало памяти.

df показывает около 360 КБ в tmpfs

Если это уместно, два сервера почти идентичны в том, что они оба работают под одной и той же ОС с одинаковым уровнем обновлений на одном гипервизоре (VMWare ESXi 4.1) на разных хостах, но с одинаковым оборудованием. Различия заключаются в следующем:

Вот результат команды free -m ...

             total       used       free     shared    buffers     cached
Mem:          3953       3458        494          0        236        475
-/+ buffers/cache:       2746       1206
Swap:         1023          0       1023

Вот / proc / meminfo ...

MemTotal:        4048392 kB
MemFree:          506576 kB
Buffers:          242252 kB
Cached:           486796 kB
SwapCached:            8 kB
Active:           375240 kB
Inactive:         369312 kB
Active(anon):      12320 kB
Inactive(anon):     3596 kB
Active(file):     362920 kB
Inactive(file):   365716 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:       1048572 kB
SwapFree:        1048544 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:         15544 kB
Mapped:             3084 kB
Shmem:               412 kB
Slab:              94516 kB
SReclaimable:      75104 kB
SUnreclaim:        19412 kB
KernelStack:         632 kB
PageTables:         1012 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     3072768 kB
Committed_AS:      20060 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      281340 kB
VmallocChunk:   34359454584 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       59392 kB
DirectMap2M:     4134912 kB

Вот список процессов на тот момент ...

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  24336  2160 ?        Ss   Jul22   0:09 /sbin/init
root         2  0.0  0.0      0     0 ?        S    Jul22   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Jul22   0:38 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S    Jul22   0:00 [kworker/u:0]
root         6  0.0  0.0      0     0 ?        S    Jul22   0:04 [migration/0]
root         7  0.0  0.0      0     0 ?        S    Jul22   0:32 [watchdog/0]
root         8  0.0  0.0      0     0 ?        S    Jul22   0:04 [migration/1]
root        10  0.0  0.0      0     0 ?        S    Jul22   0:22 [ksoftirqd/1]
root        11  0.0  0.0      0     0 ?        S    Jul22   0:15 [kworker/0:1]
root        12  0.0  0.0      0     0 ?        S    Jul22   0:31 [watchdog/1]
root        13  0.0  0.0      0     0 ?        S    Jul22   0:04 [migration/2]
root        15  0.0  0.0      0     0 ?        S    Jul22   0:04 [ksoftirqd/2]
root        16  0.0  0.0      0     0 ?        S    Jul22   0:14 [watchdog/2]
root        17  0.0  0.0      0     0 ?        S    Jul22   0:04 [migration/3]
root        19  0.0  0.0      0     0 ?        S    Jul22   0:04 [ksoftirqd/3]
root        20  0.0  0.0      0     0 ?        S    Jul22   0:11 [watchdog/3]
root        21  0.0  0.0      0     0 ?        S<   Jul22   0:00 [cpuset]
root        22  0.0  0.0      0     0 ?        S<   Jul22   0:00 [khelper]
root        23  0.0  0.0      0     0 ?        S    Jul22   0:00 [kdevtmpfs]
root        24  0.0  0.0      0     0 ?        S<   Jul22   0:00 [netns]
root        25  0.0  0.0      0     0 ?        S    Jul22   0:02 [sync_supers]
root        26  0.0  0.0      0     0 ?        S    Jul22   0:21 [kworker/u:1]
root        27  0.0  0.0      0     0 ?        S    Jul22   0:00 [bdi-default]
root        28  0.0  0.0      0     0 ?        S<   Jul22   0:00 [kintegrityd]
root        29  0.0  0.0      0     0 ?        S<   Jul22   0:00 [kblockd]
root        30  0.0  0.0      0     0 ?        S<   Jul22   0:00 [ata_sff]
root        31  0.0  0.0      0     0 ?        S    Jul22   0:00 [khubd]
root        32  0.0  0.0      0     0 ?        S<   Jul22   0:00 [md]
root        34  0.0  0.0      0     0 ?        S    Jul22   0:04 [khungtaskd]
root        35  0.0  0.0      0     0 ?        S    Jul22   0:15 [kswapd0]
root        36  0.0  0.0      0     0 ?        SN   Jul22   0:00 [ksmd]
root        37  0.0  0.0      0     0 ?        SN   Jul22   0:00 [khugepaged]
root        38  0.0  0.0      0     0 ?        S    Jul22   0:00 [fsnotify_mark]
root        39  0.0  0.0      0     0 ?        S    Jul22   0:00 [ecryptfs-kthrea]
root        40  0.0  0.0      0     0 ?        S<   Jul22   0:00 [crypto]
root        48  0.0  0.0      0     0 ?        S<   Jul22   0:00 [kthrotld]
root        50  0.0  0.0      0     0 ?        S    Jul22   2:59 [kworker/1:1]
root        51  0.0  0.0      0     0 ?        S    Jul22   0:00 [scsi_eh_0]
root        52  0.0  0.0      0     0 ?        S    Jul22   0:00 [scsi_eh_1]
root        57  0.0  0.0      0     0 ?        S    Jul22   0:09 [kworker/3:1]
root        74  0.0  0.0      0     0 ?        S<   Jul22   0:00 [devfreq_wq]
root       114  0.0  0.0      0     0 ?        S    Jul22   0:00 [kworker/3:2]
root       128  0.0  0.0      0     0 ?        S    Jul22   0:00 [kworker/1:2]
root       139  0.0  0.0      0     0 ?        S    Jul22   0:00 [kworker/0:2]
root       249  0.0  0.0      0     0 ?        S<   Jul22   0:00 [mpt_poll_0]
root       250  0.0  0.0      0     0 ?        S<   Jul22   0:00 [mpt/0]
root       259  0.0  0.0      0     0 ?        S    Jul22   0:00 [scsi_eh_2]
root       273  0.0  0.0      0     0 ?        S    Jul22   0:20 [jbd2/sda1-8]
root       274  0.0  0.0      0     0 ?        S<   Jul22   0:00 [ext4-dio-unwrit]
root       377  0.0  0.0      0     0 ?        S    Jul22   0:26 [jbd2/sdb1-8]
root       378  0.0  0.0      0     0 ?        S<   Jul22   0:00 [ext4-dio-unwrit]
root       421  0.0  0.0  17232   584 ?        S    Jul22   0:00 upstart-udev-bridge --daemon
root       438  0.0  0.0  21412  1176 ?        Ss   Jul22   0:00 /sbin/udevd --daemon
root       446  0.0  0.0      0     0 ?        S<   Jul22   0:00 [rpciod]
root       448  0.0  0.0      0     0 ?        S<   Jul22   0:00 [nfsiod]
root       612  0.0  0.0  21408   772 ?        S    Jul22   0:00 /sbin/udevd --daemon
root       613  0.0  0.0  21728   924 ?        S    Jul22   0:00 /sbin/udevd --daemon
root       700  0.0  0.0      0     0 ?        S<   Jul22   0:00 [kpsmoused]
root       849  0.0  0.0  15188   388 ?        S    Jul22   0:00 upstart-socket-bridge --daemon
root       887  0.0  0.0      0     0 ?        S    Jul22   0:00 [lockd]
root       919  0.0  0.0  14504   952 tty4     Ss+  Jul22   0:00 /sbin/getty -8 38400 tty4
root       922  0.0  0.0  14504   952 tty5     Ss+  Jul22   0:00 /sbin/getty -8 38400 tty5
root       924  0.0  0.0  14504   944 tty2     Ss+  Jul22   0:00 /sbin/getty -8 38400 tty2
root       925  0.0  0.0  14504   944 tty3     Ss+  Jul22   0:00 /sbin/getty -8 38400 tty3
root       930  0.0  0.0  14504   952 tty6     Ss+  Jul22   0:00 /sbin/getty -8 38400 tty6
root       940  0.0  0.0      0     0 ?        S    Jul22   0:07 [flush-8:0]
root      1562  0.0  0.0  58792  1740 tty1     Ss   Jul22   0:00 /bin/login --     
root     12969  0.0  0.0      0     0 ?        S    07:18   0:02 [kworker/2:2]
root     30051  0.0  0.0      0     0 ?        S    10:13   0:00 [flush-8:16]
root     30909  0.0  0.0      0     0 ?        S    10:14   0:00 [kworker/2:1]
johncc   30921  0.2  0.2  26792  9360 tty1     S    10:17   0:00 -bash
root     31089  0.0  0.0      0     0 ?        S    10:18   0:00 [kworker/0:0]
root     31099  0.0  0.0  42020  1808 tty1     S    10:19   0:00 sudo -i
root     31100  0.2  0.1  22596  5168 tty1     S    10:19   0:00 -bash
root     31187  0.0  0.0      0     0 ?        S    10:19   0:00 [kworker/2:0]
root     31219  0.0  0.0  16880  1252 tty1     R+   10:22   0:00 ps aux
root     31220  0.0  0.0  53924   536 tty1     R+   10:22   0:00 curl -F sprunge=<- http://sprunge.us

Может ли кто-нибудь подсказать, что попробовать дальше или как отладить эту проблему? Я в недоумении!

Машина является виртуальным гостем, работающим на ESXi гипервизор. Что о раздутие памяти? Прежде всего, я бы порекомендовал вам проверить статистику памяти ESXi / vCenter / балуна этого гостя.

Может случиться так, что гипервизор попросил гостя «надуть» баллон, чтобы выделить дополнительную память, например для других бегущих гостей. Но для этого необходимо загрузить драйвер балуна, который доступен как модуль ядра. vmmemctl.

Наконец, очевидный вопрос может заключаться в том, установлены ли и запущены у гостя инструменты vmware, поскольку я не вижу никаких связанных процессов в предоставленном вами списке процессов. К изменению, не было ли vmware-guestd процесс, прежде чем вы начали их убивать?

Команда watch может быть полезна. Попробуйте watch -n 5 free, чтобы отслеживать использование памяти и получать обновления каждые пять секунд.

Также

htop - лучшее решение.

  sudo apt-get install htop

Таким образом вы заметите, какие программы используют больше всего ОЗУ. и вы можете легко прекратить его, если хотите.