Wat betreft het afstellen van de CloudLinux limieten zijn er wel richtlijnen maar geen vaste formules. Het fine-tunen lukt vaak niet in één keer - je zult het soms een paar keer opnieuw moeten bekijken en aanpassen voordat het goed ingesteld staat.
Wat je wil doen is een balans vinden tussen wat de gebruiker nodig heeft om de applicaties die erop staan goed te laten draaien, en wat de server maximaal kan missen aan resources. Als die balans niet gevonden kan worden betekent dat:
- dat je moet kijken of je misschien een webapplicatie onder een gebruiker hebt draaien die meer resources verbruikt dan eigenlijk normaal is, en dan zou je kunnen kijken wat er fout gaat en of je het resourceverbruik kunt inperken
- of - als je alles al zoveel mogelijk getuned hebt en toch nog steeds tekort komt - dan betekent dat dat je de server zult moeten upgraden
Na het installeren van CloudLinux kan het geen kwaad om even een uurtje te wachten met limieten instellen totdat er wat informatie verzameld is over het resourceverbuik van iedere user. Aan de hand van de CloudLinux History grafieken kun je dan proberen in te schatten hoe hoog de limieten zouden moeten zijn.
Hoe weet je welke waardes je moet geven?
Hier zijn wat handreikingen en voorbeelden die je daarbij kunt gebruiken:
SPEED limiet:
Bij het instellen van een initiële SPEED limiet kun je er het beste voor zorgen dat gebruikers nooit in hun eentje of met zijn tweeën de hele voorraad CPU op kunnen verbruiken. Stel dat de server 8 cores heeft dan zouden twee gebruikers met een SPEED limiet van 400% samen de server omver kunnen trekken. Dan kun je die gebruikers dus beter niet meer dan 300% SPEED limiet geven. Veel websites zullen voldoende hebben aan 200% tot 400%.
PMEM limiet:
Voor de meeste kleine tot middelgrote websites zal 2GB tot 3GB al wel voldoende zijn. Maar hierbij is het goed om eerst even te kijken hoeveel geheugen er voor MySQL gereserveerd is. Als je dat aftrekt van de totale hoeveelheid RAM op de server dan heb je een beetje een indicatie van wat er nog te verdelen valt. Stel bijvoorbeeld dat je server 24GB RAM heeft, en MySQL heeft 5GB gereserveerd dan blijft er nog 19GB RAM over voor de rest. De exacte limiet die je dan in zou moeten stellen hangt uiteraard af van de hoeveelheid gebruikers en hun maximale verbruik, maar ik raad je aan om dan niet meer dan een derde daarvan - in dit voorbeeld ≤ 6,5GB - per gebruiker toe te kennen.
VMEM limiet:
De VMEM mag je helemaal negeren, dit is een waarde waarvan de developers van CloudLinux hebben aangegeven dat die niet meer gebruikt zou moeten worden (Zie ook: https://docs.cloudlinux.com/shared/limits/)
EP limiet:
De meeste applicaties zullen aan 100 tot 200 entry processes wel voldoende hebben.
NPROC limiet:
Hou deze limiet altijd iets hoger dan de EP limiet. Voorbeeld: is de EP limiet 190? Geeft de NPROC dan bijvoorbeeld een limiet van 210
I/O limiet:
Voor de meeste websites zal 12MB/s à 16MB/s wel voldoende zijn, maar het is niet zo erg als je deze wat te hoog instelt. Te laag instellen zal ervoor zorgen dat eindgebruikers / bezoekers vertraging merken.
IOPS limiet:
Deze limiet is vaak wat minder kritisch. IOPS staat vaak in eerste instantie op 1024, en meestal is dat ruim voldoende, maar als een user tegen deze limiet aanloopt kun je hem vrijwel altijd zonder problemen verhogen.