CPUTool - Ierobežojiet un kontrolējiet jebkura procesora izmantošanu Linux


Viena no kritiskajām jomām Linux veiktspējas uzraudzības rīkos, lai sekotu līdzi tam, kā viss notiek sistēmā.

Vairāki no šiem rīkiem vienkārši izsniedz sistēmas stāvokli/statistiku, bet daži citi nodrošina jums sistēmas veiktspējas pārvaldības līdzekļus. Viens no šādiem rīkiem ar nosaukumu CPUTool.

CPUTool ir vienkāršs, tomēr spēcīgs komandrindas rīks, lai ierobežotu un kontrolētu jebkura procesa centrālā procesora izmantošanu līdz noteiktai robežai un ļauj pārtraukt procesa izpildi, ja sistēmas slodze pārsniedz noteiktu slieksni.

Lai ierobežotu CPU izmantošanu, cputool nosūta SIGSTOP un SIGCONT signālus procesiem, un to nosaka sistēmas slodze. Tas paļaujas uz/proc pseidofailu sistēmu, lai lasītu PID un to procesora izmantošanas pasākumus.

To var izmantot, lai ierobežotu CPU lietošanu vai sistēmas slodzi, ko ietekmē viens process vai procesu grupa, līdz noteiktai robežai un/vai apturētu procesus, ja sistēmas slodze pārsniedz slieksni.

Instalējiet CPUTool, lai ierobežotu CPU izmantošanu un ielādētu vidēji

CPUTool ir pieejams instalēšanai tikai Debian/Ubuntu un tā atvasinājumos no noklusējuma sistēmas krātuvēm, izmantojot pakotņu pārvaldības rīku.

$ sudo apt install cputool

Tagad apskatīsim, kā cputool patiešām darbojas. Lai to visu parādītu, mēs palaidīsim komandu dd, kuras rezultātam vajadzētu būt lielam CPU procentam fonā un parādīt tā PID.

# dd if=/dev/zero of=/dev/null &

Lai uzraudzītu procesora lietojumu, mēs varam izmantot skatienu rīkus, kas ļauj mums reāllaikā apskatīt regulāri atjauninātu darbojošās Linux sistēmas procesu stāvokli:

# top

No iepriekš minētās izejas mēs varam redzēt, ka komandai dd ir vislielākais CPU laika procents 99,7%) Tagad mēs to varam ierobežot, izmantojot cputool, kā parādīts zemāk.

Karodziņu --cpu-limit vai -c izmanto, lai iestatītu procesa vai procesu grupas lietošanas procentuālo daļu un -p , lai norādītu PID. Šī komanda ierobežos komandu dd (PID 8275) līdz 50% viena CPU kodola izmantošanas:

# cputool --cpu-limit 50 -p 8275 

Pēc cputool palaišanas mēs vēlreiz varam pārbaudīt jauno procesora lietojumu procesam (PID 8275). Tagad procesora lietojumam dd procesam jābūt diapazonā no (49,0% -52,0%).

# top

Lai vēl vairāk ierobežotu dd CPU izmantošanu līdz 20%, mēs varam palaist cputool otro reizi:

# cputool --cpu-limit 20 -p 8275 

Pēc tam nekavējoties pārbaudiet, izmantojot tādus rīkus kā šādi skatieni (dd procesora lietojumam tagad jābūt diapazonā no 19,0% līdz 22,0% vai nedaudz tālāk par to):

# top

Ņemiet vērā, ka čaula negaida lietotāja ievadi, kamēr darbojas cputool; tāpēc kļūst nereaģējošs. Lai to nogalinātu (tas pārtrauks CPU izmantošanas ierobežošanas darbību), nospiediet Ctrl + C .

Svarīgi, lai norādītu procesu grupu (vienu programmu ar vairākām darbojošām instancēm, katrai ar atšķirīgu PID), piemēram, HTTP tīmekļa serveri:

# pidof apache2
9592 3643 3642 3641 3640 3638 3637 1780

Izmantojiet karodziņu -P šādi:

# cputool --cpu-limit 20 -P 1780

Opciju -l izmanto, lai norādītu maksimālo slodzi, ko sistēma var izmantot, lai process vai procesu grupa turpinātu darboties. Mēs varam izmantot daļu vērtību (piemēram, 2,5).

Tālāk sniegtais piemērs nozīmē palaist rsync vietējai dublējumkopijai tikai tad, ja sistēmas slodze nepārsniedz 3,5:

# cputool --load-limit 3.5 --rsync -av /home/tecmint /backup/`date +%Y-%m-%d`/

Lai iegūtu papildinformāciju un lietošanu, skatiet CPUTool rokasgrāmatas lapu:

# man cputool

Pārbaudiet šīs noderīgās rokasgrāmatas, lai atrastu CPU informāciju un CPU veiktspējas uzraudzību:

  1. 9 noderīgas komandas, lai iegūtu procesora informāciju operētājsistēmā Linux
  2. Cpustat - uzrauga CPU izmantošanu, darbinot procesus Linux
  3. CoreFreq - jaudīgs CPU uzraudzības rīks Linux sistēmām
  4. Atrodiet vislabākos procesus pēc vislielākās atmiņas un procesora izmantošanas Linux sistēmā

Visbeidzot, CPUTool patiešām noder Linux veiktspējas pārvaldībai. Dalieties savās domās par šo rakstu, izmantojot zemāk esošo atsauksmju veidlapu.