Binnen de taken van het beheer van servers op basis van Linux-omgevingen, is het een fundamenteel onderdeel voor de optimale ontwikkeling om het gebruik van CPU te bewaken, zowel op het niveau van processen en services als op het niveau van gebruikers, aangezien overmatig gebruik van de processor invloed zal hebben op de normale prestaties van de server door niet elke activiteit natuurlijk en met de juiste parameters te ontwikkelen.
Het is normaal dat computers "vastlopen" omdat ze verzadigd zijn met processen of acties van gebruikers, maar soms is het moeilijk om precies te detecteren waar het probleem ligt.
CPUTool is een eenvoudig hulpmiddel waarmee we het CPU-gebruik in realtime kunnen verifiëren en zo het gebruik door die processen, services of gebruikers met een hoog gebruiksniveau kunnen beperken en controleren, waardoor we het gedrag van de server kunnen stabiliseren.
Ook met deze tool kunnen we een proces stoppen als het de vastgestelde limieten overschrijdt. Voor deze analyse zullen we Ubuntu 17.04 Server gebruiken, aangezien CPUTools compatibel is voor Debian- en Ubuntu-omgevingen. CPUTool stuurt SIGSTOP- en SIGCONT-signalen naar elk proces en dit bepaalt de belasting van elk proces voor zijn respectieve analyse.
Stap 1
Om CPUTool op Ubuntu 17.04 Server te installeren, voeren we de volgende opdracht uit:
sudo apt install cputool
VERGROTEN
Stap 2
Om te controleren hoe deze tool werkt, zullen we de volgende regel uitvoeren die een hoog CPU-verbruik veronderstelt:
dd if = / dev / nul van = / dev / null &We kunnen het commando top gebruiken om een realtime rapport te krijgen van de actieve Ubuntu-processen:
VERGROTEN
Stap 3
We kunnen zien dat PID 2801 momenteel 99,3% van de CPU verbruikt, wat enigszins hoog is voor een enkel proces en gebruiker en dat is waar CPUTools in het spel komt. We kunnen de --cpu-limit of -c parameter gebruiken om een bepaald proces te beperken tot een bepaald percentage van het CPU-gebruik. Als we bijvoorbeeld willen dat dit proces slechts 45% van de CPU gebruikt, zullen we het volgende uitvoeren:
cputool --cpu-limiet 45 -p 2801De parameter -p geeft de naam van de PID aan. Als we het top-commando opnieuw uitvoeren, zien we het CPU-gebruik dat is afgenomen:
VERGROTEN
Stap 4
Om het gebruik van top te stoppen, gebruiken we de toetsen Ctrl + C. Als we een groep processen willen weergeven en besturen, moeten we eerst weten uit welke PID's deze bestaat, bijvoorbeeld als we de webserverprocessen willen zien gebruik de volgende regel:
pidof apache2Het resultaat zal het volgende zijn:
VERGROTEN
Stap 5
Daar kunnen we de parameter -P gebruiken om het gebruik van de genoemde groep processen te beperken:
cputool --cpu-limiet 15 -P 1532Om alle opties te zien die we met CPUTool hebben, kunnen we de volgende opdracht gebruiken:
man computer
VERGROTEN
Dankzij deze opdracht zullen we elk proces dat van invloed is op de prestaties van de CPU nauwkeurig controleren.