A memória kilencven százalékot mutat: tele van, vagy csak annak látszik
A szabad memória kihasználatlan memória, ezért a magas százalék önmagában nem baj jele. A helyes kérdés nem az, hogy mennyire tele van, hanem az, hogy ki tartja.
AtlasPVE ·
A bejegyzés ezekre válaszol
- proxmox ram tele
- proxmox magas memóriahasználat
- proxmox zfs arc memóriahasználat
- mi az a proxmox ballooning
- mennyi ram kell a proxmoxnak
A panelen a memória kilencven százalékon áll. Az első ösztön az azonnali RAM bővítés. A legtöbb esetben erre nincs szükség.
A szabad memória kihasználatlan memória. Az operációs rendszer a nem használt memóriát gyorsítótárként kezeli, és szükség esetén visszaadja. A magas százalék önmagában tehát nem hibajel.
Proxmox alatt két további forrás zavarja ezt a képet.
Első forrás: a tároló gyorsítótára
ZFS használata esetén a beolvasott adatok a gyors elérés érdekében a memóriában maradnak, és ez a rész nagy lehet. Nyomás alatt a ZFS felszabadítja. Addig viszont "használatban" állapotúként látszik.
Ez nem szivárgás, hanem maga a tervezés. Olyan rendszeren, amely folyamatosan ugyanazokat az adatokat olvassa, ez a gyorsítótár a legolcsóbb gyorsítás, és a lemez kopását is csökkenti.
A finom részlet a következő: a felszabadítás nem feltétlenül azonnali. Egy hirtelen memóriaigény tehát rövid késlekedésbe futhat. Nagyon szűkös rendszereken ezért érdemes felső korlátot adni a gyorsítótárnak, de mérés alapján, nem a "telik a memória" pánik miatt.
Második forrás: a vendégek által tartott memória
Ha egy virtuális gép nyolc gigabájtot kapott, a szerver felől nézve nyolc gigabájtot tarthat akkor is, amikor belül tétlen. Az ok egyszerű: az egyszer megérintett memória lefoglalva marad, hacsak a vendég nem tudja visszaadni.
A visszaadás csak a vendég közreműködésével működik. Ha az ezt lehetővé tevő összetevő nincs telepítve a vendégben, az átadott memória egyirányú úton ment el. Ha az odaígért memóriának vissza kell térnie, először az összetevő telepítését kell ellenőrizni.
A helyes kérdés: nem az, hogy mennyire tele, hanem az, hogy ki tartja
A százalék önmagában semmit nem mond. Az értelmes bontás ez: a telítettségből mennyi a vendégeké, és mennyi magáé a szerveré?
Ha a vendégeké, a helyzet normális: a nekik adott memóriát használják. Ha a szerver oldalé, és folyamatosan nő, akkor van mit megnézni.
Az igazi vészjelzés nem a százalék, hanem a swap
Ha a szerver elkezdte használni a swap területet, az valódi jelzés. A kilencven százalékos telítettség lehet, hogy nem gond, de az állandóan swappelő szerver lassú, és a lemezét is koptatja.
A próba: nem a százaléktól kell megijedni, hanem a swap tevékenységre kell lépni.
Túl sok ígéret
A virtuális gépeknek összesen több memória ígérhető, mint amennyi a szerverben ténylegesen van. Ez legtöbbször működik, mert nem mindegyik terhel csúcsra egyszerre.
Egy szabály viszont kivétel nélkül áll: a szerver saját részét nem szabad beleígérni. Amikor a szerverből kifogy a memória, nem egy gép, hanem minden egyszerre áll meg, a panel is. A vendégek közötti megosztás rugalmas lehet, a szerver saját mozgástere nem.
Mit csinál az Atlas
Az Atlas a memóriagrafikont nem egyetlen százalékként mutatja, hanem három részre bontja: amit maga a szerver használ, amit a vendégek használnak, és a swap.
A bontás számítással készül, nem becsléssel: a vendégek összege kivonódik a teljes felhasznált memóriából, a maradék pedig a szerver részének számít. A fenti valódi kérdés így egy pillantással megválaszolható: a telítettséget a gépek okozzák, vagy maga a szerver?
Kicsi, de fontos részlet: a grafikon felső határa a teljes memória utoljára ismert értéke, nem a sorozat elején mért érték. Az ok: hosszú időtávon a teljes memória változhat, és a régi érték felső határként másnak mutatja a grafikont, mint ami. A RAM bővítésének napján tehát a grafikon nem a régi határt rajzolja tovább, és nem vezet félre.
Források
A Proxmox saját dokumentációja. Angol nyelvű, és ebben a kérdésben az övé az utolsó szó.