Centos. Кто забил Swap?
Своп = память х 2 имеет смысл только при количестве оперативной памяти не более гига.
Больше 2-х гигов свопа — уже расточительство.
Сервер нужно правильно настраивать, а не со свопом играться.
На нормально отстроенной системе своп не забивается больше чем на 30%.
Лучше бросить усилия на подбор оптимальных параметров httpd/php-fpm и mysql — 90% использованного свопа обычно забивают они.
Кстати говоря, нормально настроенный сервер вполне неплохо обходится и без свопа.
Эта вот скриптина поможет понять, кто сколько наложил в своп:
#!/bin/bash # Get current swap usage for all running processes # Erik Ljungstrom 27/05/2011 SUM=0 OVERALL=0 for DIR in `find /proc/ -maxdepth 1 -type d | egrep "^/proc/[0-9]"` ; do PID=`echo $DIR | cut -d / -f 3` PROGNAME=`ps -p $PID -o comm --no-headers` for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'` do let SUM=$SUM+$SWAP done if [ $SUM != 0 ]; then echo "PID=$PID - Swap used: $SUM - ($PROGNAME )" let OVERALL=$OVERALL+$SUM fi SUM=0 done echo "Overall swap used: $OVERALL" zend@work:work$
Сохраняем содержимое в файл, к примеру, с именем viewswap.sh
В нашем примере файл сохранен в каталог /script
Даем ему права на запуск и запускаем.
Результат работы скрипта:
[root@zabbix script] # ./swapview.sh PID=483 swapped 3204 KB (systemd-journal) PID=609 swapped 336 KB (auditd) PID=635 swapped 280 KB (dbus-daemon) PID=642 swapped 140 KB (systemd-logind) PID=646 swapped 480 KB (crond) PID=651 swapped 680 KB (login) PID=655 swapped 1288 KB (NetworkManager) PID=985 swapped 924 KB (sshd) PID=1230 swapped 952 KB (master) PID=1232 swapped 780 KB (qmgr) PID=1235 swapped 408 KB (bash) PID=1256 swapped 1168 KB (sudo) PID=1257 swapped 576 KB (su) PID=1258 swapped 428 KB (bash) PID=1273 swapped 672 KB (mc) PID=7060 swapped 3032 KB (rsyslogd) Overall swap used: 15348 KB