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

Zram в якості SWAP файлу в Proxmox VE

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

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

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

  • 1. Збільшення ємності сховища: Завдяки стисненню даних на блоковому пристрої Zram можна збільшити загальну ємність сховища. Це особливо корисно для пристроїв з обмеженим об'ємом пам'яті, таких як мобільні пристрої.
  • 2. Підвищена продуктивність: Стиснення зменшує фізичний розмір даних, що, своєю чергою, призводить до прискорення операцій читання і запису. Це особливо корисно для систем із високими вимогами до продуктивності, як-от ігрові ноутбуки або сервери.
  • 3 Енергоефективність: Стиснення даних на блоковому пристрої Zram споживає менше енергії порівняно з нестиснутим зберіганням. Така енергоефективність може призвести до збільшення часу автономної роботи портативних пристроїв або зниження енергоспоживання в центрах обробки даних.
  • 4. Гнучкість: Технологія Zram забезпечує гнучкість, даючи змогу вибирати різні алгоритми стиснення. Користувачі можуть вибрати той, який найбільшою мірою відповідає їхнім специфічним вимогам і перевагам.

Zram

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

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

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

Далі налаштуємо автоматичне створення zram swap під час старту системи:

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

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

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, ви зможете скористатися перевагами стислої оперативної пам'яті, такими як підвищення продуктивності та зниження вимог до зберігання даних.