Documentatie
Console en metingen
Twee manieren om naar een machine te kijken die al draait: een live verbinding met zijn scherm of zijn terminal, en de grafieken die zeggen wat hij gedaan heeft. Allebei lopen ze via je agent, en geen van beide vraagt dat er iets van jou vanaf het internet bereikbaar is.
De console
Een consolesessie is een tunnel: je browser naar het platform, het platform naar je agent over de verbinding die al openstaat, en je agent naar de machine. Het platform ertussen kijkt nooit naar de inhoud. Het telt bytes en stuurt ze door.
Hoe een sessie wordt opgezet
- Het paneel vraagt een ticket aan voor deze ene server. Het verzoek wordt geweigerd als je de console van deze server niet mag gebruiken, als de agent niet verbonden is, als de integratie uitgeschakeld is of als de machine niet in een toestand is die een console heeft.
- Het ticket is een minuut geldig en kan één keer gebruikt worden. Het noemt de server, dus een ticket voor iets anders kan deze console niet openen.
- Je browser opent met dat ticket een aparte socket. Daar wordt elke controle opnieuw gedaan, want in die minuut kan er van alles veranderen.
- De agent koppelt zich aan de machine en meldt om welk protocol het gaat: een scherm bij een virtuele machine, een terminal bij een gameserver. Je browser weigert een protocol dat hij niet spreekt, met een melding in plaats van een zwarte rechthoek.
Grenzen
- Een sessie duurt hoogstens een uur. Het platform dwingt dat zelf af, naast de agent, en zegt waarom hij hem sloot.
- Kan je browser het niet bijbenen, dan wordt de tunnel gepauzeerd en niet verbroken. Pas als de achterstand echt groot wordt, wordt de sessie beëindigd.
- De sessie wordt in het activiteitenlogboek vastgelegd als sessie: hoe lang hij duurde en hoeveel er elke kant op ging. Nooit inhoud.
Welke providers er een hebben
Er verschijnt een consoletabblad overal waar de integratie er een biedt, en de integratiepagina vertelt je welke dat doen. Virtuele machines en gameservers kunnen een live scherm of terminal hebben; een hostingaccount is een deel van een gedeelde machine zonder iets eigens om op aan te sluiten, dus die heeft er nooit een.
- Bij Proxmox is dit het eigen scherm van de machine, over dezelfde poort en met hetzelfde token die de integratie al gebruikt, dus er hoeft geen tweede gat in je firewall.
- Bij Pterodactyl is het de terminal van de gameserver, doorgegeven van Wings. Je ziet consoleuitvoer, statuswisselingen en verbruikscijfers, en je kunt commando's sturen.
Metingen
Elke server wordt op hetzelfde ritme van twintig seconden gemeten als de poll. Recente metingen blijven staan zoals ze zijn, voor snelle grafieken; oudere worden samengevouwen tot blokken van vijf minuten met een gemiddelde, een minimum en een maximum, zodat een piek niet in een gemiddelde verdwijnt.
De periodes
Een uur en zes uur worden uit de recente metingen getekend, een dag en een week uit de samengevouwen metingen. De samengevouwen periodes dragen ook een band met de hoogste en de laagste waarde per blok.
Wat er getekend wordt
Welke grafieken een server heeft volgt uit wat zijn provider kan meten.
- Virtuele machines: processor, geheugen, schijf, netwerk en schijfdoorvoer. Het schijfgebruik binnen de gast is voor de hypervisor niet zichtbaar, dus die grafiek toont de toegewezen grootte.
- Hostingaccounts: het verbruik van het schijfquotum. Dat is wat een controlepaneel meldt.
- Gameservers: processor, geheugen, schijf en netwerk. Wings meldt geen schijfdoorvoer.
Gaten
Metingen worden na een verbroken verbinding bewust niet nagestuurd. Een agent die weg was laat een gat in de grafiek achter in plaats van een stortvloed van punten met terugwerkende kracht, en de lijn wordt onderbroken in plaats van er recht doorheen getrokken.
Recente metingen blijven een paar uur bewaard, samengevouwen metingen een maand. Een verwijderde server houdt zijn grafieken tot ze verlopen.
Metingen over de agent zelf
Een agent heeft zijn eigen grafieken, in vier groepen: de host waarop hij draait, het agentproces, de verbinding met het platform, en de netwerkinterface waarvandaan hij installaties bedient. Waar een groep meerdere labels heeft, worden de drie drukste getekend en de rest bij naam genoemd.
Het agentlogboek
Los van de metingen is er een operationeel logboek dat de agent live doorstuurt: wat zijn runtime, zijn sessie, zijn integraties, zijn installatiedienst en zijn downloads doen. Het wordt door de agent samengesteld uit codes en parameters, dus het verschijnt in jouw taal, en alles wat op een geheim lijkt wordt er twee keer uit gehaald: één keer op je host en één keer bij binnenkomst.