Servermonitoring en het meshnetwerk
Hoe CreateYourVPN de gezondheid van servers bewaakt: zelfcontroles, een meshnetwerk van wederzijdse controles tussen servers, en het automatisch verbergen van onbereikbare servers voor gebruikers.
Een server kan u op het slechtst denkbare moment in de steek laten: een dienst crasht, de host herstart de machine — of, erger nog, de server wordt geblokkeerd in het land van een gebruiker en is niet meer bereikbaar, terwijl hij technisch gezien gewoon draait. Uw gebruikers zouden hier nooit iets van moeten merken. Deze les behandelt hoe CreateYourVPN over uw servers waakt en wat er gebeurt wanneer een van hen in de problemen zit.
Twee lagen van controle
Het systeem bekijkt elke server vanuit twee invalshoeken.
1. De server controleert zichzelf
Elke server meldt zich eens in de zoveel minuten: leeft de verkeersontvanger op poort 443, en draait de VPN-dienst? De statistieken uit les 3 komen met dezelfde melding mee. Meldt de server "ik voel me niet goed", dan krijgt hij de status "Server niet beschikbaar". Stoppen de meldingen helemaal, dan wordt de status "Geen gegevens van de server" — de machine kan uitgeschakeld zijn of zijn netwerk zijn kwijtgeraakt.
2. Servers "kloppen bij elkaar aan"
Zelfcontroles kunnen het sluwste geval niet vangen: een server denkt dat hij gezond is, maar is van buitenaf niet bereikbaar — bijvoorbeeld omdat zijn IP is geblokkeerd. Daarom zijn al uw servers verenigd in een meshnetwerk van wederzijdse controles: elke server probeert regelmatig elke buurserver te bereiken — op dezelfde manier als de app van een gebruiker dat zou doen.
Vanaf dat moment neemt een "stemming" het over:
- Eén mislukte poging betekent niets — het netwerk kan gewoon even gehaperd hebben. Alleen aanhoudende reeksen van mislukkingen tellen mee.
- Een server wordt alleen gemarkeerd als "Niet bereikbaar vanuit uw servers" wanneer meerdere onafhankelijke servers hem consequent niet kunnen bereiken — de mening van één server is geen oordeel.
- Er is ook bescherming tegen de "onbetrouwbare getuige": beweert een server plotseling dat hij de helft van zijn buren niet ziet, dan ligt het probleem waarschijnlijk bij hemzelf — en zijn stemmen worden genegeerd.
Dit is precies het schema dat blokkades opvangt: wordt een server geblokkeerd in een land waar uw andere servers ook staan, dan zullen de buren uit dat land hem snel niet meer kunnen bereiken, ontstaat er een quorum, en markeert het systeem de server als onbereikbaar. Servers in landen zonder de blokkade blijven hem ondertussen gewoon zien — en het verschil van mening maakt het beeld overduidelijk.
Wat er met een problematische server gebeurt
De statussen voeden rechtstreeks de taakverdeling: servers met de status "Server niet beschikbaar" en "Niet bereikbaar vanuit uw servers" worden uit de roulatie gehaald — er worden geen nieuwe verbindingen naartoe gestuurd, en in de abonnementen van gebruikers wordt hun plaats ingenomen door gezonde servers uit dezelfde routes.
Tegelijk is het systeem voorzichtig — het is gebouwd op het principe "eerst geen kwaad doen":
- Een route wordt nooit leeg achtergelaten. Blijkt elke server op een route "slecht" te zijn, dan biedt het systeem gebruikers liever de best beschikbare optie dan een lege lijst — anders zouden apps concluderen dat de servers weg zijn en ze wissen.
- Stilte is geen oordeel. De status "Geen gegevens van de server" haalt een server niet vanzelf uit de roulatie: zonder actuele gegevens onderneemt het systeem geen overhaaste stappen.
Alles herstelt zichzelf
Geen enkele status "blijft plakken" — de toestand wordt steeds opnieuw afgeleid uit actuele gegevens:
- de server stuurt weer een gezonde melding → "Server niet beschikbaar" wordt opgeheven;
- de buren kunnen hem weer bereiken → de reeks mislukkingen wordt gereset, en de markering "Niet bereikbaar vanuit uw servers" verdwijnt;
- de meldingen hervatten → "Geen gegevens van de server" verdwijnt.
Herstel de server (of wacht tot hij niet meer geblokkeerd is) — en hij meldt zich zelf weer in dienst. Geen handmatig "weer aanzetten".
Waar u dit in de panel ziet
Open de kaart van een gebruiker → zijn serverlijst: naast elke server staat een statuspunt, en als er iets mis is — een bijschrift met de reden: "Server niet beschikbaar", "Niet bereikbaar vanuit uw servers" (inclusief hoeveel van uw servers hem niet zien), of "Geen gegevens van de server". Indirecte signalen verschijnen ook op serverkaarten: een badge "verouderd" op de statistieken en "Geen gegevens — agent reageert niet".
Meshcontroles zijn extreem zuinig: het zijn piepkleine testaanrakingen met een strikt dagelijks volumeplafond — ze hebben geen enkele invloed op het verkeer of de prestaties van uw servers.
Belangrijkste punten
- Twee controlelagen: een server controleert zichzelf, en zijn meshburen controleren hem van buitenaf.
- Blokkades worden opgevangen door een "stemming" van meerdere servers — geen paniek bij een eenmalige hapering.
- Problematische servers vallen uit de roulatie; gebruikers verhuizen stilletjes naar gezonde servers.
- Alles herstelt zichzelf: zodra een server weer tot leven komt, sluit hij zich automatisch weer aan.
Volgende les
De infrastructuur weet zichzelf te repareren, maar er is iets dat apart bescherming verdient — uw gebruikersbestand.
Multihop: serverketens
Hoe u een multihop-inbound bouwt in CreateYourVPN: verkeer komt binnen op de ene server en gaat naar buiten via een andere. Waarom u het zou willen, hoe u er een aanmaakt, en wat de gebruiker ziet.
Back-ups: sla uw gebruikers op en herstel ze
De laatste les van de cursus: waarom u uw gebruikersbestand moet back-uppen, hoe u automatische kopieën naar Google Drive of S3 instelt, en hoe u een back-up herstelt.