Jump to content

Recommended Posts

Posted

Есть сервер Debian 6, ядро 2.6.32-5-amd64 .

 

Параметры сервера CPU (Intel Core i7-3770 CPU @ 3.40GHz 8 ядер), Памяти 16 Гб, 2 Диска в RAID0 (2 x 3 TB SATA 6 Gb/s HDD 7200 rpm (Software-RAID 1)) + swap 32 Gb

Другими словами Dedicated Server EX 4 на http://www.hetzner.de

 

На нём поднят nginx+php+mysql.

 

Памяти (потребляется 7гб из 16), процессора и дисков хватает с лихвой. Но где-то через пару дней что-то выедает почти всю память (свободно остаётся где-то 500 мб). А ещё через некоторое время сервер просто уходит в себя: сеть недоступна, Cron-задания невыполняются, то есть наступает полный ступор.

Перегрузить через панель управления - не получается. Только через тикет (они сами каким-то ручным образом его перегружают), при этом, в ребут по логам уходит вроде бы корректно.

 

Поддержка в hetzner отвечает стандартными фразами - понятия не имеем, и можем взять сервер на диагностику на сутки. И им по-барабану, что сервер в продакшине.

 

Поставил cacti, думал смогу уловить момент, но LA, mem - не скакали в тот момент. Хотя агент snmp мог это и не уловить.

 

Отключил сейчас все изменения в sysct.conf, limit.conf и пока наблюдаю.

 

Может кто с таким сталкивался? Остался ещё 1 вариант - обновить ядро до версии 3.2, если опять зависнет.

Posted

Была аналогичная проблема на более чем на 50 серверах на ядре 2.6.35, после недели работы сервер съедал гигов 30 памяти, причем убийство процессов не помогало. Решилось обновлением ядра до 3.0.28

Posted

А ps, к примеру, молчит как партизан и не сдает того кто память ест? если не успеваете зайти до момента когда уже не пускает, то поставьте atop, он историю писать умеет.

Posted

ps ничего необычного не выводит, top/htop показывает те же цифры, что и до. Даже рестарт указанных служб не освобождает память. Значит, дело скорее всего не в них. Касательно atop - идея хорошая, попробую.

Posted

Делал, но цифры не сходятся всё равно. имеется ввиду, из top/htop. Через /proc/meminfo -

MemTotal:       16160948 kB
MemFree:          502892 kB
Buffers:          178412 kB
Cached:          7436540 kB
SwapCached:            0 kB
Active:          1929572 kB
Inactive:        6153940 kB
Active(anon):     435528 kB
Inactive(anon):    48180 kB
Active(file):    1494044 kB
Inactive(file):  6105760 kB
Unevictable:     7269972 kB
Mlocked:         7269972 kB
SwapTotal:      33553328 kB
SwapFree:       33553328 kB
Dirty:               540 kB
Writeback:             0 kB
AnonPages:       7738528 kB
Mapped:            27152 kB
Shmem:               832 kB
Slab:             196436 kB
SReclaimable:     174656 kB
SUnreclaim:        21780 kB
KernelStack:        2288 kB
PageTables:        29200 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    49714276 kB
Committed_AS:    8025824 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      122432 kB
VmallocChunk:   34359610132 kB

Смущает вот это

Unevictable: 7269972 kB

Mlocked: 7269972 kB

Posted

Mlocked - то, что заблокировано от своппироваиня вызовом mlock(), 7 гиг - многовато как-то...

7.5 гиг ушло под кеш, ядро откушало 200 метров.

Posted

Вот, обновил даже php до 5.3.18, но утечки продолжаются. Жду момента, когда будет КВМ и обновлю ядро. Можно и без КВМа, но всё равно стрёмновато.

Posted

Очень странно другое:

# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
0  0      0 498512 193808 7487920    0    0     9    10   45    2  2  1 97  0
2  0      0 498552 193808 7487920    0    0     0     6  526  696  1  0 99  0
2  0      0 498460 193816 7487924    0    0     0   202  580 4829  3  0 96  0
0  0      0 497576 193816 7487928    0    0     0    20  642 1285  6  1 93  0
0  0      0 497216 193816 7487932    0    0     0     8  462 2894  2  0 98  0

# monit status all | tail -8
System 'server.com.ua'
 status                            running
 monitoring status                 monitored
 load average                      [0.48] [0.31] [0.22]
 cpu                               3.0%us 0.3%sy 0.1%wa
 memory usage                      7984884 kB [49.4%]
 data collected                    Wed Oct 24 16:56:41 2012

Почему через vmstat и через monit разные показания?

Posted

Что сделал

- обновил ядро до 3.2

- отключил полностью swap

- отключил всё в sysctl

- изменил распределение памяти:

vm.overcommit_ratio=100

vm.overcommit_memory=2

 

Пока наблюдаю.

Posted

kernel.panic = 5

kernel.panic_on_oops = 1

kernel.panic_on_stackoverflow = 1

kernel.panic_on_unrecovered_nmi = 1

kernel.unknown_nmi_panic = 1

vm.panic_on_oom = 1

 

Я бы сделал так, и поднял бы netconsole,на случай если oops не в сетевой подсистеме.

Хоть сервер к жизни вернется сам.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.