V rámci úkolů správy serverů založených na prostředích Linuxu je zásadní součástí optimálního vývoje sledování využití CPU jak na úrovni procesů a služeb, tak na úrovni uživatelů, protože nadměrné používání procesoru ovlivní normální výkon serveru tím, že nevyvíjí každou aktivitu přirozeně a se správnými parametry.
Je normální, že počítače „visí“, protože jsou nasyceny procesy nebo akcemi uživatelů, ale někdy je obtížné přesně zjistit, kde je problém.
CPUTool je jednoduchý nástroj, který nám umožňuje ověřovat využití procesoru v reálném čase, a tak být schopen omezit a řídit používání těmi procesy, službami nebo uživateli, kteří mají vysokou úroveň využití, což nám umožňuje stabilizovat chování serveru.
Také pomocí tohoto nástroje můžeme zastavit proces, pokud překročí stanovené limity. Pro tuto analýzu použijeme server Ubuntu 17.04, protože CPUTools je kompatibilní s prostředím Debianu a Ubuntu. CPUTool vysílá signály SIGSTOP a SIGCONT každému procesu a to určuje zatížení každého procesu pro jeho příslušnou analýzu.
Krok 1
Chcete -li nainstalovat CPUTool na server Ubuntu 17.04, spustíme následující příkaz:
sudo apt install cputool
ZVĚTŠIT
Krok 2
Abychom zkontrolovali, jak tento nástroj funguje, spustíme následující řádek, který předpokládá vysokou spotřebu CPU:
dd if = / dev / nula = / dev / null &Můžeme použít příkaz top, abychom měli v reálném čase zprávu o aktivních procesech Ubuntu:
ZVĚTŠIT
Krok 3
Vidíme, že PID 2801 v současné době spotřebovává 99,3% CPU, což je poněkud vysoké pro jeden proces a uživatele, a tam přichází CPUTools do hry. Parametr --cpu -limit nebo -c můžeme použít k omezení určitého procesu na určité procento využití CPU, například pokud chceme, aby tento proces využíval pouze 45% CPU, provedeme následující:
cputool -limit CPU 45 -p 2801Parametr -p udává název PID. Pokud znovu spustíme horní příkaz, uvidíme snížení využití CPU:
ZVĚTŠIT
Krok 4
K zastavení používání top použijeme klávesy Ctrl + C. Chceme -li zobrazit a řídit skupinu procesů, musíme nejprve vědět, která PID jej tvoří, například pokud chceme vidět procesy webového serveru, použijte následující řádek:
pidof apache2Výsledkem bude následující:
ZVĚTŠIT
Krok 5
Tam můžeme použít parametr -P k omezení používání uvedené skupiny procesů:
cputool -limit CPU 15 -P 1532Chcete -li zobrazit všechny možnosti, které máme s CPUTool, můžeme použít následující příkaz:
člověk cputool
ZVĚTŠIT
Díky tomuto příkazu budeme přesně řídit každý proces, který ovlivňuje výkon procesoru.