Com funciona?
Requisits previs
S'està instal·lant CPULimit
Configuració de CPULimit amb una aplicació
S'està desinstal·lant CPULimit
CPULimit és una utilitat Linux que s'ofereix per limitar l'ús de recursos d'una aplicació. És útil quan es vol evitar que una sola aplicació alentitzi altres aplicacions; o impedir que una aplicació utilitzi un nucli o nuclis sencers durant un període de temps prolongat.
Dit això, és possible que CPULimit no funcioni amb totes les aplicacions, ja que (essencialment) inicia/atura els processos a intervals per reduir l'ús de la CPU (expressat com a mitjana). Això s'explicarà en la següent secció.
Com funciona?
CPULimit no està dissenyat per funcionar amb aplicacions que, per exemple, utilitzen control de treball; ja que es poden eliminar quan CPULimit envia un SIGSTOPsenyal d' aturada ( ). En essència, les aplicacions s'activaran/desactivaran ràpidament per tal de limitar un programa a un nombre desitjat de cicles.
No us preocupeu, però, la majoria de les aplicacions funcionaran. Algunes aplicacions que es poden limitar inclouen PHP, Java i Nginx.
Requisits previs
Per instal·lar CPULimit correctament, necessitareu:
- Un servidor amb CentOS 7 (només sistemes de 64 bits).
make, screeni wget.
- Accés o
sudoprivilegis root.
S'està instal·lant CPULimit
Suposant que teniu tots els requisits previs instal·lats, hauríeu de poder passar ràpidament pel procés d'instal·lació. Per començar, haureu de descarregar CPULimit i extreure el fitxer tarball:
cd ~
wget https://astuteinternet.dl.sourceforge.net/project/limitcpu/limitcpu/cpulimit-2.5.tar.gz
tar -xvf cpulimit-2.5.tar.gz
Un cop s'hagi extret el fitxer tarball, podem entrar al directori nou creat i començar a compilar CPULimit:
cd cpulimit-2.5
Ara, executeu makeper començar a compilar CPULimit en un binari:
make
Un cop finalitzat aquest procés, tindreu un binari al cpulimit-2.5directori. Per tal que estigui disponible a tot el sistema, haurem d'executar l'ordre següent:
make install
Pot ser que trigui algun temps a completar-se.
Configuració de CPULimit amb una aplicació
Per utilitzar CPULimit, haurem de conèixer l'ID del procés. Això es coneix com el PID. Amb l'ús toppodem veure una llista dels nostres processos:
top -c
Veureu una llista de processos i hauria de ser com el següent:
Tasks: 130 total, 1 running, 129 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.0 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3881740 total, 191952 free, 413472 used, 3276316 buff/cache
KiB Swap: 4063228 total, 4062912 free, 316 used. 2881364 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1336 plex 35 15 1368172 67464 6668 S 0.3 1.7 155:41.58 Plex Plug-in [com.plexapp.system] /usr/lib/plexmediaserver/Resources/Plug-ins-995f1dead+
31345 root 20 0 326572 21844 12784 S 0.3 0.6 86:45.32 docker-containerd --config /var/run/docker/containerd/containerd.toml
1 root 20 0 193704 6744 4088 S 0.0 0.2 6:49.22 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
2 root 20 0 0 0 0 S 0.0 0.0 0:01.45 [kthreadd]
3 root 20 0 0 0 0 S 0.0 0.0 0:12.77 [ksoftirqd/0]
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:0H]
7 root rt 0 0 0 0 S 0.0 0.0 0:13.95 [migration/0]
Si volguéssim limitar plex, per exemple, hauríem de prendre nota del PID. En aquest cas, és 1336. Si volem limitar plexal 15% de la CPU, hem de crear un screeni executar cpulimit:
screen -S limitcpu
cpulimit -p 1336 -l 15
Per sortir de la pantalla, utilitzeu la següent combinació: CTRL+ A+ D. Per entrar a la pantalla un cop sortiu, només heu d'executar el següent:
screen -r limitcpu
El format general a executar cpulimitserà el següent:
cpulimit -p (PROCESS PID) -l (CPU %)
Nota : PROCESS PIDés l'ID del procés i CPU %el límit de la CPU.
S'està desinstal·lant CPULimit
Eliminar CPULimit és senzill. Realitzeu les ordres següents:
cd ~/cpulimit-2.5
make deinstall