Naar de inhoud

Documentatie

Pterodactyl

Pterodactyl is de integratie voor gamepanelen. Een gameserver is een container die uit een recept gebouwd wordt en niet uit een image van een besturingssysteem, dus bijna alles eraan verschilt van een virtuele machine, inclusief het feit dat de console de hoofdzaak is en geen extraatje.

Twee sleutels, niet één

Pterodactyl splitst zijn API in tweeën, en Provibr heeft allebei de helften nodig. Ze doen verschillend werk en de een kan niet voor de ander invallen.

  • Application-sleutel: aanmaken, opschorten, opnieuw installeren, verwijderen en uitlezen. Hij begint met ptla_.
  • Client-sleutel: aan en uit zetten, verbruiksmetingen en de console. Hij begint met ptlc_.
  • Host: het adres van het paneel. Er wordt geen poort voor je ingevuld: een Pterodactyl-paneel is een gewone website achter een reverse proxy.
Maak beide sleutels aan terwijl je als beheerder ingelogd bent. De client-sleutel van een gewoon account ziet de servers van anderen niet, en de verbindingstest zegt dat, in plaats van je het later te laten ontdekken.
De twee sleutels verwisselen wordt opgemerkt voordat er iets van je host af gaat, omdat ze allebei hun eigen voorvoegsel hebben.

Instellingen

Eén optioneel veld: het e-mailadres dat eigenaar wordt van de servers die Provibr aanmaakt. Laat je het leeg, dan is het account achter de client-sleutel eigenaar. Geef je een adres op dat nog niet op het paneel bestaat, dan wordt daar een account voor aangemaakt.

De woorden die Pterodactyl gebruikt

Egg
Het bouwrecept: welke container-images gebruikt mogen worden, het startcommando, en zijn eigen variabelen. Een egg is wat je kiest in plaats van een besturingssysteem.
Nest
Een groep eggs. Het is een label; het egg is waar echt naar verwezen wordt.
Node
Een machine waarop Wings draait, de daemon die de containers draait. Kies je er geen, dan wordt de node met het meeste vrije geheugen gekozen, waarbij nodes in onderhoud en nodes die niet publiek zijn worden overgeslagen.
Allocatie
Het adres en de poort waarop een server luistert. Het paneel deelt die uit zijn eigen lijst uit; Provibr wijst hier geen adressen toe, want dat zou een belofte zijn die het niet kan waarmaken.

Gameplannen

In een gameplan wordt de hele container beschreven, en het is de enige manier om een gameserver te bestellen. Er is geen handmatig bestelformulier voor, omdat er te veel moet kloppen om het elke keer in te typen.

  • Een egg op één integratie, met het nest als label vastgelegd.
  • Optioneel een container-image en een startcommando. Laat je ze leeg, dan beslist het egg.
  • Waarden voor variabelen die de standaarden van het egg overschrijven. Elke variabele die het egg heeft gaat mee, ook de variabelen die de klant nooit ziet, want het paneel weigert een aanmaakverzoek waarin een veld ontbreekt.
  • Geheugen, swap, schijf, cpu en IO-gewicht. Nul betekent onbeperkt bij geheugen, swap, schijf en cpu.
  • Hoeveel databases, extra allocaties en back-ups de server mag hebben.
IO-gewicht is de uitzondering: nul is daar niet onbeperkt. Het paneel accepteert alleen een waarde tussen 10 en 1000, en een nul wordt stil 500.

Wat je kunt doen

Starten, stoppen, herstarten, killen, opschorten, hervatten, status verversen, opnieuw installeren en verwijderen. Het verschil tussen de zachtere en de hardere opties telt hier zwaarder dan elders.

  • Stoppen stuurt het eigen stopcommando van het egg naar de console, zodat de game afsluit zoals hij dat verwacht.
  • Killen haalt de container meteen neer. Alles wat nog niet naar schijf geschreven is gaat verloren, en het paneel vraagt je om te bevestigen.
  • Opschorten stopt de server en sluit zijn eigenaar buiten. De bestanden blijven staan. Dit is ook wat het platform gebruikt als je over je licentielimiet gaat.
  • Opnieuw installeren draait de installatiecontainer van het egg nog een keer. Wat dat met bestaande bestanden doet is de keuze van het egg en niet van ons, en dat staat in de bevestiging.
Geen enkele uitkomst wordt op zijn woord geloofd. Pterodactyl bevestigt de meeste wijzigingen met een leeg antwoord, dus elk van deze acties eindigt met de server teruglezen en melden wat er werkelijk gevonden is.

Console

De console is een terminal op de draaiende container, doorgegeven van Wings via je agent naar je browser. Je ziet consoleuitvoer, statuswisselingen en verbruik; je kunt commando's sturen. Op de consolepagina staat het uitgebreider beschreven.

Bestaande servers overnemen

Het tabblad Importeren toont de servers op het paneel met hun limieten en toestand, ook de servers die Provibr al kent, die wel zichtbaar maar niet selecteerbaar zijn. Geïmporteerde servers tellen precies zo mee voor je capaciteit als de servers die je bestelde.

Goed om te weten

  • Het paneel zelf beheren, of zijn nodes, bestaat niet. Provibr bouwt, draait en verwijdert servers op een paneel dat jij bedient.
  • Back-ups, databases en extra allocaties zijn limieten die je op het plan zet; ze gebruiken doe je in het gamepaneel zelf. De aantallen komen mee met de poll.
  • Het paneel bewaart zijn verbruikscijfers ongeveer twintig seconden in de cache, en Provibr polt op ongeveer hetzelfde ritme. Processor, geheugen en schijf kloppen altijd; een herhaalde meting kan een netwerksnelheid van nul tonen waar er wel verkeer was.
  • Pterodactyl 1.x meldt zijn eigen versie niet via de API, dus de verbindingstest laat dat veld leeg. Dat is geen storing.