Rajoita prosessorin käyttöä prosessorissa Linuxissa CPULimit-työkalulla
Aikaisemmassa viestissä olemme selittäneet CPUToolia minkä tahansa Linuxissa olevan prosessorin CPU-käytön rajoittamiseksi ja hallitsemiseksi. Sen avulla järjestelmänvalvoja voi keskeyttää prosessin (tai prosessiryhmän) suorittamisen, jos suorittimen/järjestelmän kuormitus ylittää määritetyn kynnyksen. Täällä opit käyttämään vastaavaa työkalua nimeltä cpulimit.
Cpulimitillä rajoitetaan prosessorin suorittimen käyttöä samalla tavalla kuin CPUTool, mutta se tarjoaa enemmän käyttömahdollisuuksia verrattuna vastaavaan. Yksi tärkeä ero on se, että cpulimit ei hallitse järjestelmän kuormitusta toisin kuin cputool.
Asenna CPULimit rajoittaaksesi prosessorin suorittimen käyttöä Linuxissa
CPULimit on saatavana asennettavaksi Debianin/Ubuntun ja sen johdannaisten oletusohjelmistovarastoista paketinhallintatyökalun avulla.
$ sudo apt install cpulimit
RHEL/CentOS: ssa ja Fedorassa sinun on ensin otettava käyttöön EPEL-arkisto ja asennettava sitten cpulimit kuvan osoittamalla tavalla.
# yum asenna epel-release
# yum asenna cpulimit
Tässä alaosassa kerromme, miten cpulimit toimii. Suoritetaan ensin komento (sama dd-komento, jota tarkastelimme samalla kun peitämme cputoolia), jonka pitäisi johtaa korkeaan suorittimen prosenttiosuuteen taustalla (huomaa, että prosessin PID tulostetaan komennon suorittamisen jälkeen).
$ dd if=/dev/zero of=/dev/null & [1] 17918
Seuraavaksi voimme käyttää silmäystyökaluja, jotka tuottavat käynnissä olevan Linux-järjestelmän todellisen usein päivitetyn tilan, tarkkailemaan yllä olevan komennon suorittimen käyttöä.
$ top
Yllä olevaa lähtöä tarkasteltaessa voidaan nähdä, että dd-prosessi käyttää suurinta prosenttiosuutta prosessorin ajasta 100,0%.
Mutta voimme rajoittaa tätä käyttämällä cputlimit seuraavasti. Vaihtoehtoa --pid
tai -p
käytetään määrittämään PID ja --limit
tai -l
on käytetään prosessin käyttöprosentin asettamiseen.
Alla oleva komento rajoittaa dd-komennon (PID 17918) 50 prosenttiin yhden CPU-ytimen käytöstä.
$ sudo cpulimit --pid 17918 --limit 50 Process 17918 detected
Kun suoritamme cpulimit, voimme tarkastella dd-komennon nykyistä suorittimen käyttöä yhdellä silmäyksellä. Lähdön arvo vaihtelee välillä (51,5-55,0% tai hieman yli).
Voimme kuristaa sen suorittimen käyttöä toisen kerran seuraavasti, tällä kertaa alentamalla prosenttiosuutta seuraavasti:
$ sudo cpulimit --pid 17918 --limit 20 Process 17918 detected
Kuten aikaisemmin, voimme suorittaa ylhäältä tai silmäyksillä nähdäksesi prosessin uuden CPU-käytön, joka vaihtelee välillä 20% -25,0% tai hieman yli tämän.
$ top
Huomaa: Kuoresta tulee vuorovaikutteinen - ei odota käyttäjän syötettä, kun cpulimit on käynnissä. Voit tappaa sen (jonka pitäisi keskeyttää suorittimen käytön rajoitustoiminto) painamalla [Ctrl + C]
.
Suorita cpulimit taustaprosessina käyttämällä --background
- tai -b
-kytkintä vapauttamalla pääte.
$ sudo cpulimit --pid 17918 --limit 20 --background
Määritä järjestelmässä olevien suorittimen ytimien määrä käyttämällä --cpu
- tai -c
-lippua (tämä havaitaan yleensä automaattisesti).
$ sudo cpulimit --pid 17918 --limit 20 --cpu 4
Sen sijaan, että rajoittaisimme prosessorin suorittimen käyttöä, voimme tappaa sen --kill
- tai -k
-vaihtoehdolla. Oletus on prosessille lähetetty signaali SIGCONT, mutta jos haluat lähettää toisen signaalin, käytä lippua --signal
tai -s
.
$ sudo cpulimit --pid 17918 --limit 20 --kill
Jos haluat poistua, jos sopivaa kohdeprosessia ei ole tai jos se kuolee, sisällytä näin -z
tai --lazy
.
$ sudo cpulimit --pid 17918 --limit 20 --kill --lazy
Lisätietoja ja käyttövaihtoehtoja on cpulimit-man-sivulla.
$ man cpulimit
Tarkista seuraavat hyödylliset oppaat suorittimen tietojen ja suorittimen/järjestelmän suorituskyvyn valvonnan löytämiseksi.
- Etsi parhaimmat käynnissä olevat prosessit suurimman muistin ja suorittimen käytön mukaan Linuxissa
- Cpustat - valvoo suorittimen käyttöä suorittamalla prosesseja Linuxissa
- CoreFreq - tehokas suorittimen seurantatyökalu Linux-järjestelmille
- Etsi parhaimmat käynnissä olevat prosessit suurimman muistin ja suorittimen käytön mukaan Linuxissa
- 20 komentorivityökalua Linuxin suorituskyvyn seuraamiseksi
- 13 Linux Performance Monitoring Tools - Part 2
Vertailun vuoksi huomasimme CPUToolin ja CPULimitin testaamisen jälkeen, että edellinen tarjoaa tehokkaamman ja luotettavamman "prosessorin suorittimen käytön rajoituksen" toiminnallisuuden.
Tämä perustuu prosessorin käytön prosentuaaliseen alueeseen, joka havaitaan sen jälkeen, kun molemmat työkalut on suoritettu tiettyä prosessia vastaan. Kokeile molempia työkaluja ja lisää ajatuksesi tähän artikkeliin käyttämällä alla olevaa palautelomaketta.