Binnen en buiten
Applicatiebeheer — deel 12
Donderdag. De wegwijzer staat, maar voor wie? Alleen voor wie al binnen is, of ook voor de spelers thuis op de bank? Een hoofdstuk over de grens van het gebouw.
Concepts
De vraag kwam van Yara, niet van Ravi, en ze stelde hem op een manier die Joost niet zag aankomen.
Het was donderdag, even na tienen, en ze schoof aan bij zijn bureau met haar laptop al open. "De Service van gisteren," zei ze. "Die draait. Maar ik wil je iets laten zien voordat je denkt dat je klaar bent." Ze draaide het scherm. "Probeer hem eens te bereiken vanaf je eigen telefoon. Niet via het werk-netwerk. Gewoon, alsof je een speler thuis bent."
Joost pakte zijn telefoon, zette het bedrijfsnetwerk eraf, en typte het adres in dat ze hem gaf. Hij wachtte.
Niks.
"Hij doet het niet," zei hij.
"Hij doet het niet," zei Yara, en ze leunde achterover, tevreden, alsof dit precies was wat ze had willen laten zien. "En toch werkt hij prima. Gisteren werkte hij ook. Wat is er aan de hand, denk je?"
Joost keek naar zijn telefoon, naar het scherm, en hij voelde het oude reflex opkomen. Dit kende hij. Dit soort vragen had hij twintig jaar beantwoord. "Hij is bereikbaar van binnen," zei hij langzaam, "maar niet van buiten."
"Precies. En waarom is dat erg, of juist niet erg?"
Hij dacht na. En toen kwam er een herinnering boven die zo scherp was dat hij bijna lachte.
"Mag ik je iets vertellen," zei hij. "Van vroeger."
Yara knikte. Ze begon dat inmiddels te verwachten van hem, en het stoorde haar niet meer.
"Ik had op mijn servers twee soorten diensten," zei Joost. "De ene soort was voor de buitenwereld. De website waar klanten op kwamen. Die moest open staan, bereikbaar voor iedereen, van overal. Daar zat ik altijd nerveus op, want alles wat open staat naar buiten, daar kan ook iemand aankloppen die je niet wilt. De andere soort was voor binnen. De database. Het ding waar de website zijn gegevens vandaan haalde. En dát ding wilde ik juist níét open hebben naar buiten. Dat moest alleen bereikbaar zijn voor mijn eigen machines, achter de muur. Als de database van buiten bereikbaar was geweest, had ik niet meer geslapen."
"Waarom niet?"
"Omdat dat de kluis is. De website mag de etalage zijn, daar mag iedereen voor staan. Maar de kluis zet je niet op de stoep. De kluis staat binnen, en alleen wie binnen is mag erbij. Een database die van buiten bereikbaar is, dat is een kluis op de stoep met een briefje erop."
Yara knikte traag. "Dus toen ik je liet zien dat de Service van buiten niet bereikbaar is."
"Toen liet je me zien dat hij is zoals mijn database. Binnen bereikbaar, buiten niet. En dat is geen storing. Dat is een keuze. Voor heel veel dingen is dat precies wat je wilt."
"Dat is precies wat je wilt." Yara klapte even in haar handen, één tik. "En dat is ook hoe zo'n Service standaard staat. Standaard is hij alleen van binnen bereikbaar. Alleen de andere onderdelen in het cluster kunnen erbij. Voor de buitenwereld bestaat hij niet eens. En dat is goed, want het meeste van wat hier draait hóórt alleen voor binnen te zijn. De database achter Spelveld, de dienst die de scores bewaart, het matchmaking-deel. Dat zijn allemaal kamerdiensten. Spelers hoeven daar nooit rechtstreeks bij. Die praten alleen met de voorkant."
"Een Service voor binnen," zei Joost. "Een interne wegwijzer."
"Wij hebben er een lelijke naam voor, maar die doet er niet toe. Onthou het beeld: een intern adres, alleen bereikbaar binnen het cluster. Dit is de kluis-variant. Binnen ja, buiten nee."
Joost knikte. De kluis-variant. Dat onthield hij beter dan welke naam ook.
"Maar," zei hij, en hij wees naar zijn telefoon, "de échte spelers zitten thuis. Op de bank. Buiten. Die moeten er wél bij. Anders heeft het hele platform geen zin."
"Daar wachtte ik op." Yara leunde naar voren. "Want dat is het tweede soort. De etalage. Sommige diensten moeten juist wél naar buiten open. De voorkant van Spelveld, het stuk waar de spelers op binnenkomen. Dat kun je niet als kluis houden, want dan kan niemand spelen. Voor die diensten zeg je tegen het systeem: deze mag wél naar buiten. Maak hem bereikbaar van de andere kant van de muur."
"En dat is een andere soort Service."
"Dezelfde wegwijzer, maar met een deur naar buiten erbij. Je zegt: dit interne adres is leuk, maar zet er ook een ingang in de buitenmuur bij, zodat verkeer van buiten erbij kan." Ze haalde haar schouders op. "Er zijn een paar manieren om dat te doen, met verschillende namen, maar het idee is telkens hetzelfde. De ene Service houdt zijn deur dicht naar buiten. De andere zet er een open naar buiten. Jij kiest per dienst welke van de twee."
Joost leunde achterover, en hij voelde dat dit niet alleen klopte maar dat het hém klopte. Want dit was de keuze die hij twintig jaar bij elke dienst had gemaakt. Open naar buiten, of dicht. Etalage, of kluis. Hij had het alleen anders gedaan, met firewall-regels en poorten die hij met de hand open- of dichtzette, en de eeuwige angst dat hij er ergens een verkeerd om had staan.
"Weet je wat hier het mooie van is," zei hij. "Bij mij was open-of-dicht een ding dat je makkelijk fout deed. Een poort die je per ongeluk open liet staan, een regel die net te ruim was. Hier is dicht het standaard. Je moet er iets voor doen om iets open te zetten naar buiten. Dat is andersom dan bij mij, en het is veiliger."
"Tot je zegt dat het open mag," knikte Yara. "De meeste mensen weten niet eens dat dicht het standaard is. Ze merken het pas als ze, zoals jij net, iets van buiten proberen te bereiken en denken dat er iets stuk is. Terwijl er niks stuk is."
Ze regelden het samen voor Spelveld. De voorkant, het stuk waar de spelers op binnenkomen, die kreeg zijn deur naar buiten. De database, de scores, het matchmaking-deel, die bleven dicht, alleen voor binnen. Joost keek naar het rijtje toen het stond, en hij zag het meteen voor zich: een gebouw met één deur in de buitenmuur, en daarachter een hoop kamers waar geen enkele speler ooit zou komen.
"Eén ding," zei hij. "Die ene deur naar buiten. Dat is dus de plek waar het gevaarlijk wordt, als er iets gevaarlijk wordt. Want dat is het enige punt waar de buitenwereld erbij kan."
Yara keek hem even aan, en er ging iets door haar gezicht, iets als waardering. "Dat is precies waarom we daar het meeste aandacht aan besteden. De kamers binnen vertrouwen we voorlopig. De deur naar buiten bewaken we. En het mooie is dat het er maar één is, of een paar, in plaats van honderd losse poorten op honderd machines."
Joost knikte. Dat was overzichtelijker dan wat hij ooit had gehad. Eén deur om in de gaten te houden in plaats van een muur vol gaten waarvan hij nooit zeker wist of ze allemaal goed dicht zaten.
Hij stond op om koffie te halen, eindelijk, en onderweg dacht hij aan die ene deur. Want er klopte iets aan zijn eigen verhaal van zonet. Bij Spelveld waren er straks meerdere diensten die de spelers moesten kunnen bereiken. De voorkant, misschien het scorebord, misschien meer. Moest hij dan voor elk daarvan een eigen deur in de buitenmuur zetten? Een eigen ingang, een eigen adres dat de spelers moesten kennen? Dat voelde rommelig. Hij had het idee dat daar een nettere manier voor moest zijn, één voordeur in plaats van een rij. Maar hij wist nog niet hoe, en het was bijna lunchtijd, en dat liet hij voorlopig zo.