Как подключить виртуальную память (swap) на VPS +
Материал из wiki.helpdesk.by
Вопрос: Почему для VPS не выделяется виртуальная память и как подключить swap?
free
total used free shared buffers cached
Mem: 1048576 191556 857020 0 0 0
-/+ buffers/cache: 191556 857020
Swap: 0 0 0
Ответ: Распределение (выделение) памяти для VPS выполняется ядром несущей машины (hardware node-HN).
Виртуальная память (swap) для Вашей VPS выделяется, но Вы этого не видите стандартными средствами.
Использование виртуальной памяти (swap) не отображается внутрь VPS в текущей версии Virtuozzo (В будущем это будет возможно). Для VPS выделяется просто память, и внутри VPS не показывается различие между swap и остальной памятью, поэтому в /proc/meminfo (а также в top/free) мы наблюдаем нулевой размер и нулевое использование swap.
Однако выяснить текущую ситуацию с использованием памяти можно через исследование лимитов/ресурсов VPS.
Их можно увидеть в панели управления VZCP или же выполнив команду в консоли на VPS
cat /proc/user_beancounters
Подробнее о лимитах/ресурсах смотрите здесь: Лимиты виртуальных серверов
За память отвечают следующие параметры:
kmemsize - Память ядра — объем оперативной памяти, выделяемый для внутренних структур данных (измеряется в байтах)
othersockbuf - суммарный размер буферов, которые могут быть использованы как для приема, так и для отправки данных через локальные сокеты, а также буферы, используемые для отправки данных по протоколу UDP. (измеряется в байтах)
Эта память не вытесняется в swap, поэтому речь тут идет исключительно о RAM.
privvmpages — ограничивает выделение userspace memory стандартными механизмами резервирования памяти, но в данном случае речь идет о виртуальной памяти без какого либо разбиения на RAM или Swap. (измеряется в 4 Кб страницах)
oomguarpages - гарантированный объем оперативной памяти, превышение которого вызовет сигнал outof-memory и ядро начнет убивать процессы.. (измеряется в 4 Кб страницах)
Потребление виртуальной памяти (ram+swap) можно узнать по сумме oomguarpages, kmemsize и othersockbuf.
