Cache, Ram etc. itp. - KVM

LinGruby | 2018-12-10 19:24:44 UTC | #1

Z racji sporo jest postów dotyczących cache i ram to są na to proste metody ( dotyczy tylko KVM ).

A mianowicie sprawdzanie zajętości ram

free -m

potem usuwamy cache jak brakuje ram i wchodzi już na swap:

metoda łagodna

sync; echo 1 > /proc/sys/vm/drop_caches

metoda bardziej restrykcyjna osobiście tylko jej używam:

sync; echo 3 > /proc/sys/vm/drop_caches

sprawdzamy ile nam zwolniło:

free -m

ot wszystko ;-)


Jest jeszcze metoda która zapobiega muleniu maszyny przy braku ram:

sprawdzamy:

cat /proc/sys/vm/min_free_kbytes

u mnie było 45056

ale po małym myk:

echo 128000 > /proc/sys/vm/min_free_kbytes

wartość zmieniła się na 128000, ale jest to metoda do momentu restartu potem wraca wszystko do ustawień poprzednich.

Jest na to metoda w /etc/rc.local

edytujemy i dodajemy:

echo 128000 > /proc/sys/vm/min_free_kbytes

przed exit 0 tak to wygląda:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

echo 128000 > /proc/sys/vm/min_free_kbytes

exit 0

i teraz mamy problem z głowy ;-)

Może się komuś przyda ;-)


SystemZ | 2017-03-15 23:29:46 UTC | #2

Podaj przynajmniej jeden rozsądny powód dla którego użytkownik chciałby opróżniać cache.
Z pewnością nie będzie to większa wydajność :stuckouttongue:


LinGruby | 2017-03-16 00:20:58 UTC | #3

  1. Ostatnio ( jakiś miesiąc noże dwa ) miałem zajęty ram 95% i już weszło ze 30% w swap ( sprawdzałem w htop ) po wykonaniu tej operacji zwolniło mi ponad 1gb ram po wyczyszczeniu cache i wszystko zaczęło poprawnie pracować ( sinusbot nie łapał czkawki, serwer APRSC zaczął poprawnie pracować i przestałem dostawał maile po nocach że coś nie tak etc, itp. )

Serwer APRSC średnio ponad setka krótkofalowców podłączona do serwera z całego świata ;-)

Mnie to wystarczyło i teraz co jakiś czas zwalniam cache ;-)


SystemZ | 2017-03-16 00:23:43 UTC | #4

Czyszczenie cache to leczenie objawowe.
Lepiej usunąć przyczynę.

W twoim wypadku należałoby zacząć od zmniejszenia swappiness do powiedzmy 10 a może nawet 1, w razie potrzeby można wyłączyć o ile na pewno RAM się nie wyczerpie. Na swoim lapku miałem w ogóle wyłączony i wydajnośc była super. Daj znać czy próbowałeś i jaki jest tego efekt.


LinGruby | 2017-03-16 00:40:12 UTC | #5

┌─ 01:24:43 root@ubuntu  
└──► [~] cat /proc/sys/vm/swappiness
60
┌─ 01:24:49 root@ubuntu  
└──► [~] sysctl vm.swappiness=10
vm.swappiness = 10
┌─ 01:32:28 root@ubuntu  
└──► [~] cat /proc/sys/vm/swappiness
10
┌─ 01:32:34 root@ubuntu  
└──► [~] swapoff -a
┌─ 01:32:54 root@ubuntu  
└──► [~] swapon -a

zobaczymy co się będzie dziać ;-)


helczyna | 2018-04-07 19:55:20 UTC | #6

Co się działo? :rofl:


LinGruby | 2018-04-07 20:09:08 UTC | #7

@helczyna przecież napisałem ;-)

[quote=”LinGruby, post:3, topic:2208”]
Ostatnio ( jakiś miesiąc noże dwa ) miałem zajęty ram 95% i już weszło ze 30% w swap ( sprawdzałem w htop ) po wykonaniu tej operacji zwolniło mi ponad 1gb ram po wyczyszczeniu cache i wszystko zaczęło poprawnie pracować ( sinusbot nie łapał czkawki, serwer APRSC zaczął poprawnie pracować i przestałem dostawał maile po nocach że coś nie tak etc, itp. )

Serwer APRSC średnio ponad setka krótkofalowców podłączona do serwera z całego świata :wink:

Mnie to wystarczyło i teraz co jakiś czas zwalniam cache :wink:
[/quote]


helczyna | 2018-04-07 20:19:19 UTC | #8

image|666x500


LinGruby | 2018-04-07 20:31:46 UTC | #9

A teraz nie wchodzi na swap i nawet zrobiłem sysctl vm.swappiness=1 jak mnie pamięć nie myli dawno to było ;-)