Często otrzymujemy pytania od klientów w stylu:
Dlaczego mój RAM jest zużyty w 100% skoro nic nie odpaliłem na VPS?
Proxmox pokazuje zużycie kilka GB RAM a w htop tylko 200 MB
Obie wartości są prawidłowe, pokazują trochę inne rzeczy. Chciałbym to w miarę prosto wytłumaczyć.
Proxmox
Z perspektywy Proxmox widać ile RAMu jest zużyte na wirtualnych kościach RAM. Wartości RAM widoczne w Proxmox nie są przydatne na co dzień i możecie spokojnie je zignorować.
To na co mam patrzeć?
Jako administrator VPS wystarczy, że uruchomisz komendę
free -h
Zostanie wyświetlona taka tabela
root@vps:~$ free -h
total used free shared buff/cache available
Mem: 31G 5,5G 16G 415M 9,3G 25G
Swap: 0B 0B 0B
Najważniejsza jest kolumna "available".
Ona pokazuje ile RAMu jest dostępnych dla aplikacji.
To na tą wartość należy patrzeć przy zarządzaniu VPS.
Możesz też uruchomić htop
. Ta wartość pod paskami zużycia CPU to właśnie "available".
Co dzieje się z resztą pamięci?
Reszta zużytego RAMu to cache który przyspiesza działanie aplikacji. Gdy jest trochę wolnego RAMu to system umieszcza tam pliki z dysku aby szybciej je wczytać gdyż RAM jest szybszy od dysku.
Ten cache w RAM jest ulotny. Jeśli tylko jakaś aplikacja będzie go potrzebować to cache zostanie usunięty aby zrobić miejsce dla Twoich aplikacji. Ale tylko tyle cache zostanie usunięte ile trzeba aby nie spowalniać wczytywania często używanych aplikacji.
Wszystko dzieje się automatycznie dzięki kenelowi (jądrze) Linux, nie musisz nic robić :slight_smile: