Sari la conținut
Cum configurezi swap-ul pe un server Linux pentru stabilitate maximă

Cum configurezi swap-ul pe un server Linux pentru stabilitate maximă

Swap-ul este un spațiu pe disc pe care Linux îl folosește ca extensie a memoriei RAM atunci când aceasta se umple. Fără swap, un server care rămâne fără RAM va ucide procese arbitrar prin mecanismul OOM Killer (Out-Of-Memory Killer), ceea ce poate duce la oprirea neașteptată a serverului web, a bazei de date sau a oricărui alt serviciu critic.

Pe serverele VPS moderne cu stocare NVMe SSD, swap-ul este un instrument de stabilitate, nu de performanță. Nu compensează RAM insuficient pentru sarcini de lungă durată, dar previne crash-urile la vârfuri temporare de consum de memorie.

Cum configurezi swap-ul pe un server Linux pentru stabilitate maximă

Există două metode de a crea swap pe Linux: partiția de swap (definită la instalarea sistemului de operare) și fișierul de swap (creat oricând pe sistemul de fișiere existent). Pe VPS-urile moderne, fișierul de swap este recomandat deoarece poate fi redimensionat fără repartiționarea discului.

Verificați mai întâi dacă serverul are deja swap configurat:

free -h
swapon --show

Dacă output-ul comenzii swapon este gol, serverul nu are swap activ.

Crearea unui fișier de swap

Pe un VPS cu 4-8 GB RAM, un fișier de swap de 2-4 GB este o dimensiune rezonabilă ca filet de siguranță:

# Creati un fisier de swap de 2 GB
sudo fallocate -l 2G /swapfile

# Alternativa daca fallocate nu functioneaza
# sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

# Setati permisiunile corecte (doar root poate citi fisierul de swap)
sudo chmod 600 /swapfile

# Initializati swap-ul pe fisier
sudo mkswap /swapfile

# Activati swap-ul
sudo swapon /swapfile

# Verificati ca swap-ul este activ
swapon --show
free -h

Activarea permanenta a swap-ului la boot

Swap-ul activat prin swapon este temporar și dispare la repornirea serverului. Pentru activare permanentă, adăugați o intrare în /etc/fstab:

# Adaugati la sfarsitul fisierului /etc/fstab
sudo echo '/swapfile none swap sw 0 0' >> /etc/fstab

# Verificati intrarea
cat /etc/fstab | grep swap

# Testati ca fstab este corect fara sa reporniti
sudo mount -a

Configurarea swappiness

Parametrul vm.swappiness controlează agresivitatea cu care kernelul Linux folosește swap-ul. Valorile posibile sunt de la 0 la 100. Valoarea implicită este 60, ceea ce înseamnă că sistemul va începe să mute date în swap când RAM-ul ajunge la 40% utilizare, chiar dacă nu este necesar.

Pe servere de hosting web și de baze de date, o valoare mai mică este recomandată pentru a menține datele în RAM cât mai mult posibil:

# Verificati valoarea curenta
cat /proc/sys/vm/swappiness

# Schimbati temporar (se reseteaza la reboot)
sudo sysctl vm.swappiness=10

# Schimbati permanent
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Valori recomandate pe tipuri de server: 10-20 pentru hosting WordPress și aplicații web, 1-5 pentru servere de baze de date intensive (MySQL, PostgreSQL), 30-60 pentru servere de build sau medii de development unde vârfurile de memorie sunt comune.

Ajustarea vfs_cache_pressure

Parametrul vfs_cache_pressure controlează cât de agresiv kernelul eliberează din cache-ul de sistem de fișiere (inode și dentry cache). Valoarea implicită este 100. Pe servere cu multe fișiere mici (WordPress cu zeci de plugin-uri), o valoare mai mică menține mai mult din structura de directoare în RAM:

echo 'vm.vfs_cache_pressure=50' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Zram: alternativa modernă pentru VPS-uri cu RAM limitat

Zram creează un dispozitiv bloc comprimat în RAM care funcționează ca swap, eliminând complet accesul la disc. Paginile de memorie inactive sunt comprimate și stocate tot în RAM, nu pe disc. Pe un VPS cu 2-4 GB RAM și procesoare moderne care comprimă rapid, zram poate fi mai eficient decât un fișier de swap pe disc.

# Instalare pe Ubuntu/Debian
sudo apt install -y zram-config

# Sau activare manuala a modulului
sudo modprobe zram
echo 2G | sudo tee /sys/block/zram0/disksize
sudo mkswap /dev/zram0
sudo swapon -p 100 /dev/zram0

Prioritatea mai mare (-p 100) face ca sistemul să folosească zram înaintea swap-ului pe disc.

Monitorizarea utilizării swap-ului

# Utilizare curenta
free -h

# Detalii despre dispozitivele de swap
swapon --show

# Activitate swap in timp real
vmstat 5
# Coloanele 'si' (swap in) si 'so' (swap out) arata fluxul activ

Dacă valorile so (swap out) sunt constant ridicate, serverul are nevoie de mai mult RAM, nu de mai mult swap. Swap-ul nu rezolvă problema insuficienței de RAM pe termen lung, ci doar previne crash-urile la vârfuri temporare.

Concluzie

Un fișier de swap de 2-4 GB cu swappiness setat la 10-20 este configurația recomandată pentru orice server VPS de hosting web. Previne crash-urile la vârfuri temporare de memorie fără să afecteze performanța în condiții normale de funcționare. Pentru VPS-uri cu RAM limitat, zram oferă o alternativă fără acces la disc.

Planurile noastre de server VPS cu 24, 32 și 64 de nuclee CPU includ suficientă RAM pentru hosting WordPress și aplicații web fără să depindeți de swap în condiții normale de operare.

Înapoi sus
Your Cart

Your cart is empty.