Terug naar tools

RAM- & Swapgrootte Calculator

Geef je RAM en workload op en krijg een swapgrootte-aanbeveling met de exacte commando's — plus een omgekeerde check voor een server die je al hebt ingesteld. Het gameserver-geval wordt eerlijk behandeld: meestal is er weinig of geen swap nodig.

Jouw server

RAM en workload

Dit is een startheuristiek, geen garantie — echte workloads variëren. Houd de werkelijke geheugendruk in de gaten en pas aan.

Aanbeveling

Swapgrootte
2 GB
vm.swappiness
60 (standaard)
Heuristiek, geen wet. Gebruikte heuristiek: swap = RAM tot 2 GB, daarna ongeveer de helft van het RAM, aangepast voor webserver (nginx/php/node, gemiddeld verkeer) en begrensd zodat het niet uit de hand loopt bij zeer grote instances. Beschouw dit als startpunt — houd het werkelijke swapgebruik in de gaten (free -h, vmstat) en pas het aan in plaats van het blindelings te vertrouwen.

Commando's

Het swapbestand aanmaken en inschakelen

Voer uit als root of met sudo. Maakt het bestand aan, sluit het af tot alleen-eigenaar, formatteert het, activeert het en zorgt dat het een herstart overleeft.

1 — bestand toewijzen (fallocate, snel pad)

fallocate -l 2G /swapfile

Sommige bestandssystemen (met name ZFS, en oudere Btrfs-setups) ondersteunen fallocate voor swapbestanden niet. Val in dat geval terug op dd — trager, maar werkt overal:

1b — terugvaloptie (dd)

dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress

2 — rechten vastzetten

chmod 600 /swapfile

Een swapbestand dat leesbaar is voor andere gebruikers is een echt risico — alles wat de kernel ooit naar swap schrijft, inclusief geheimen die even in RAM stonden, kan in dat bestand terechtkomen.

3 — formatteren en activeren

mkswap /swapfile
swapon /swapfile

4 — behoud na herstarts (/etc/fstab)

/swapfile none swap sw 0 0

Voeg die regel toe aan /etc/fstab — overschrijf het bestand niet.

5 — vm.swappiness instellen (permanent)

sudo sysctl vm.swappiness=60
echo 'vm.swappiness=60' | sudo tee -a /etc/sysctl.conf

Achtergrond

Wat vm.swappiness precies doet, en wanneer swap helpt

Eén kernel-instelling van 0–100 die bepaalt hoe gretig geheugenpagina's worden geswapt voordat het strikt nodig is.

  • Wat het getal betekent: vm.swappiness (0–100) vertelt de kernel hoe gretig geheugenpagina's naar swap worden verplaatst voordat het strikt noodzakelijk is. Lage waarden betekenen "alleen swappen als het RAM bijna op is"; hoge waarden betekenen "koude pagina's makkelijker uitswappen, meer RAM vrijhouden voor cache."
  • Wanneer swap echt helpt: Bij schokkerige workloads (verkeerspieken op een webserver) en als vangnet tegen de OOM-killer — een proces dat door swap wordt vertraagd, is bijna altijd herstelbaar, een proces dat wordt gekilld niet.
  • Wanneer het een tekort maskeert: Als swap constant en zwaar wordt gebruikt in plaats van incidenteel tijdens een piek, dan past die workload niet meer in het RAM en draait deze stilletjes elke dag iets langzamer in plaats van één keer luid te falen.
  • Hoe je het verschil herkent: Controleer het swapgebruik over tijd (free -h, vmstat 1, of swapon --show). Incidentele pieken die weer wegzakken zijn gezond. Swapgebruik dat hoog blijft of blijft stijgen betekent dat het tijd is om RAM toe te voegen, niet swap.

Beheer je een eigen gameserver?

Wespner-gameservers met DDoS-bescherming, NVMe-schijven en activering binnen enkele minuten.

Bekijk hosting