Budgetbewaking: hoe software en AI grip houden op de kosten van technologie
Budgetbewaking is de praktijk waarbij software voortdurend in de gaten houdt hoeveel geld een organisatie uitgeeft aan technologie, en ingrijpt zodra dat te veel dreigt te worden. Denk aan cloudcomputing (het huren van rekenkracht en opslag bij bedrijven als Amazon of Microsoft) of het gebruik van AI-diensten die per opdracht geld kosten. Zonder toezicht kunnen die kosten binnen een paar dagen oplopen van een paar euro naar duizenden euro's, zonder dat iemand het op tijd merkt.
Een vergelijking maakt het concreet: stel je een huurauto voor met een tank die per gereden kilometer wordt afgerekend, maar zonder brandstofmeter. Je merkt pas bij de eindafrekening hoeveel het heeft gekost. Budgetbewaking is de brandstofmeter mét alarm, en soms zelfs een systeem dat automatisch gas terugneemt zodra je een vooraf ingesteld bedrag nadert. In de technologiewereld heet dit ook wel FinOps, een samentrekking van 'finance' en 'operations' (financiën en IT-beheer).
Wat is het precies?
Budgetbewaking bestaat in de kern uit drie stappen, die doorlopend worden herhaald. De eerste stap is meten: software registreert precies hoeveel rekenkracht, opslag, netwerkverkeer of AI-verzoeken er worden verbruikt, vaak tot op de seconde of het losse verzoek nauwkeurig.
De tweede stap is toerekenen. Grote organisaties draaien tientallen of honderden projecten tegelijk op dezelfde cloudomgeving. Door elk stukje verbruik te voorzien van een label (een 'tag'), zoals de naam van een project of afdeling, kan de software precies zien wie waarvoor betaalt. Zonder die labels is achteraf vaak niet meer te herleiden welke afdeling verantwoordelijk is voor een onverwacht hoge rekening.
De derde stap is vergelijken en reageren. Het actuele verbruik wordt afgezet tegen een vooraf ingesteld budget of tegen een voorspelling op basis van eerdere maanden. Zodra een drempelwaarde wordt bereikt, bijvoorbeeld 80 procent van het maandbudget, stuurt het systeem een melding naar een beheerder. Bij strengere instellingen kan het systeem ook zelf ingrijpen: een dienst tijdelijk uitzetten, het aantal toegestane AI-verzoeken beperken, of een limiet instellen waarna een gebruiker simpelweg geen toegang meer krijgt totdat een nieuwe periode begint.
Bij AI-diensten, zoals het gebruik van taalmodellen via een programmeerinterface (een 'API'), werkt dit net iets anders dan bij cloudopslag. Elk verzoek aan zo'n model kost geld naar rato van de hoeveelheid tekst die wordt verwerkt. Ontwikkelaars kunnen daarom per project of zelfs per gebruiker een maximumbedrag instellen, zodat een fout in de programmeercode nooit kan leiden tot een onbeperkt oplopende rekening.
Wat wil men ermee bereiken?
Het belangrijkste doel is het voorkomen van wat in de sector een 'bill shock' heet: een onverwacht hoge factuur, veroorzaakt door een programmeerfout, een verkeerd geconfigureerde dienst, of simpelweg een populariteitspiek die niemand had voorzien. Zulke verrassingen kunnen voor kleine organisaties en zelfstandige ontwikkelaars financieel zeer pijnlijk zijn.
Een tweede doel is het mogelijk maken van experimenteren zonder onbeperkt financieel risico. Nieuwe technologie zoals generatieve AI is aantrekkelijk om mee te testen, maar de kosten zijn voor veel gebruikers nog moeilijk in te schatten. Goede budgetbewaking maakt het mogelijk om veilig te verkennen wat een technologie kan, met een harde grens aan wat het maximaal mag kosten.
Voor grotere organisaties en overheden speelt bovendien verantwoording een rol. Belastinggeld dat aan IT-projecten wordt besteed, moet traceerbaar en uitlegbaar zijn. Budgetbewaking levert de gegevens die nodig zijn om achteraf, maar steeds vaker ook tussentijds, te kunnen laten zien waar geld naartoe gaat en of dat volgens plan verloopt.
Voorbeelden uit de praktijk
FinOps Foundation (opgericht in 2019) is een internationale organisatie, ondergebracht bij de Linux Foundation, die bedrijven helpt met het opzetten van financieel beheer over hun cloudgebruik. Ze publiceren een gratis raamwerk en bieden certificering aan voor 'FinOps practitioners', mensen die binnen bedrijven verantwoordelijk zijn voor cloudkosten.
De grote cloudaanbieders hebben eigen ingebouwde gereedschappen. AWS Cost Explorer en AWS Budgets (Amazon), Microsoft Cost Management en Google Cloud Billing laten gebruikers real-time dashboards zien en bieden de mogelijkheid om automatische meldingen of afsluitingen in te stellen bij het bereiken van een budgetgrens.
Kubecost en het opvolgende open source-project OpenCost zijn gericht op een specifieker probleem: het uitsplitsen van kosten binnen Kubernetes, een veelgebruikt systeem om softwarecontainers te beheren. Omdat meerdere applicaties vaak dezelfde onderliggende servers delen, is het zonder zulke gereedschappen bijna onmogelijk om te zien welk onderdeel welk deel van de rekening veroorzaakt.
Aanbieders van AI-taalmodellen, waaronder OpenAI en Anthropic, bieden ontwikkelaars de mogelijkheid om per account of project een maandelijks uitgavenplafond in te stellen, met waarschuwingen bij bijvoorbeeld 50, 75 en 90 procent van dat bedrag. Dit is inmiddels standaardpraktijk geworden bij het bouwen van AI-toepassingen.
In Nederland is het Rijks ICT-dashboard een publiek voorbeeld van budgetbewaking op overheidsniveau. Dit dashboard, beheerd namens het ministerie van Binnenlandse Zaken, toont de voortgang en kosten van grote ICT-projecten bij de rijksoverheid, inclusief eventuele overschrijdingen ten opzichte van het oorspronkelijke budget.
Hoe ver is de techniek?
Het meten en zichtbaar maken van kosten is inmiddels volwassen technologie: vrijwel elke grote cloudaanbieder en veel gespecialiseerde leveranciers bieden gedetailleerde dashboards en waarschuwingen. Dit deel van budgetbewaking wordt breed gebruikt en werkt betrouwbaar.
Lastiger is het automatisch laten ingrijpen van systemen. Een dienst hard afsluiten zodra een budget is bereikt, kan namelijk ook betekenen dat een productieomgeving offline gaat op een cruciaal moment, met alle gevolgen van dien voor klanten. Veel organisaties kiezen daarom bewust voor waarschuwingen in plaats van automatische afsluiting, en behouden een mens die de uiteindelijke beslissing neemt.
Een groeiend en nog volop in ontwikkeling zijnd onderdeel is voorspellend budgetbeheer: met behulp van machine learning proberen systemen te voorspellen wanneer een budget dreigt te worden overschreden, gebaseerd op patronen uit het verleden. Dit werkt goed bij voorspelbaar, geleidelijk verbruik, maar minder goed bij plotselinge pieken, zoals een AI-toepassing die onverwacht viraal gaat.
Bij de overheid blijkt budgetbewaking vooral organisatorisch nog een uitdaging. Dashboards zoals het Rijks ICT-dashboard bieden transparantie, maar rapporten van de Algemene Rekenkamer laten regelmatig zien dat grote ICT-projecten alsnog fors over budget en planning heen gaan, mede omdat bewaking vaak achteraf plaatsvindt in plaats van doorlopend.
Wie werken eraan?
De grote clouddienstverleners Amazon Web Services, Microsoft Azure en Google Cloud ontwikkelen elk hun eigen ingebouwde budgetteringsgereedschappen en investeren continu in nauwkeurigere kostenmeting. De FinOps Foundation brengt honderden bedrijven samen rond gedeelde standaarden en praktijken voor financieel cloudbeheer.
In de open source-gemeenschap werken ontwikkelaars, onder andere verenigd rond het OpenCost-project (ondergebracht bij de Cloud Native Computing Foundation), aan vrij beschikbare alternatieven voor kostenbewaking binnen Kubernetes-omgevingen.
Aanbieders van AI-modellen zoals OpenAI en Anthropic bouwen budgetfuncties direct in hun ontwikkelaarsplatforms, aangezien onvoorspelbare AI-kosten een bekend knelpunt zijn voor bedrijven die met deze technologie experimenteren.
In Nederland houdt het ministerie van Binnenlandse Zaken en Koninkrijksrelaties het Rijks ICT-dashboard bij, terwijl de Algemene Rekenkamer onafhankelijk toezicht houdt en periodiek rapporteert over budgetoverschrijdingen bij grote overheidsprojecten.