Kalkulačka veľkosti RAM a swapu
Zadajte RAM a typ záťaže a dostanete odporúčanú veľkosť swapu aj presné príkazy — plus spätnú kontrolu pre server, ktorý už máte nastavený. Prípad herného servera riešime na rovinu: zvyčajne chce málo alebo žiadny swap.
Váš server
RAM a typ záťaže
Toto je východisková heuristika, nie záruka — reálne záťaže sa líšia. Sledujte skutočný pamäťový tlak a upravujte podľa potreby.
Odporúčanie
Príkazy
Vytvoriť a zapnúť swapovací súbor
Spustite ako root alebo cez sudo. Vytvorí súbor, uzamkne ho len pre vlastníka, naformátuje ho, aktivuje a zaistí, že prežije reštart.
1 — alokácia súboru (fallocate, rýchla cesta)
fallocate -l 2G /swapfile
Niektoré súborové systémy (najmä ZFS a staršie nastavenia Btrfs) fallocate pre swapovacie súbory nepodporujú. Ak k tomu dôjde, použite namiesto toho dd — pomalšie, ale funguje všade:
1b — záloha (dd)
dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress
2 — uzamknúť oprávnenia
chmod 600 /swapfile
Swapovací súbor čitateľný pre ostatných používateľov je reálne riziko — čokoľvek jadro niekedy odloží na disk, vrátane údajov, ktoré boli krátko v RAM, môže skončiť v tomto súbore.
3 — naformátovať a aktivovať
mkswap /swapfile swapon /swapfile
4 — zachovať po reštarte (/etc/fstab)
/swapfile none swap sw 0 0
Pridajte tento riadok do /etc/fstab — súbor neprepisujte.
5 — nastaviť vm.swappiness (trvalo)
sudo sysctl vm.swappiness=60 echo 'vm.swappiness=60' | sudo tee -a /etc/sysctl.conf
Pozadie
Čo vm.swappiness skutočne robí a kedy swap pomáha
Jeden parameter jadra od 0 do 100, ktorý určuje, ako ochotne odkladá pamäťové stránky do swapu, ešte kým to nutne nemusí.
- Čo to číslo znamená: vm.swappiness (0–100) hovorí jadru, ako ochotne presúvať pamäťové stránky do swapu, ešte kým to nebude nutne musieť. Nízke hodnoty znamenajú "swapuj len keď RAM takmer dochádza"; vysoké hodnoty znamenajú "ochotnejšie swapuj studené stránky, drž viac RAM voľnej pre cache."
- Kedy swap naozaj pomáha: Pri nárazovej záťaži (výkyvy návštevnosti webového servera) a ako poistka proti OOM killeru — proces spomalený swapom sa skoro vždy dá zachrániť, zabitý proces nie.
- Kedy len zamaskúva nedostatok: Ak je swap trvalo a intenzívne využívaný namiesto občasného použitia pri výkyve, znamená to, že záťaž sa už do RAM nezmestí a ticho beží každý deň pomalšie, namiesto toho, aby raz hlučne zlyhala.
- Ako to rozoznať: Sledujte využitie swapu v čase (free -h, vmstat 1 alebo swapon --show). Občasné výkyvy, ktoré zase odznejú, sú v poriadku. Ak využitie swapu zostáva vysoké alebo ďalej rastie, je čas pridať RAM, nie swap.
Prevádzkuješ vlastný herný server?
Herné servery Wespner s DDoS ochranou, NVMe diskami a aktiváciou do pár minút.