Duże utylizacja CPU Fortigate
Jednym z problemów pojawiających się na Fortinecie jest duża utylizacja procesora
Sprawdzamy ja komendą
diagnose sys top CLI command
Przykład
Example output:
CLI# diagnose sys top
Run Time: 0 days, 0 hours and 58 minutes
280U, 35S, 35I; 502T, 319F, 67KF
ipsengine 58 R 63.5 6.5
scanunitd 951 S 11.2 1.3
280U, 35S, 35I; 502T, 319F, 67KF
ipsengine 58 R 63.5 6.5
scanunitd 951 S 11.2 1.3
Uznaczenia wyświetlanych informacji w drugiej lini:
* U jest to % używania CPU przez aplikacje użytkowników. W przykłądzie 28U czyli 28% CPU wykożystywane prze zużytkowników.
* S jest to % -owe wykorzystanie procesów systemowych lub procesów jądra (kernel) przez CPU. W tym przypadku 35S czyli 35% wydajności CPU używają procesy systemowe.
* I jest to % bezczynności (idle) CPU. W tym przypadku, 35I czyli 35% mocy obliczeniowej procesora jest nieużywane.
* T jest to całkowita zainstalowana pamięć w FortiOS w Mb. W przykładzie, 502T czyli 502 Mb pamięci systemowej.
* F jest ilością pamięci wolnej w Mb. W tym przypadku, 319F czyli 319 Mb pamięci jest wolne.
* KF jest to całkowita pamięć używana shared memory. W tym przypadku, 67KF system używa 67 shared memory pages.
* S jest to % -owe wykorzystanie procesów systemowych lub procesów jądra (kernel) przez CPU. W tym przypadku 35S czyli 35% wydajności CPU używają procesy systemowe.
* I jest to % bezczynności (idle) CPU. W tym przypadku, 35I czyli 35% mocy obliczeniowej procesora jest nieużywane.
* T jest to całkowita zainstalowana pamięć w FortiOS w Mb. W przykładzie, 502T czyli 502 Mb pamięci systemowej.
* F jest ilością pamięci wolnej w Mb. W tym przypadku, 319F czyli 319 Mb pamięci jest wolne.
* KF jest to całkowita pamięć używana shared memory. W tym przypadku, 67KF system używa 67 shared memory pages.
Następna linia wyświetlona w oknie pokazuje uruchomione procesy i np:
ipsengine 58 R 63.5 6.5
Gdzie:
* ipsengine jest to nazwa procesu. Inne nazwy procesów to authd, iked, newcli itd.
* 63 jest to process ID - numer ID procesu. Process ID może być dowolnym numrem.
* R jest to informacja o stanie uruchomionego procesu. Proces może mieć stany:
o R running - uruchomiony.
o S sleep - uśpiony.
o Z zombie - martwy-wiszący.
o D disk sleep - dysk uśpiony.
* 63.5 jest to procentowe wykorzystanie wydajności procesora CPU. Używanie CPU może przybierać wartości od 0.0 do wysokoich wartości max 100.00.
* 6.5 jest to użycie pamięci na potrzeby procesów. Zużycie pamięci może przybierać wartości od 0.1 do maksymalnej wartości zainstalowanej pamięci.
Interactive diagnose sys top commands
* 63 jest to process ID - numer ID procesu. Process ID może być dowolnym numrem.
* R jest to informacja o stanie uruchomionego procesu. Proces może mieć stany:
o R running - uruchomiony.
o S sleep - uśpiony.
o Z zombie - martwy-wiszący.
o D disk sleep - dysk uśpiony.
* 63.5 jest to procentowe wykorzystanie wydajności procesora CPU. Używanie CPU może przybierać wartości od 0.0 do wysokoich wartości max 100.00.
* 6.5 jest to użycie pamięci na potrzeby procesów. Zużycie pamięci może przybierać wartości od 0.1 do maksymalnej wartości zainstalowanej pamięci.
Interactive diagnose sys top commands
Podczas diagnostyki systemu możesz używać następujących klawiszy.
* Wciśnij q by zakończyć prace.
* Wciśnij c by posortować procesy po wartości używania CPU.
* Wciśnij m by posortować procesy po wielkości wykorzystania pamięci.
* Wciśnij c by posortować procesy po wartości używania CPU.
* Wciśnij m by posortować procesy po wielkości wykorzystania pamięci.
Zatrzymanie uruchomionych procesów
By zatrzymać uruchomiony proces możesz użyć następującej komendy:
diagnose sys kill
Gdzie:
* signal jest to jakiś numer przyczym 11 jest preforowany ponieważ wysyła sygnał z z zewnątrz do crashlog używanego przez Fortinet Support do rozwiązywania problemów.
* process id jest to numer porcosu ID wylistowany w komendzie diagnose sys top.
* process id jest to numer porcosu ID wylistowany w komendzie diagnose sys top.
Dla przykładu zatrzymanie procesu ID 112 będzie miało następującą postać:
diagnose sys kill 11 112
Komendy diagnostyczne
CLI commands you can issue to try and correct the problem in the short term.
# diag test application ipsmonitor
IPS Engine Test Usage: (Values for >
1: Display IPS engine information
2: Toggle IPS engine enable/disable status
3: Display restart log
4: Clear restart log
5: Toggle bypass status
6: Submit attack characteristics now
97: Start all IPS engines
98: Stop all IPS engines
99: Restart all IPS engines and monitor
The most common command that we issue to deal with the IPS Engine running high is the following which restarts the IPS process:
# diag test application ipsmonitor 99