Титла: Проблем с Out of memory Публикувано от: g0shet0 в May 02, 2014, 20:36 Здравейте,
имам един VPS който явно има проблем с използваната памет. В последните 30-40 дена web services най-вече named падат на няколко пъти. Един път беше недостъпен и от поддръжката ми казаха, че е минал предела на използваемата памет. Преди това имаше uptime близо 400 дена. Във /var/log/messages/ има съобщения от сорта : kernel: [725220.812780] Out of memory: Kill process ... тук httpd, php-cgi, named ... kernel: [725220.812787] Killed process 31898 (httpd, php-cgi, named ....) Как да хвана процеса който товари паметта? Явно е нещо което се пуска за малко, защото малко след като падне named (което ме прецаква най-вече) ми се праща съобщение и като видя какво е положението с top ми дава: Mem: 786692k total, 538932k used, 247760k free, 13876k buffers Swap: 1048572k total, 217172k used, 831400k free, 235644k cached Най-проблемен ми е bind .. има ли някакъв вариант като начало да пусна скрипт който на 1 минута да проверява дали named е up и ако не е да го пуска? В смисъл, че не ме бива в скриптовете, някой би ли ми помогнал мисля, че питам за нещо елементарно, а аз ще го добавя с cronjobs да се изпълнява всяка минута. Предварително благодаря! Титла: Re: Проблем с Out of memory Публикувано от: gat3way в May 02, 2014, 20:55 echo -15 > /proc/`pidof named`/oom_adj
И няма да го отнася вече, ще го отнесе нещо друго. Само че така лекуваш само един определен симптом, а ситуацията е доста крива, щом достигаш дотам OOM killer-а да раздава шутове. Най-добре е да разбереш какво причинява тази ситуация и да го отстраниш. Апропо дотогава няма да е зле да направиш същото и за sshd, да не ти се отреже клона като дойде пак заветния момент. Титла: Re: Проблем с Out of memory Публикувано от: g0shet0 в May 02, 2014, 21:17 Благодаря,
за начало мисля да вържа гащите с това ... Благодаря! Основното е как да разбера кой причинява това, защото явно е за 1-2 мин. след което спира. Мога ли да сложа нещо което наблюдава кой процес харчи най-много памет? Това дава веднага след като падне named... top > SHift + f > n > Enter дава: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6285 mysql 20 0 843m 53m 6712 S 1.7 7.0 0:19.03 mysqld 7831 xxx 20 0 387m 34m 20m S 0.0 4.4 0:16.60 php-cgi 6339 xxx 20 0 385m 32m 20m R 5.6 4.2 0:26.33 php-cgi 7148 yyy 20 0 289m 29m 19m S 0.0 3.8 0:00.62 php-cgi 9005 xxx 20 0 381m 27m 20m S 0.0 3.6 0:00.63 php-cgi 6918 xxx 20 0 287m 27m 19m S 0.0 3.6 0:00.41 php-cgi 3084 root 20 0 444m 27m 17m S 0.0 3.6 1:19.84 httpd 10054 zzz 20 0 289m 27m 16m R 5.6 3.5 0:00.17 php-cgi 6607 named 20 0 235m 25m 3048 S 0.0 3.3 0:02.34 named 6318 apache 20 0 329m 23m 10m S 0.0 3.1 0:00.91 mono 6322 apache 20 0 329m 23m 10m S 0.0 3.1 0:00.91 mono 7183 apache 20 0 446m 14m 3744 S 0.0 1.9 0:00.11 httpd 6333 apache 20 0 446m 13m 3104 S 0.0 1.8 0:00.14 httpd 8222 apache 20 0 446m 13m 3100 S 0.3 1.8 0:00.08 httpd 6334 apache 20 0 444m 13m 2524 S 0.0 1.7 0:00.10 httpd 6337 apache 20 0 444m 13m 2528 S 0.0 1.7 0:00.19 httpd 6335 apache 20 0 444m 13m 2560 S 0.0 1.7 0:00.12 httpd 6374 apache 20 0 444m 13m 2528 S 0.0 1.7 0:00.12 httpd 7180 apache 20 0 444m 13m 2520 S 0.0 1.7 0:00.10 httpd 8037 apache 20 0 444m 13m 2508 S 0.0 1.7 0:00.03 httpd 8225 apache 20 0 444m 13m 2508 S 0.3 1.7 0:00.10 httpd 6332 apache 20 0 444m 13m 2508 S 0.0 1.7 0:00.13 httpd 7154 apache 20 0 444m 12m 1884 S 0.0 1.6 0:00.09 httpd 7182 apache 20 0 444m 12m 1876 S 0.0 1.6 0:00.10 httpd 6336 apache 20 0 444m 12m 1860 S 0.0 1.6 0:00.21 httpd 6375 apache 20 0 444m 12m 1880 S 0.0 1.6 0:00.18 httpd 6367 apache 20 0 444m 12m 1884 S 0.0 1.6 0:00.17 httpd 8038 apache 20 0 444m 12m 1880 S 0.0 1.6 0:00.06 httpd 6331 apache 20 0 444m 12m 1860 S 0.0 1.6 0:00.21 httpd 7170 apache 20 0 444m 12m 1852 S 0.0 1.6 0:00.07 httpd 7779 apache 20 0 444m 12m 1852 S 0.0 1.6 0:00.05 httpd Титла: Re: Проблем с Out of memory Публикувано от: borovaka в May 03, 2014, 00:24 Можеш да сложиш и един zram, ама пак е заобикаляне на проблема.
Титла: Re: Проблем с Out of memory Публикувано от: gat3way в May 03, 2014, 02:25 Ами top е добър инструмент за целта, понеже е лек и прост...но интерпретирането на резултатите може да е проблем. Примерно може паметта да не се изяжда от един процес с голяма утилизация, може да е от много процеси с по-малка такава. Примерно php-cgi когато имаш по-голям load на сървъра с повечко паралелни клиенти. В този случаи предполагам си има разни лимити там, конфигуруеми. И на php и на apache.
|