Swap is een deel van de schijf dat het systeem als reservegeheugen gebruikt wanneer het RAM vol is. Zonder swap beëindigt Linux bij een geheugentekort het proces dat het meest verbruikt, en dat is meestal precies je gameserver of je database.
Heb je al swap?
swapon --show
free -h
Geeft swapon --show niets terug, dan heb je geen swap.
Een swapbestand van 2 GB aanmaken
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' >> /etc/fstab
Door de laatste regel blijft de swap actief na een herstart. Meestal is 1-2 GB genoeg; die ruimte gaat wel van je schijf af.
Alleen gebruiken als het echt nodig is
Standaard begint Linux al vrij vroeg dingen naar de swap te verplaatsen. Voor een server is het beter dat hij wacht tot het echt nodig is:
sysctl vm.swappiness=10
echo 'vm.swappiness=10' > /etc/sysctl.d/99-swappiness.conf
Wat swap niet doet
Een schijf is veel en veel trager dan RAM. Draait je gameserver structureel op de swap, dan blijft hij haperen. Gebruik swap als vangnet voor incidentele pieken; zie je met free -h dat de swap voortdurend wordt gebruikt, dan heb je meer RAM nodig: upgrade je pakket, zonder dat je iets hoeft te migreren.