Zram в качестве SWAP файла в Proxmox VE
Технология Zram
Zram - это технология, которая позволяет создать блочное устройство в оперативной памяти, данные на котором при сохранении сжимаются одним из выбранных алгоритмов. Доступно их несколько, в зависимости от версии операционной системы. Например, в последней версии Proxmox - это lzo, lz4, lz4hc, deflate. По умолчанию используется lzo. Вероятно, потому что он был добавлен в модуль ядра ранее и сохранен как стандартная настройка в целях совместимости. Самым оптимальным на данный момент будет выбор в пользу lz4. Он имеет оптимальное соотношение скорости и коэффициента сжатия и очень быстр в распаковке. Кроме того, lz4 доступен практически во всех актуальных дистрибутивах linux.
Пример должен сработать в свежих версиях Debian (начиная с 9) и Ubuntu (начиная с 18). В этом примере добавляем 32G:
zramctl -s 32G -a lz4 /dev/zram0
mkswap /dev/zram0
swapon /dev/zram0 -p 10
Далее настроим автоматическое создание zram swap при старте системы:
echo "zram" > /etc/modules-load.d/zram.confecho 'KERNEL=="zram0", ATTR { disksize } ="32G" RUN="/sbin/mkswap /dev/zram0", TAG+="systemd"' > /etc/udev/rules.d/99-zram.rules
Посмотреть статистику использования раздела можно с помощью команды zramctl без параметров:
Посмотреть статистику использования раздела можно с помощью команды zramctl без параметров:
NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram0 lz4 32G 48.7M 20.1M 21.5M 16 [SWAP]