Утечка памяти: как с ней бороться?
Re: Утечка памяти: как с ней бороться?
Спасибо. Может кому пригодится:
Если SWAP есть и нужно увеличить:
1) отключаем и удаляем текущий SWAP:
yum swapoff -v /swapfile
rm -rf /swapfile
2) создаем новый SWAP
dd if=/dev/zero of=/swapfile bs=1M count=8192 (тут объем в mb)
mkswap /swapfile
swapon /swapfile
Если SWAP нет
1)
dd if=/dev/zero of=/swapfile bs=1M count=2048
mkswap /swapfile
swapon /swapfile
2 ) В файл /etc/fstab добавляем строку
/swapfile swap swap defaults 0 0
Если SWAP есть и нужно увеличить:
1) отключаем и удаляем текущий SWAP:
yum swapoff -v /swapfile
rm -rf /swapfile
2) создаем новый SWAP
dd if=/dev/zero of=/swapfile bs=1M count=8192 (тут объем в mb)
mkswap /swapfile
swapon /swapfile
Если SWAP нет
1)
dd if=/dev/zero of=/swapfile bs=1M count=2048
mkswap /swapfile
swapon /swapfile
2 ) В файл /etc/fstab добавляем строку
/swapfile swap swap defaults 0 0
Последний раз редактировалось con Ср май 19, 2021 7:48 am, всего редактировалось 1 раз.
Centos7
Re: Утечка памяти: как с ней бороться?
Так же прошу учитывать еще один момент, особено у кого памяти до 4Г и установлен сервис ClamAV и ClamSMTPD. Сам по себе он довольно прожорлив, и может забирать от 1Г до 1.8Г оперативной памяти, и не особо хочет ей с кем-то делиться. Если он вам не особо нужен, удаляйте его через менеджер приложений. Если все таки нужен, позаботьтесь о размере свап раздела.
Еще есть возможность для CentOS 8 использовать скрипт, который поможет оценить использование оперативной памяти сервисами. Запускается он так:
к сожалению на CentOS 7 он работать не будет.
Еще есть возможность для CentOS 8 использовать скрипт, который поможет оценить использование оперативной памяти сервисами. Запускается он так:
Код: Выделить всё
bash /usr/local/brainycp/ssh/meminfo.sh
Re: Утечка памяти: как с ней бороться?
Здравствуйте.
Опять похожая ситуация. В скайпе вы как-то писали, что проблема в мускл, но не похоже. Я мускл не перезагружал.
в панель заходит, сайты не загружаются. Но на этот раз помог рестарт NGINX
Вот выдача в терминале
root /var/log/nginx # cat /var/log/nginx/error.log | grep memory
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "cache manager process" (12: Cannot allocate memory)
а вот логи /var/log/nginx/error.log одного из сайтов. Лягло где-то в 13:00 по времени в логах.
Опять похожая ситуация. В скайпе вы как-то писали, что проблема в мускл, но не похоже. Я мускл не перезагружал.
в панель заходит, сайты не загружаются. Но на этот раз помог рестарт NGINX
Вот выдача в терминале
Код: Выделить всё
root ~ # uname -r
3.10.0-1160.25.1.el7.x86_64
root ~ # rpm -qa | grep glibc
glibc-common-2.17-324.el7_9.x86_64
glibc-devel-2.17-324.el7_9.x86_64
glibc-2.17-324.el7_9.x86_64
glibc-headers-2.17-324.el7_9.x86_64
root ~ # sysctl -a | grep swap
vm.swappiness = 50
root ~ # systemctl --failed
0 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
root ~ # sysctl -a | grep huge
vm.hugepages_treat_as_movable = 0
vm.hugetlb_shm_group = 0
vm.nr_hugepages = 20
vm.nr_hugepages_mempolicy = 20
vm.nr_overcommit_hugepages = 0
root ~ # sysctl -a | grep memory
vm.memory_failure_early_kill = 0
vm.memory_failure_recovery = 1
vm.overcommit_memory = 0
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "cache manager process" (12: Cannot allocate memory)
а вот логи /var/log/nginx/error.log одного из сайтов. Лягло где-то в 13:00 по времени в логах.
Код: Выделить всё
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: fork() failed while spawning "cache manager process" (12: Cannot allocate memory)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:00:13 [alert] 19428#0: sendmsg() failed (9: Bad file descriptor)
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity for nginx (STABLE)/2.9.2 (http://www.modsecurity.org/) configured.
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: APR compiled version="1.5.2"; loaded version="1.5.2"
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: PCRE compiled version="8.32 "; loaded version="8.32 2012-11-30"
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: LUA compiled version="Lua 5.1"
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: LIBXML compiled version="2.9.1"
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: StatusEngine call: "2.9.2,nginx,1.5.2/1.5.2,8.32/8.32 2012-11-30,Lua 5.1,2.9.1,80cf3165bd6c141a23d26189b838105e7752401b"
2021/05/26 13:35:12 [notice] 10243#0: ModSecurity: StatusEngine call successfully sent. For more information visit: http://status.modsecurity.org/
Centos7
Re: Утечка памяти: как с ней бороться?
Всем доброго времени суток!
Вставлю несколько слов...
Не так давно наблюдал утечку памяти в Битрикс CMS на php v7.3.2
Тоже сначала грешил на mysql и nginx, но было выявлено в php.
Помогло переход на версию 7.4
Возможно кому то пригодиться.
Вставлю несколько слов...
Не так давно наблюдал утечку памяти в Битрикс CMS на php v7.3.2
Тоже сначала грешил на mysql и nginx, но было выявлено в php.
Помогло переход на версию 7.4
Возможно кому то пригодиться.
Re: Утечка памяти: как с ней бороться?
новый инсталлятор версии 3.01 решает проблему чрезмерной нагрузки на оперативную память. Это актуально для обоих, CentOS 7 и 8.
Для уже установленных систем, решение будет в новом обновлении.
Для уже установленных систем, решение будет в новом обновлении.
Re: Утечка памяти: как с ней бороться?
У меня так и не исправилось, обновлений уже много было.
Сайты перестают отвечать через 1-2 недели, помогает только полный перезапуск или рестарт nginx. Монитор видит что nginx работает и не перезапускает его.
Ошибки как у коллег выше
Сайты перестают отвечать через 1-2 недели, помогает только полный перезапуск или рестарт nginx. Монитор видит что nginx работает и не перезапускает его.
Ошибки как у коллег выше
Версия 1.0930 2021-11-042022/01/05 17:00:26 [alert] 30643#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: fork() failed while spawning "worker process" (12: Cannot allocate memory)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: fork() failed while spawning "cache manager process" (12: Cannot allocate memory)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
2022/01/05 17:00:26 [alert] 30643#0: sendmsg() failed (9: Bad file descriptor)
Re: Утечка памяти: как с ней бороться?
Мы работаем над новым nginx, пока для centos8У меня так и не исправилось, обновлений уже много было.
Сайты перестают отвечать через 1-2 недели, помогает только полный перезапуск или рестарт nginx. Монитор видит что nginx работает и не перезапускает его.
Re: Утечка памяти: как с ней бороться?
Что делать в текущей ситуации, как избежать проблемы?
Рестарт в крон на определенный период поможет? это какой то накопительный эффект?
Рестарт в крон на определенный период поможет? это какой то накопительный эффект?
Re: Утечка памяти: как с ней бороться?
Какая система? Какая у вас виртуализация? Если она есть.
Покажите выводы этих команд
Код: Выделить всё
uname -r
free -h
df
Код: Выделить всё
systemctl status nginx -l
a) какая версия панели?
b) какая связка, apache+nginx или один nginx?
c) на каких версиях пхп сайты висят?