Cloud
16 maart 2025
Op dezelfde dag als mijn vorige weeknotes publiceerde Anne over hoe lang het bij de overheid kan duren om hosting te regelen. Dat ging viral in kringen die zich bij de overheid met digitalisering bezighouden. Er stond in dat hosting eerder, voor development, bij Digilab in 12 minuten geregeld was. Dat klopt, en het had zelfs sneller gekund. Maar we kunnen het niet voor een productieomgeving. Die snelheid zou ook daar wel lukken. Het gaat om andere dingen.
Het voert te ver om in deze weeknotes ook Digilab zelf toe te lichten, daarom heb ik daar een apart stukje over geschreven.
Wat we wel en niet kunnen
We kregen allerlei opmerkingen, in de e-mail, op LinkedIn, bij de koffieautomaat. Of Digilab dan niet die hosting kan gaan doen, omdat wij het wél zouden begrijpen.
Maar Digilab levert geen cloud, we zetten cloud effectief in. En bieden daarmee een plek voor specifieke projecten om hun technische experimenten en ontwikkeling uit te voeren. Vandaar ook dat het AMT project ergens anders zocht naar hosting voor productie.
Als er een NL cloud was dan zouden we het daar ook in 12 minuten kunnen. Sneller, want als we nog iets verder automatiseren kunnen mensen ook zelf een namespace maken en dan kan je de doorlooptijd uitdrukken in seconden.
We doen zelf ook allerlei experimenten met cloud technieken, en weten er het een en ander van. Dat is wel anders dan het neerzetten van een groot datacentrum, vol racks met servers, met stabiele snelle uplink naar het internet, oplossingen voor koeling van alle hardware, een stroomvoorziening die je in Kilo- of MegaWatts uit moet drukken, de fysieke beveiliging etcetera. Daar heb je veel meer budget en mensen voor nodig.
Op kleine schaal kunnen we wel het een en ander maken, de technieken zijn bekend. Zo hebben we bijvoorbeeld ooit ‘Cloud in a Trolley’ gemaakt, een rolkoffer met 4U rack space en daarin alle hardware voor een heel capabele kleine cloud setup op basis van Talos, MetalLB en Longhorn. Het ding werd erg warm. En om portabiliteit van Cloud provider naar cloud provider te testen hebben we geregeld dat we nodes op een mini-PC die op het bureau in Digilab staat lieten meedraaien in een Kubernetes cluster met nodes op MS Azure Kubernetes Services en AWS Elastic Kubernetes Services. Ongeveer wat GAIA-X vaak op hun slides heeft staan. Kan allemaal, maar dat zijn experimenten. Eenvoudige toepassingen van technieken zoals OpenTofu, Kustomize, Nebula, etc.
Zodra je software gaat aanbieden waarvan mensen verwachten dat die altijd online is (bijvoorbeeld Mattermost, de website, API’s met testdata etc.) heb je te maken met andere eisen aan de infrastructuur die vooralsnog niet door Digilab zelf gerealiseerd kunnen worden, zoals grondige, geborgde informatiebeveiliging, fysieke beveiliging van de locatie waar de apparatuur staat, gegarandeerde stroomvoorziening, etc. etc. Bij Digilab werken momenteel maar twee developers en PO Roos die druk zijn met de wensen van ~15 projecten uit te voeren. Net genoeg om cloud te gebruiken, niet genoeg om cloud te maken.
Wat wij nodig hebben
Oplossingen van de overheid zelf bieden niet de flexibiliteit die Digilab nodig heeft. Er is geen echte mogelijkheid om alles met behulp van Infrastructuur as Code en GitOps te managen. Bovendien liggen de kosten die doorberekend worden hoger dan binnen het niet al te ruime budget van Digilab past.
In onze huidige setup beheren we alles met Infrastructure as Code en GitOps. Als iemand een nieuwe fictieve organisatie nodig heeft, dan is die er een paar minuten later, inclusief DNS records, een database, FSC compliant gateways, alles. Dat regelt Flux op basis van een paar yaml files. (Ook het leveren van een nieuwe namespace op een Kubernetes cluster is inderdaad triviaal om te regelen, vandaar die 12 minuten waar Anne aan refereerde.)
We hebben dus self-service cloud nodig, en maken op dit moment gebruik van Microsoft Azure. Tja. We zouden best zelf iets anders kunnen maken dat good enough is voor Digilab, maar het is ook ongewenst dat wij ons bezighouden met dat soort dingen. Het zelf neerzetten van hardware is buiten scope, daar is het budget niet voor bedoeld.
We hebben overigens voordat we naar Azure zijn gegaan ook vier Nederlandse oplossingen geprobeerd. Wat wij nodig hebben (specifiek: managed Kubernetes) hebben we nog niet gevonden. De bedrijven die claimden het te kunnen leveren bleken nog allerlei kinderziektes te hebben, vooral rond load balancing, waardoor onze infrastructuur regelmatig offline was. Inclusief de software die we nodig hebben om zelf te kunnen werken. Dat kan een keer gebeuren, en we waren best bereid met minder genoegen te nemen, maar er zijn grenzen en dan moet je toch zoeken naar iets anders.
Zo zitten we dus in de situatie dat wij, net als heel veel Europese overheden, wel cloud nodig hebben op IaaS of PaaS niveau, maar er geen goede alternatieven zijn voor wat USA Big Tech levert. Een strategische fout van de EU wat mij betreft.
Stel dat …
Als we het wel zouden moeten maken, dan zou ik zeker niet proberen een kopie van Azure of AWS te maken. We kunnen namelijk beter.
Die Big Tech cloud aanbieders hebben een enorm breed aanbod aan services. Die kunnen ze niet uitzetten, want hun klanten zitten daar in vast en kunnen niet zomaar zonder. Een voordeel voor de aanbieders (vendor lock-in) maar ook een nadeel, want alles wordt steeds complexer en verdere innovatie over de volle breedte steeds moeilijker. Vaak wordt aan die veelheid van managed services gerefereerd als de reden waarom we Big Tech nooit kunnen inhalen.
Maar we hebben dat allemaal niet nodig. We zouden voor de Nederlandse (Europese?) overheid een heel smalle selectie kunnen maken van wat écht nodig is, en dat heel goed leveren. VM’s (misschien zelfs dat niet), managed Kubernetes (in twee varianten: fully managed, waarbij alles voor de klant wordt geregeld en semi-managed, waarbij alleen auto-scaling en version upgrades worden geregeld en je als klant veel meer zelf moet doen), managed databases (grotendeels standaardiseren op PostgreSQL), een oplossing voor Identity en Access Management en een paar varianten voor Storage. Als dat eenmaal goed werkt kan het aanbod wellicht worden uitgebreid, maar altijd op basis van scherpe keuzes en gericht op standaardisatie van een smal aanbod.
Niet alles leveren waar een klant om vraagt, maar zorgen dat de hele overheid ongeveer op dezelfde manier gaat werken. Dat heeft namelijk ook voordelen voor het opbouwen van de benodigde kennis, en zorgt dat je met een kleiner team (en dus goedkoper) kunt leveren.
Wat kost dat?
Veel.
Maar, relatief is het toch goedkoop om dit te doen. Een enkele overheidsorganisatie kan niet zelf iets bouwen wat op cloud lijkt, dat is te duur. Vandaar dat men op Big Tech terugvalt. Maar als je het voor de hele overheid regelt kan het makkelijk uit. Dan scheelt het (uitgerekend op een spreekwoordelijk bierviltje in Excel) tientallen tot honderden miljoenen per jaar ten opzichte van Big Tech cloud. Die zijn verre van goedkoop, dankzij een de facto monopoliepositie. Ik heb overigens geen idee hoeveel cloud de overheid in totaal nodig heeft. Waarschijnlijk gaat het om minimaal 250 racks, misschien wel het dubbele. Vanaf ongeveer 10 racks kan de business case al uit om het zelf te doen. Zeker nu we al housing hebben. En meer racks betekent dat het (veel) goedkoper wordt. Daar komt dan bij dat je precies kunt maken wat de overheid nodig heeft, zowel technisch als voor wat betreft de eisen aan informatiebeveiliging.
Ik zou overigens niet direct 250 racks kopen (dat zou meer dan 500 miljoen kosten om te regelen), maar beginnen met een rack of 10 (ook dat kost al > 20 miljoen). Die racks met een klein team van top-engineers inrichten zodanig dat met hetzelfde design geschaald kan worden naar honderden, duizenden racks verspreid over meerdere leveranciers en datacenters. Mijn vermoeden is dat in Europa alleen de overheid de investering kan maken die nodig is om de markt op gang te helpen.
“Maar de markt kan dat toch veel beter?”
Nee, in dit geval niet. De markt kan heel goed schalen en dingen steeds goedkoper maken, maar alleen als er een business case is. Op dit moment zijn de benodigde investeringen te goot, de business case te onzeker. Misschien valt het allemaal wel mee met die benodigde autonomie en is de USA ons nog tot in lengte van jaren goedgezind. Dat is nauwelijks een risico te noemen, dat is zelfs zeer wenselijk. En in de situatie dat het écht nodig is om zelf cloud te hebben omdat het mis gaat in de wereld, dan is de economie waarschijnlijk in heel zwaar weer. Welke ondernemer gaat dan miljarden investeren in de hoop dat er in Europa een grote vraag ontstaat naar cloud van eigen bodem? Maar de overheid heeft wél een reden om te investeren, namelijk de wens om niet afhankelijk te zijn van de USA voor het runnen van het land.
Men zou ook kunnen denken dat de markt betere techneuten in dienst heeft. Ik zou niet weten waarom, de overheid kan dezelfde mensen in dienst nemen of inhuren. Er is wel een andere werkcultuur bij de overheid waarin het voor techneuten wat moeilijker is om te functioneren, maar daar kunnen we een uitzondering op maken voor dat top team. Doen we bij Digilab ook. Het is een kwestie van buffertjes inbouwen zodat makers kunnen maken.