środa, 14 września 2011

CentOS - monitorowanie użycia CPU

Podstawowe narzędzia do sprawdzania obciążenia procesora.
Narzędzie top. Proste w użyciu pokazuje podstawowe informacje o procesach, zajętości procesora i pamięci.

#top

Inne znacznie ciekawsze narzędzie to mpstat

#mpstat -P ALL
Powyższe polecenie pokaże informacje o każdym procesorze z osobna, jak i sumarycznie wszystkie.

Innym przydatnym narzędziem jest sar. Pozwala na generowanie raportów minutowych.

#sar -u 2 5
Opcje:
-u 2 5 : pokaże 5 raportów generowanych co 2 sekundy

Opis wartości:
%user : czas procesora spędzony na wykonywaniu zadań użytkownika (aplikacje)
%nice : jak wyżej ale zlicza czas procesora wykorzystany przez procesy z niższym priorytetem
%system : czas procesora wykorzystany na zadnia systemowe (kernel)
%iowait : procent czasu procesora w którym był bezczynny oczekując na urządzenia I/O
%idle : procent czasu procesora w którym nic nie robił

Przydatną opcją jest wykorzystanie narzędzia sar razem z nohup aby równolegle przez pewien okres czasu sprawdzał obciążenie procesora

#nohup sar -u 60 30 &
Wykona 30 raportów co 60 sekund i zapisze wynik do pliku nohup.out

Aby odnaleźć procesy zajmujące największą ilość czasu procesora można posłużyć się poleceniem ps

#ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10
#ps -eo pcpu,pid,user,args | sort -r -k1 | less
Powyższe polecenie pokaże 10 procesów, które zajmują największą ilość czasu procesora.

Inne przydatne polecenie, również pomocne w sprawdzeniu zajętości CPU to iostat

1 komentarz:

  1. w dwoch ostatnich poleceniach opcje ps są w złej kolejności, ma być ps -eo, także w pierwszym poleceniu ps jest kropka zamiast przecinka pomiedzy pid i user.

    OdpowiedzUsuń