Zram як SWAP-файл у Proxmox VE

Технологія Zram

Zram - це технологія, яка дозволяє створити в оперативній пам'яті блоковий пристрій, на якому дані при збереженні стискаються за одним з обраних алгоритмів.

Існує кілька алгоритмів, залежно від версії операційної системи. Наприклад, в останній версії Proxmox це lzo, lz4, lz4hc, deflate. За замовчуванням встановлено lzo. Ймовірно, це пов'язано з тим, що його було додано до модуля ядра раніше і збережено як налаштування за замовчуванням з метою сумісності. Наразі найоптимальнішим вибором є lzo4, який має оптимальне співвідношення швидкості до стиснення і дуже швидко розпаковується. Крім того, lz4 доступний майже у всіх поточних дистрибутивах linux.

Переваги технології Zram

Впровадження технології Zram має декілька переваг. Ось деякі з них:

1. Збільшення ємності сховища: Завдяки стисненню даних на блокчейн-пристрої Zram можна збільшити загальну ємність сховища. Це особливо корисно для пристроїв з обмеженим об'ємом пам'яті, таких як мобільні пристрої.

2. Підвищена продуктивність: Стиснення зменшує фізичний розмір даних, що, в свою чергу, призводить до пришвидшення операцій читання та запису. Це особливо корисно для систем з високими вимогами до продуктивності, таких як ігрові ноутбуки або сервери.

3. Енергоефективність: Стиснення даних на пристрої Zram block споживає менше енергії порівняно з нестисненим сховищем. Така енергоефективність може призвести до збільшення часу роботи від акумулятора для портативних пристроїв або зниження енергоспоживання в центрах обробки даних.

4. Гнучкість: Технологія Zram пропонує гнучкість, дозволяючи вибирати різні алгоритми стиснення. Користувачі можуть вибрати той, який найкраще відповідає їхнім конкретним вимогам та уподобанням.

Вимоги

Щоб налаштувати ZRam як файл підкачки в Proxmox VE, необхідно виконати наступні вимоги:

- Proxmox VE версії 5.4 або вище.

- Ядро Linux версії 5.10 або вище.

Як увімкнути модуль zRAM для прискорення підкачки в Debian/Ubuntu

Цей приклад повинен працювати з останніми версіями Debian (починаючи з версії 9) і Ubuntu (починаючи з версії 18). У цьому прикладі ми додамо 32G:

modprobe zram
zramctl -s 32G -a lz4 /dev/zram0
mkswap /dev/zram0
swapon /dev/zram0 -p 10


Далі налаштуйте автоматичне створення zram-розділу під час запуску системи:

echo "zram" > /etc/modules-load.d/zram.conf
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
echo "/dev/zram0 none swap defaults,pri=10 0 0" >> /etc/fstab

Статистику використання розділу можна переглянути за допомогою команди zramctl без параметрів:

zramctl

Приклад виведення:

NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram0 lz4 32G 48.7M 20.1M 21.5M 16 [SWAP]

Висновок

Налаштувавши ZRam як файл підкачки в Proxmox VE, ви зможете користуватися перевагами стисненої оперативної пам'яті, такими як підвищена продуктивність і зниження вимог до місця для зберігання даних.