У меня есть OpenVZ VPS. Однако shmpages
всегда увеличения к пределу за один или два дня. Мое Использование оперативной памяти является низким (233M без кэша). Я только выполняю nginx, php-fpm, и mariadb на VPS. Я попросил, чтобы мой поставщик VPS увеличил предел однажды (от 13 000), но это - все еще проблема для меня. Какова могла быть причина и существует ли возможный способ зафиксировать ее? Следующее является выводом cat /proc/user_beancounters
.
Version: 2.5
uid resource held maxheld barrier limit failcnt
39506: kmemsize 11328858 17010688 9223372036854775807 9223372036854775807 0
lockedpages 0 0 256 256 0
privvmpages 175735 226459 9223372036854775807 9223372036854775807 0
shmpages 19985 20000 20000 20000 1752
dummy 0 0 9223372036854775807 9223372036854775807 0
numproc 44 126 250 250 0
physpages 78891 101586 361984 361984 0
vmguarpages 0 0 260144 9223372036854775807 0
oomguarpages 37212 44403 260144 9223372036854775807 0
numtcpsock 8 31 800 800 0
numflock 5 28 600 800 0
numpty 1 1 47 47 0
numsiginfo 0 78 256 256 0
tcpsndbuf 139520 721088 9223372036854775807 9223372036854775807 0
tcprcvbuf 131072 4063928 9223372036854775807 9223372036854775807 0
othersockbuf 57800 325704 9223372036854775807 9223372036854775807 0
dgramrcvbuf 0 9248 575488 575488 0
numothersock 109 135 900 900 0
dcachesize 3614571 4086400 4086400 4086400 0
numfile 641 1275 9600 9600 0
dummy 0 0 9223372036854775807 9223372036854775807 0
dummy 0 0 9223372036854775807 9223372036854775807 0
dummy 0 0 9223372036854775807 9223372036854775807 0
numiptent 24 24 450 450 0
Править:
df -T
вывод:
Filesystem Type 1K-blocks Used Available Use% Mounted on
devtmpfs devtmpfs 723968 0 723968 0% /dev
tmpfs tmpfs 723968 0 723968 0% /dev/shm
tmpfs tmpfs 723968 13096 710872 2% /run
tmpfs tmpfs 723968 0 723968 0% /sys/fs/cgroup
Хороший провайдер не должен устанавливать предел для shmpages ниже 20000. Shmpages влияет только на реакцию приложений в вашем контейнере на нехватку ресурсов; он имеет нулевое влияние на стабильность или безопасность самого узла.
Все мои VPS OpenVZ (от BuyVM) имеют ограничение shmpages, установленное на 9223372036854775807 (в основном, неограниченное). Очевидно, что вам не хватает памяти - ваш предел PhysPages составляет 361984, а максимальный объем памяти, который вы использовали, составляет менее одной трети от этого (101586). То же самое и с oomguarpages - ваш лимит составляет 260144 страницы, но максимальный объем памяти, который вы использовали, составляет 44403 страницы, что составляет только 17% от того, что вам доступно.
Попросите вашего провайдера увеличить лимит shmpages и препятствовать чему-то более разумному. Если они откажутся, я бы посоветовал поискать ваши VPS в другом месте. Их предел в 20000 просто смехотворен.