Vissza az eszközökhöz

RAM- és swapméret-kalkulátor

Add meg a RAM-odat és a terhelést, és kapj swapméret-javaslatot a pontos parancsokkal — plusz egy fordított ellenőrzést egy már beállított szerverhez. A játékszerver esetet őszintén kezeli: általában kevés vagy semennyi swapre sincs szüksége.

A szervered

RAM és terhelés

Ez egy kiindulópont-heurisztika, nem garancia — a valódi terhelések eltérőek. Figyeld a tényleges memórianyomást, és állíts rajta.

Javaslat

Swapméret
2 GB
vm.swappiness
60 (alapértelmezett)
Heurisztika, nem szentírás. Használt heurisztika: swap = RAM 2 GB-ig, azon túl kb. a RAM fele, webszerver (nginx/php/node, mérsékelt forgalom) szerint módosítva, és felülre korlátozva, hogy nagyon nagy gépeken se dagadjon el. Kezeld ezt kiindulópontként — figyeld a tényleges swaphasználatot (free -h, vmstat), és inkább az alapján állíts, mint hogy vakon megbíznál benne.

Parancsok

Hozd létre és engedélyezd a swapfájlt

Futtasd rootként vagy sudóval. Létrehozza a fájlt, csak a tulajdonosra zárja, formázza, aktiválja, és túléli az újraindítást.

1 — a fájl lefoglalása (fallocate, gyors út)

fallocate -l 2G /swapfile

Néhány fájlrendszer (különösen a ZFS, és régebbi Btrfs beállítások) nem támogatja a fallocate-et swapfájlokhoz. Ha ez történik, válts dd-re — lassabb, de mindenhol működik:

1b — tartalék (dd)

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

2 — jogosultságok lezárása

chmod 600 /swapfile

Egy más felhasználók által is olvasható swapfájl valódi kockázat — bármi, amit a kernel valaha kilapoz, beleértve a RAM-ban rövid ideig lévő titkokat is, végül ebben a fájlban köthet ki.

3 — formázás és aktiválás

mkswap /swapfile
swapon /swapfile

4 — megmaradás újraindítások között (/etc/fstab)

/swapfile none swap sw 0 0

Fűzd hozzá ezt a sort a /etc/fstab-hoz — ne írd felül a fájlt.

5 — vm.swappiness beállítása (tartósan)

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

Háttér

Mit csinál valójában a vm.swappiness, és mikor segít a swap

Egyetlen kernelbeállítás 0–100 között, ami eldönti, mennyire buzgón swapeli ki a memórialapokat, mielőtt szigorúan szükséges lenne.

  • Mit jelent a szám: A vm.swappiness (0–100) megmondja a kernelnek, mennyire buzgón mozgassa a memórialapokat swapbe, mielőtt szigorúan szükséges lenne. Az alacsony értékek azt jelentik: „csak akkor swapelj, ha a RAM majdnem elfogyott”; a magas értékek pedig: „a hideg lapokat készségesebben rakd ki, tarts több RAM-ot szabadon a cache-nek.”
  • Amikor a swap valóban segít: Kilengő terheléseknél (egy webszerver forgalmi csúcsainál) és mint tartalék az OOM killer ellen — egy folyamat, amit lelassít a swap, szinte mindig helyreállítható, egy folyamat, amit kilőnek, nem.
  • Amikor egy hiányt fed el: Ha a swap folyamatosan, erősen használt, nem csak alkalmi csúcsok idején, az egy olyan terhelés, ami már nem fér bele a RAM-ba, csendben egyre lassabban futva minden nap ahelyett, hogy egyszer hangosan elhasalna.
  • Hogyan lehet megkülönböztetni: Ellenőrizd a swaphasználatot idővel (free -h, vmstat 1, vagy swapon --show). Az alkalmi csúcsok, amik utána visszaesnek, egészségesek. A magasan maradó vagy folyamatosan emelkedő swaphasználat azt jelenti, hogy ideje RAM-ot hozzáadni, nem swapet.

Saját játékszervert üzemeltetsz?

Wespner játékszerverek DDoS-védelemmel, NVMe lemezekkel és néhány perc alatti aktiválással.

Hosting megtekintése