Kwaliteit en service staan bij ons hoog in het vaandel. Zodoende monitoren we onze servers en de hostingpakketten die daarop staan nauwkeurig. Voor een goed functionerende website houden we de belangrijkste punten in de gaten. Denk hierbij aan opslagruimte, dataverkeer en rekenkracht. Speelt er iets wat impact heeft op de gezondheid van je website, dan ontvang je daarover een e-mail met uitleg en tips hoe je het kunt oplossen.
Hieronder staan de categorieën waarop deze proactieve monitoring controleert en over rapporteert. In deze handleiding lichten we ze toe en geven we tips voor het herleiden en oplossen van eventuele problemen.
-
Opslagruimte
-
Dataverkeer
-
Processorkracht (CPU)
-
Werkgeheugen (RAM)
-
Geheugenverbruik
-
Geheugenfouten
-
Verbindingen (Entry processes)
-
Gebruikte verbindingen
-
Verbindingsfouten
-
Processen (nProc)
-
Gebruikte processen
-
Procesfouten
-
I/O-verkeer
Opslagruimte
Wat is het?
Een vanzelfsprekende categorie is de opslagruimte die een webhostingpakket verbruikt. Op het moment dat je dat maximum nadert, brengen we je hiervan op de hoogte, om vervelende verrassingen te voorkomen.
Symptomen en problemen
Wanneer een webhostingpakket de maximale beschikbare schijfruimte verbruikt, dan kan er op het pakket geen nieuwe data worden opgeslagen. Dit houdt in dat er geen nieuwe e-mail op het pakket ontvangen kan worden, of dat de website problemen heeft bij het wegschrijven van data; denk bij dat laatste aan bijvoorbeeld sessiebestanden, of (media-)uploads.
Mogelijke oorzaken
Hoog schijfruimteverbruik kan meerdere oorzaken hebben. Zo kan het bijvoorbeeld zijn dat er al langere tijd e-mail wordt opgeslagen in mailaccounts, waardoor deze na verloop van tijd voller raken. Ook kan het in sommige gevallen zijn dat er (onnodig) backup data wordt opgeslagen op een webhostingpakket, welke veel ruimte in beslag neemt. Andere oorzaken die meer aan de misconfiguratie-kant liggen zijn bijvoorbeeld (overvolle) caching-mappen binnen een webapplicatie, of extreem grote databases.
Oplossing
De oplossing is nauw gerelateerd aan de oorzaak van het hoge schijfruimteverbruik. Wanneer er bijvoorbeeld veel e-mail wordt opgeslagen, kan je overwegen oudere berichten te verwijderen. Als er onnodig veel back-ups bewaard worden op het pakket, kan je overwegen om deze te downloaden en lokaal op te slaan, om zo kostbare ruimte op de hostingomgeving vrij te maken.
Wil of kan je het verbruik niet terugdringen door data te verwijderen, dan is het alternatief om het hostingpakket in kwestie te upgraden, naar een variant die meer schijfruimte biedt. Zie hiervoor ook deze handleiding over upgraden.
Dataverkeer
Wat is het?
Het dataverkeer is de hoeveelheid verkeer van- en naar een webhostingpakket op de servers van Antagonist. Je kan dit hetzelfde zien als bijvoorbeeld een datalimiet bij mobiel internet. Op het moment dat je dat maximum nadert, brengen we je hiervan op de hoogte, om vervelende verrassingen te voorkomen.
Symptomen en problemen
Wanneer een webhostingpakket de maandelijkste hoeveelheid dataverkeer heeft verbruikt, dan wordt dit pakket tijdelijk geblokkeerd tot de ingang van de volgende maand. Hierdoor kan er niet meer dataverkeer plaatsvinden dan het gestelde maximum, maar dit houdt ook in dat de website vanaf dat moment onbereikbaar is voor bezoekers.
Mogelijke oorzaken
Hoog dataverkeer kan meerdere oorzaken hebben. Zo kan het simpelweg zo zijn dat de website drukker bezocht is, en dat hogere bezoekersaantallen ook voor evenredig meer dataverkeer zorgen. Andere oorzaken kunnen bijvoorbeeld indexeringen door zoekmachines of externe verwijzingen naar een bestand of onderdeel binnen een website zijn. Ook kunnen in sommige gevallen misconfiguraties, zoals een overenthousiast e-mailprogramma of een onderdeel binnen de website, per abuis voor veel dataverkeer zorgen.
Je kan in DirectAdmin gerichter de oorzaak terugvinden door naar 'Systeeminfo en bestanden' → 'Statistieken en logs' te kijken. Je kan hier bij ‘Gebruikersstatistieken’ op 'Bandbreedte' klikken en met de knop ‘Details’ kijken welk onderdeel van het pakket (de website, e-mail, FTP) het meeste dataverkeer veroorzaakt.
Tevens kan je op dezelfde pagina onder 'Domeinstatistieken’ op de gewenste domeinnaam klikken om specifieke statistieken over het webverkeer te bekijken. Langs die weg kan je terugvinden welke bestanden of pagina’s voor een website het meeste dataverkeer veroorzaken.
Oplossing
Wanneer het dataverkeer voor een bepaalde maand verbruikt is, dan kan je wachten tot de nieuwe maand ingaat. Dat is echter doorgaans niet wenselijk, omdat het pakket dan voor het restant van de maand onbereikbaar is. Daarom kan je ook (tijdelijk of permanent) upgraden, zodat de website direct weer bereikbaar wordt.
Zie hiervoor ook deze handleiding over upgraden.
CPU Usage
Wat is het?
De CPU is het werkpaard van een server. Alles wat een server doet, wordt berekend in deze centrale processor. Als gebruiker op een server krijgt jouw webhostingpakket sinds de introductie van ons nieuwe platform een eigen deel van deze rekentijd toegewezen. Zo kan een pakket bijvoorbeeld over een of meerdere CPU-cores beschikken, welke deze kan gebruiken voor rekenoperaties.
Symptomen en problemen
Wanneer scripts op een website, bijvoorbeeld in de vorm van een applicatie of CMS, uitzonderlijk veel rekentijd van de CPU vragen, kan het voorkomen dat de CPU volledig belast wordt. Dit is op zichzelf geen direct probleem, maar wanneer nieuwe processen vervolgens moeten wachten op CPU-tijd, kan dat voor vertraging zorgen, met bijvoorbeeld de opstapeling van processen als gevolg.
Mogelijke oorzaken
CPU-problemen zijn relatief zeldzaam. Dit komt voornamelijk voor bij extreem inefficiënte of zware scripts, of gebruik van bijvoorbeeld een verouderde versie van PHP welke minder efficiënt met resources omgaat.
Het kan echter ook voorkomen dat een website of websites wel volledige correct werken en geoptimaliseerd zijn, maar simpelweg dusdanig veel bezocht worden en succesvol zijn dat er behoefte is aan meer rekenkracht, in de vorm van CPU.
Oplossing
De eerste controle is in zo’n geval doorgaans of de PHP-omgeving voor het pakket wel (correct) de laatste beschikbare versie gebruikt. In latere versies van PHP wordt er namelijk significant beter omgegaan met server-resources. Zorg dus dat jouw pakket de nieuwst mogelijke PHP versie gebruikt. Zie hiervoor ook deze handleiding.
Mocht het niet aan de PHP-versie liggen, dan is het interessant om te kijken naar de actieve processen op een moment van verhoogde belasting. Je kunt op de nieuwere pakketten rechtstreeks een proces-lijst opvragen via het Linux commando ‘ps aux’. De commandline kan via SSH gebruikt worden. Zie hiervoor deze handleiding.
Voor pakketten waar dit niet mogelijk is, kan het ook verstandig zijn om bijvoorbeeld de serverlogs te controleren, om na te gaan wat voor aanvragen er naar de website lopen. Dit kan in sommige gevallen een indicatie geven van welke onderdelen binnen de website veel rekenkracht verbruiken. De serverlogs zijn in DirectAdmin terug te vinden onder 'Systeeminfo en bestanden' → 'Statistieken en logs'.
Daarnaast zijn er ook andere stappen die je kunt doorlopen om resource-verbruik te verlagen. Denk hierbij bijvoorbeeld aan het optimaliseren van de website, door een CMS te updaten naar de laatste versie, Caching in te stellen, of door ongebruikte of zware plugins, modules, extensies of thema’s uit te schakelen, te vervangen of te verwijderen.
Is het webhostingpakket wel volledig geoptimaliseerd, maar is er toch behoefte aan meer rekenkracht, dan kan je overwegen om over te stappen naar een pakket dat meer CPU cores biedt. Zie hiervoor ook deze handleiding over upgraden.
Mocht je hier niet uitkomen, dan kan je vanzelfsprekend ook contact opnemen met onze support, via support@antagonist.nl
Geheugen (RAM)
Wat is het?
Met geheugen (RAM) wordt het fysieke werkgeheugen bedoeld dat processen op de server gebruiken. Als gebruiker op een server beschikt jouw webhostingpakket sinds de introductie van ons nieuwe platform over een eigen gegarandeerde hoeveelheid RAM. Dit geheugen wordt gebruikt door de processen van bijvoorbeeld de website(s) op jouw pakket.
Symptomen en problemen
Wanneer script op een website, bijvoorbeeld in de vorm van een applicatie of CMS, uitzonderlijk veel werkgeheugen gebruikt, kan het voorkomen dat het geheugen voor jouw webhostingpakket opraakt. Dit is direct een probleem, omdat er dan geen geheugen beschikbaar is voor processen om te gebruiken. Dit zal dan ook in vrijwel alle gevallen zorgen voor direct fouten binnen de website, bijvoorbeeld een 503- of 500-foutmelding.
Omdat volledig verbruik van het beschikbare werkgeheugen direct gevolgen kan hebben voor de bereikbaarheid van jouw website, worden zowel het toegenomen verbruik qua aantallen als het optreden van eventuele fouten als gevolg hiervan door Antagonist gecontroleerd en gerapporteerd.
Mogelijke oorzaken
Overmatig gebruik van RAM heeft een aantal mogelijke oorzaken. Zo kan er sprake zijn van misconfiguratie, waarbij bijvoorbeeld een extreem inefficiënt of zwaar script, een zware plugin, of een on-geoptimaliseerd CMS te veel geheugen vraagt van de server.
Daarnaast kan het ook zijn dat een applicatie wel correct functioneert, maar simpelweg van huis uit hogere geheugeneisen kent. Denk hierbij bijvoorbeeld aan zware E-commerce oplossingen, zoals Magento, welke van nature meer geheugen van de server vragen.
Daarnaast kan zoals ook bij CPU het geval is, het gebruik van een verouderde versie van PHP negatieve invloed hebben op hoe efficiënt een website met beschikbare resources omgaat.
Het kan echter ook voorkomen dat een website of websites wel volledig correct werken en geoptimaliseerd zijn, maar simpelweg dusdanig veel bezocht worden en succesvol zijn dat er behoefte is aan meer geheugen (RAM).
Oplossing
De eerste controle is ook bij RAM of de PHP-omgeving voor het pakket wel (correct) de laatste beschikbare versie gebruikt. In latere versies van PHP wordt er namelijk significant beter omgegaan met server-resources. Zorg dus dat jouw pakket de nieuwst mogelijke PHP versie gebruikt. Zie hiervoor ook deze handleiding.
Mocht het niet aan de PHP-versie liggen, dan is het interessant om te kijken naar de actieve processen op een moment van verhoogde belasting. Je kunt op de nieuwere pakketten rechtstreeks een proces-lijst opvragen via het Linux commando ‘ps aux’. De commandline kan via SSH gebruikt worden. Zie hiervoor deze handleiding.
Voor pakketten waar dit niet mogelijk is, kan het ook verstandig zijn om bijvoorbeeld de serverlogs te controleren, om na te gaan wat voor aanvragen er naar de website lopen. Dit kan in sommige gevallen een indicatie geven van welke onderdelen binnen de website veel rekenkracht verbruiken. De serverlogs zijn in DirectAdmin terug te vinden onder 'Systeeminfo en bestanden' → 'Statistieken en logs'.
Daarnaast zijn er ook andere stappen die je kunt doorlopen om resource-verbruik te verlagen. Denk hierbij bijvoorbeeld aan het optimaliseren van de website, door een CMS te updaten naar de laatste versie, Caching in te stellen, of door ongebruikte of zware plugins, modules, extensies of thema’s uit te schakelen, te vervangen of te verwijderen.
Is het webhostingpakket wel volledig geoptimaliseerd, maar is er toch behoefte aan meer rekenkracht, dan kan je overwegen om over te stappen naar een pakket dat meer geheugen (RAM) biedt. Zie hiervoor ook deze handleiding over upgraden.
Mocht je hier niet uitkomen, dan kan je vanzelfsprekend ook contact opnemen met onze support, via support@antagonist.nl
Verbindingen (Entry Processes)
Wat is het?
De webserver, bij Antagonist Apache, is verantwoordelijk voor het serveren van de website aan jouw bezoekers. Webservers hebben een maximum aantal verbindingen die ze tegelijkertijd kunnen afhandelen. Om te garanderen dat websites geen hinder van elkaar ondervinden, heeft iedere gebruiker een eigen aantal gelijktijdige verbindingen. Een hostingpakket kan 40 gelijktijdige verbindingen met de webserver open hebben.
Symptomen en problemen
Het probleem ontstaat wanneer het maximum aantal verbindingen voor een website is bereikt. Er is dan in de webserver voor de betreffende gebruiker geen nieuwe connectie-’slot’ beschikbaar, waardoor een nieuwe request een 508-foutmelding zal genereren. De website is dan voor de bezoeker die de 41e connectie probeert te maken dus onbereikbaar.
Mogelijke oorzaken
Opvallend aan het maximum aantal verbindingen, en problemen die hierdoor kunnen ontstaan, is dat deze in de meeste gevallen niet alleen voorkomen. Doorgaans is het bereiken van het maximale aantal verbindingen naar de webserver een gevolg van een ander probleem. Als een pakket bijvoorbeeld beperkt wordt door de beschikbare CPU-tijd of I/O-verkeer, dan kan dat vervolgens zorgen voor een opstapeling van het aantal verbindingen met de webserver, omdat processen wachten op nieuwe beschikbare resources. Vervolgens gebruikt het webhostingpakket alle verbindingen, en ontstaan hierdoor fouten.
Oplossing
Het is verstandig om bij het bereiken van het maximale aantal verbindingen eerst te controleren of dit het gevolg is van krapte bij een andere resource-categorie. Maakt het pakket op hetzelfde moment gebruik van maximale CPU, of doet deze maximale I/O, dan is het zeer waarschijnlijk dat dit de opstapeling van verbindingen tot gevolg heeft. Wanneer de opstapeling inderdaad samengaat met een CPU of I/O probleem, dan kan je die problemen beter eerst tackelen.
Is dat niet het geval, dan kan de opstapeling een andere oorzaak hebben. Zo kan er bijvoorbeeld iets mis zijn met de code van de website, waardoor aanvragen langer nodig hebben om af te handelen, waardoor deze opstapelen.
Het is dan interessant om te kijken naar de actieve processen op een moment van verhoogde belasting. Je kunt op de nieuwere pakketten rechtstreeks een proces-lijst opvragen via het Linux commando ‘ps aux’. De commandline kan via SSH gebruikt worden. Zie hiervoor deze handleiding.
Voor pakketten waar dit niet mogelijk is, kan het ook verstandig zijn om bijvoorbeeld de serverlogs te controleren, om na te gaan wat voor aanvragen er naar de website lopen. Dit kan een indicatie geven van welke onderdelen binnen de website alle verbindingen open houden.
Tenslotte kan er ook sprake zijn van misbruik; bijvoorbeeld een (comment)spammer, of brute-force hacker, welke herhaald aanvragen doet naar een bepaald onderdeel van de website. Je kan dan overwegen om deze op basis van bijvoorbeeld IP-adres te blokkeren, aan de hand van een .htaccess bestand.
Mocht je hier niet uitkomen, dan kan je vanzelfsprekend ook contact opnemen met onze support, via support@antagonist.nl.
Processen (nProc)
Wat is het?
Het totaal aantal processen dat vanuit jouw webhostingpakket draait wordt ook in de gaten gehouden. Een webhostingpakket kan maximaal 100 gelijktijdige processen draaien. De beschikbare 100 process ‘slots’ verschillen van de 40 gelijktijdige verbindingen met de webserver in dat een proces ook op de server zelf kan draaien zonder een verbinding naar de website. Denk bijvoorbeeld aan een cronjob, of een script dat via SSH of de website op de achtergrond gestart is.
Symptomen en problemen
Het probleem ontstaat wanneer het maximum aantal processen voor een webhostingpakket is bereikt. Er zijn dan op de server voor de betreffende gebruiker geen nieuwe process-’slots’ beschikbaar, waardoor een poging om een nieuw proces te starten resulteert in een 503-foutmelding. Wanneer dit een proces is dat vanuit de website wordt gestart, is de website is dan voor de bezoeker die dit 101’ste proces probeert te starten dus onbereikbaar.
Mogelijke oorzaken
Het is vrij zeldzaam dat het aantal processen opstapelt tot 100, aangezien in de meeste gevallen deze processen gestart zullen worden vanuit de website, en daarbij eerder tegen het maximale aantal verbindingen met de webserver aan zullen lopen. Het kan echter voorkomen, bijvoorbeeld wanneer er een proces gestart wordt vanuit een script op de website dat op de achtergrond door blijft lopen. Ook kan het bijvoorbeeld optreden wanneer een (verkeerd geconfigureerde) cronjob een proces start, welke significant langer loopt. De cronjob kan dan zichzelf ‘inhalen’, met een opstapeling van processen tot gevolg.
Oplossing
Het is bij een opstapeling van processen voornamelijk interessant om te kijken naar de actieve processen op een moment van verhoogde belasting. Vaak wijst het type proces dat zich opstapelt aan waar het probleem precies zit binnen het webhostingpakket. Je kunt op de nieuwere pakketten rechtstreeks een proces-lijst opvragen via het Linux commando ‘ps aux’. De commandline kan via SSH gebruikt worden. Zie hiervoor deze handleiding.
Gebruik je een pakket waar SSH toegang niet mogelijk is, dan kan je ook contact opnemen met onze support afdeling via support@antagonist.nl. We kunnen je dan helpen na te gaan wat voor soort processen opstapelen en tot het probleem leiden.
Wanneer je de bron van de opstapelende processen hebt geïdentificeerd, kan je gericht stappen ondernemen om dit op te lossen, bijvoorbeeld door de verantwoordelijke scripts of cronjob aan te passen.
I/O-verkeer
Wat is het?
Onder I/O verkeer wordt de bandbreedte verstaan die jouw webhostingpakket in gebruik heeft voor lees- en schrijfoperaties op het bestandssysteem. Dit wordt gemeten in MB/s (megabytes per seconde).
Symptomen en problemen
Wanneer een webhostingpakket alle beschikbare I/O bandbreedte in gebruik heeft, dan houdt dit in dat de processen voor dit pakket niet sneller kunnen lezen of schrijven van en naar het bestandsysteem. Dit kan dus ook inhouden dat die processen moeten wachten tot er wel bandbreede beschikbaar is om de operatie af te maken. Het gevolg is vertraging binnen het wachtende proces.
Komt dat vaker voor, dan leidt dit tot een opstapeling van processen (zoals bijvoorbeeld ook bij CPU), en kan het pakket in de problemen raken met bijvoorbeeld het aantal gelijktijdige Verbindingen of Processen.
Mogelijke oorzaken
I/O verkeer wordt bepaald door bewerkingen op het bestandsysteem. I/O problemen zie je dan ook vooral terug wanneer een pakket, bijvoorbeeld door misconfiguratie, extreem veel lees en schrijfverkeer genereert. Denk hierbij bijvoorbeeld aan het gebruik van caching die niet goed geconfigureerd is, en daardoor voortdurend nieuwe data wegschrijft, of het gebruik van extreem grote afbeeldingen op een pagina die zeer frequent wordt bezocht. Ook bijvoorbeeld inefficiënte back-up of migratie plugins kunnen I/O problemen veroorzaken.
Ook hier is de PHP versie van invloed. Het gebruik van een oudere PHP versie kan leiden tot (onnodig) hoog I/O verkeer.
Oplossing
De meeste websites hebben voor I/O doorgaans voldoende aan 1 MB/s. Pakketten hebben bij Antagonist echter significant meer I/O bandbreedte beschikbaar. Merk je dat jouw webhostingpakket constant hoog I/O verkeer vertoont, dan is het verstandig om na te gaan waar dit precies vandaan komt. Controleer bijvoorbeeld eventuele caching functies binnen jouw website(s), en ga na welke lees- en schrijfoperaties binnen de website plaatsvinden bij bezoek. Ook is het verstandig om te controleren of jouw hostingpakket correct de laatste PHP-versie gebruikt.
Browser-caching, dus het opslaan van delen van de website in de browser van een bezoeker, is zeer effectief om I/O terug te dringen. Wanneer onderdelen van de website bij bezoekers lokaal worden opgeslagen in de cache, hoeven deze niet opnieuw vanaf jouw website, en dus vanaf het bestandssysteem, ingeladen te worden.
Mocht het niet lukken om de bron van het I/O-verkeer te traceren, dan kan je vanzelfsprekend ook contact opnemen met onze support, via support@antagonist.nl.
Bestanden
Wat is het?
Eén inode staat voor één bestand op je hostingpakket. Om negatieve impact op de snelheid van opslagruimte te voorkomen, hanteren wij een inodes-bovengrens. Zo kun je op het Slim-pakket maximaal 150.000 bestanden plaatsen, op het Plus-pakket 250.000 en op het Pro-pakket 350.000. Voor het Resellerpakket geldt 150.000 bestanden per aangemaakte gebruiker. Je kunt in DirectAdmin na het inloggen zien hoeveel inodes je verbruikt. Je kunt dit ook via SSH met dit commando achterhalen.
find . -type f | cut -d/ -f2 | sort | uniq -c
Symptomen en problemen
Wanneer je tegen de inodes-bovengrens aanloopt, kun je op het hostingpakket geen bestanden meer wegschrijven. Mogelijk loop je ertegenaan als je bijvoorbeeld waarschijnlijk onbedoeld onjuist caching toepast en zo een hoop bestanden op je pakket plaatst. Bereik je deze grens, dan kun je bijvoorbeeld geen nieuwe afbeeldingen meer binnen je website uploaden.
Mogelijke oorzaken
Hoog inodes-verbruik kent meerdere oorzaken. Zo kan het bijvoorbeeld een misconfiguratie zijn, denk aan (overvolle) caching-mappen binnen een webapplicatie. Het kan ook gaan om veel (oude) mediabestanden die op het pakket staan.
Oplossing
Stel eerst de oorzaak vast. Waar komt het hoge aantal inodes vandaan en is het legitiem bestanden verbruik? Als er dan sprake is van een misconfiguratie, dan kun je dit probleem oplossen door de overbodige bestanden te verwijderen en de configuratie erop aan te passen.
Gaat het om legitiem verbruik, dan kun je een upgrade van je hostingpakket overwegen. Onderzoek in dat geval bij welk pakket je onder deze bestandslimiet zit. Lukt het niet om zelf de oorzaak te ontdekken of wens je advies, dan kun je vanzelfsprekend contact opnemen met Support.
Meer inzicht in resources
In DirectAdmin kan je meer informatie vinden over welke specifieke resources jouw webhostingpakket gebruikt. Hiervoor ga je naar de optie 'Resource Usage'. Het controleren gaat als volgt:
1. Log in op DirectAdmin.
2. Ga in het menu naar 'Extra functies' → 'Resource Usage'.
3. Klik in het volgende scherm op 'Details'.
-
Vervolgens zie je in een overzicht met diverse grafieken. Hierin kan je zien wanneer, en welke specifieke onderdelen van de resources het probleem veroorzaken. Onderaan vind je een complete tabel van de waardes welke op specifieke tijden zijn gemeten.
Tevens kun je verder terugkijken (standaard staat dit op 24 uur). De resource-geschiedenis gaat terug tot 30 dagen.