Het kan gebeuren dat je VPS traag is als gevolg van een hoge CPU load. Dit kan bijvoorbeeld gebeuren wanneer er zeer veel verkeer naar je VPS gaat, er een configuratiefout is in een van de processen, of er een bug is in de software. In dit artikel leggen wij uit hoe je de oorzaak van dit probleem kunt onderzoeken in Linux & Windows.
Een goede stap om mee te beginnen (ongeacht je besturingssysteem), is je VPS te controleren op beschikbare updates en na de installatie van eventuele updates je VPS te herstarten.
Controleer ook het CPU-gebruik zoals het wordt getoond in de grafiek in je controlepaneel. Je ziet daar of het CPU-gebruik voor je VPS over een periode van een of meerdere maanden structureel hoog is, of dat het een ongebruikelijke uitschieter is. In dit laatste geval is dat namelijk vaak een indicatie dat er iets mis is met de configuratie (of dat je last hebt van malware) en niet dat je per se een upgrade van je VPS nodig hebt.
- Wij hebben zelf geen inzage in de configuratie van de VPS'en van onze klanten en kunnen de oorzaak van hoog CPU gebruik niet zien. Door de stappen in dit artikel te doorlopen en de daaruit verkregen informatie met onze supportafdeling te delen kunnen zij wel met je meedenken.
- De CPU-grafieken in het controlepaneel laten maximaal 100% CPU-gebruik per core zien. Met 4 CPU cores heb je dus een limiet van 400%.
CPU load onderzoeken in Linux
Voor het onderzoeken van de oorzaak van een hoge CPU load raden wij aan het programma 'Top' te gebruiken (tegenhangers zoals htop zijn ook een prima keuze). Top is een process- en resource-monitor die in alle Linux-distro's aanwezig is (je kunt Top zien als een command-line tegenhanger van de Windows Task Manager). In ons artikel over Top gaan wij uitvoeriger in op het gebruik van Top.
Verbind via SSH of de VPS-console met je VPS en gebruik het commando:
top
Je krijgt een output te zien zoals in het voorbeeld hieronder (dit is een voorbeeld van een Plesk-VPS).
Druk op je toetsenbord tegelijk op shift + p om het overzicht te sorteren op CPU gebruik. Je ziet dan van boven naar beneden in de %CPU kolom welk proces veel CPU gebruikt. In de kolom 'Command' staat de naam van het bijbehorende proces (e.g. httpd voor Apache). Doorloop nu de volgende stappen om een mogelijke oorzaak van het hoge CPU-gebruik te vinden:
- Bekijk de logbestanden van het betreffende proces. In dit specifieke voorbeeld op een Plesk-VPS zou je voor httpd kijken naar de logbestanden in /var/log/httpd/
- Herstart het proces dat een hoog CPU-gebruik heeft. In ons voorbeeld van de Plesk-VPS herstart je het httpd proces met:Vervang 'httpd' door de naam van het proces met de hoge CPU-load.
systemctl restart httpd
- Controleer de systemd logs voor het specifieke proces:Vervang ook hier 'httpd' door de naam van het proces met de hoge CPU-load. Onderzoek eventuele foutmeldingen die je terug ziet en herstart na het verhelpen van de problemen het betreffende proces (e.g. systemctl restart httpd).
journalctl -xe -u httpd
CPU load onderzoeken in Windows Server
Ervaar je een hoge CPU load op je Windows Server, dan is het belangrijk om voor jezelf te evalueren of dit een uitzondering is, of de VPS zelf te klein is. Windows gebruikt standaard namelijk veel meer resources dan Linux. Zeker bij een X1 of X4 zul je dit sneller merken.
Voor het onderzoeken van de oorzaak van een hoge CPU load gebruiken wij in Windows Server de Windows Task Manager. Je opent de Task Manager door met de rechter muisknop op de taakbalk te klikken (i.e. de balk onderaan je scherm) en op 'Task Manager' te klikken.
Je krijgt een overzicht van de actieve processen te zien. Klik op 'CPU' om de Task Manager op CPU te sorteren. Je krijgt zo heel snel een idee van welk proces er zorgt voor een hoge CPU load.
Zie je hier een specifiek proces met een hoge CPU load? Herstart dan het proces en controleer de logbestanden van het specifieke proces. Zie je niets terug in de logbestanden? Raadpleeg dan de Windows Event Viewer (het Windows systeem- en applicatielog), door de start knop in te drukken en te zoeken op 'Event Viewer'.
Klik in de Event Viewer op 'Windows Logs' > 'Application'. Voor een duidelijker overzicht kun je rechts op 'Filter Current Log' klikken en alle opties behalve 'Information' aanvinken.
Vooral de rode 'Errors' zijn interessant om te onderzoeken (in dit screenshot is een error gegenereerd door een vastgelopen proces dat vanuit de Task Manager is gesloten).
Mocht je aan de hand van dit artikel nog vragen hebben, aarzel dan niet om onze supportafdeling te benaderen. Je kunt hen bereiken via de knop 'Neem contact op' onderaan deze pagina.