John Segers
Werk in het SURFcumulus team, woon in Utrecht Meer over John Segers
Op 27 juni hielden we ons SURFcumulus-webinar over cloudgovernance, op 18 juli kwam de blogpost over cloudgovernance online. Het cloudservicemanagementsysteem (csm-systeem) bestaan uit verschillende elementen binnen cloudgovernance. Het bestaat uit de tools waarmee je je cloudgovernanceprocessen ondersteunt. Hier zijn de 5 belangrijkste:
Al deze tools komen aan bod in een serie blogposts. In de rest van dit artikel lees je over het eerste onderdeel: financieel beheer voor cloud.
Standaard hanteren clouddiensten een afrekenmodel waarbij je betaalt wat je gebruikt: Pay as you go of Pay per use. Je betaalt bijvoorbeeld voor het aantal gebruikers van een SaaS-applicatie, het aantal gigabytes aan opgeslagen bestanden, of het aantal uren/minuten/seconden dat een VM aan staat. Het gevolg hiervan is dat je maandelijkse rekeningen allemaal verschillen.
Wil je dat gebruikers meer zelf kunnen doen? Je kunt de rechten delegeren voor het aanmaken van cloudobjecten (applicatiegebruikers, VM, databases, Kubernetes clusters, Jupyter notebooks, big data clusters, …). Echter kan het cloudgebruik dan ongemerkt groeien, en de rekeningen onverwacht hoog worden. Juist op cloudgebruik wil je grip houden.
Bij clouddienstuitgaven plannen en bewaken zijn er verschillende belanghebbenden:
De financiële afdeling:
Deze wil een geautomatiseerd facturatieproces, vaak met geautomatiseerde doorbelasting van gemaakte kosten naar de afdeling, faculteit, opleiding of het onderzoeksproject.
It-managers
Zij willen inzicht in gemaakte kosten en trends, bijhouden of deze passen binnen de budgetten en of de clouddiensten kosteneffectief worden gebruikt. Bij SaaS-diensten telt het aantal actieve gebruikers per maand, of het aantal uren gebruik per gebruiker. Bij PaaS/IaaS-diensten kijken ze naar meer technische informatie, zoals of de VM’s of databases niet te groot en daardoor te duur zijn. Of zijn er andere afrekeningsmodellen meer kosteneffectief dan Pay as you go?
Onderzoekers en docenten
Zij willen meer detailinzicht in de gebruikskosten, en dat afzetten tegen het budget per project of vak. Ook zij vinden alarmering belangrijk, om budgetoverschrijding te voorkomen.
Cloudproviders zoals Amazon Web Services (AWS), Google Cloud Platform (GCP) en Microsoft Azure leveren gedetailleerde verbruiksgegevens op. SURF maakt met deze gebruiksgegevens, ofwel Cloud Usage Records (CUR), de facturen voor instellingen onder SURFcumulus. Het is onmogelijk om deze allemaal handmatig te analyseren: voor grotere instellingen beslaan verbruiksgegevens soms makkelijk 40.000 regels.
Veel providers bieden - vaak kosteloos - hulpmiddelen voor financieel beheer. Met deze hulpmiddelen krijg je inzicht in verbruikskosten: je bekijkt trends en de kosten per service, account (AWS), project (GCP) of subscription (Microsoft Azure). Voeg ook metadata-tags toe aan cloudobjecten. Met de kostenbeheertools kun je dan het verbruik naar metadata-tag uitsplitsen. Daarmee kun je inzicht krijgen in de verbruikskosten per interne afnemer. Deze tags worden opgenomen in de CUR.
Tip: gebruik om te beginnen de tools die providers bieden. Als je functionaliteiten mist, kun je altijd verder kijken. Natuulijk kun je ook zelf bouwen, bijvoorbeeld met een bi-tool die je al binnen de instelling gebruikt. Of zelf een tool aanschaffen.
Financieel beheer voor cloudkosten inrichten vereist zorgvuldige planning en samenwerking tussen belanghebbenden. Inzicht in deze strategieën en samenwerking tussen de betrokken partijen is essentieel voor effectief financieel beheer. Wil je bijvoorbeeld cloudgebruik doorbelasten aan interne afnemers? De afdeling finance heeft dan een helder overzicht nodig van kostenposten en cloudgebruik. Dat kun je op twee manieren inrichten:
Maak per interne afnemer een inkooporder.
Vraag een factuur van de leverancier per inkooporder (SURF is hierbij de leverancier als je SURFcumulus gebruikt).
SURF genereert voor instellingen meerdere facturen voor het cloudgebruik, elk met een eigen inkoopnummer. Als er bij de instelling een nieuwe interne afnemer is, dan moet de afdeling finance of procurement zorgen dat er een nieuwe inkooporder komt en dat SURF de gegevens krijgt om de juiste informatie op de toekomstige facturen te zetten.
De it-afdeling van de instelling moet ervoor zorgen dat de cloudomgeving is ingericht op een manier dat het verbruik is uit te splitsen per interne afnemer. Dit kan gedaan worden door een goede structuur te kiezen in accounts, projecten of subscripties en het toepassen van metadata-tags.
SURF moet vervolgens samenwerken met de (reseller van de) cloudprovider om het cloudgebruik per interne afnemer van de instelling uit te splitsen. Dat is nodig om een factuur per inkooporder aan de instelling te kunnen sturen.
Om een geschikte factuurstroom op te zetten voor interne doorbelasting is het nodig dat SURF, de afdeling finance of procurement van een instelling, de it-afdeling van een instelling en de cloudprovider nauw samenwerken. Dit is geen schaalbaar proces.
Bij deze aanpak gebruik je de CUR van de cloudprovider.
It en finance richten samen een cloudomgeving in waarin je gebruik kunt uitsplitsen naar interne afnemer, net als bij de vorige optie.
Eventueel worden metadata-tags toegepast in de cloudomgeving om elke regel uit de CUR te relateren aan een interne afnemer.
Bij facturatie analyseer je de CUR van de verbruiksperiode en aggregeer je het verbruik per afnemer uit de detailgegevens.
Voer daarna de kosten per interne afnemer in het financiële systeem van de instelling in.
Met deze aanpak zijn er bij SURF of bij de cloudprovider of -reseller geen aanpassingen nodig, mits die metadata-tags ondersteunt. Dit maakt het proces schaalbaarder en minder foutgevoelig.
Maak daarnaast afspraken binnen je instelling over kosten van gedeelde voorzieningen zoals beveiligingsdiensten of netwerkverbindingen tussen de campus en de cloud. De leverancier kan bv. het gebruik van een netwerkverbindingen niet uitsplitsen per interne afnemer. Wanneer de instelling deze kosten intern wil doorbelasten, zal de afdeling finance of procurement dat moeten doen, uiteraard op basis van interne afspraken hierover.
Bij clouddiensten is betalen naar gebruik de norm, maar de meeste cloudproviders bieden ook afrekenmodellen op basis van gegarandeerde afname. Dat kan kortingen opleveren. De terminologie verschilt per cloudprovider, maar het concept is hetzelfde: als je je vastlegt voor bepaald gebruik, krijg je korting. Vaak gaat het dan om toezegging voor een termijn van 1 of 3 jaar. Over het algemeen geldt een hogere korting bij een specifiekere toezegging. Bij de grote cloudproviders zien we twee vormen van toezeggingen:
Financiële toezegging: hier verbind je je om gedurende een gekozen termijn een gespecificeerd minimumbedrag per tijdsperiode uit te geven. Dit komt voor bij zogenaamde Savings plans.
Toezegging op afnemen van een bepaalde type cloudobject: dit omvat bijvoorbeeld een aantal VM’s van een bepaald type in een bepaalde cloudregio, of een aantal van een bepaald type database-instanties.
Let op: als je een toezegging aangaat, betaal je voor gespecificeerd gebruik of het afgesproken minimumbedrag voor de hele looptijd. Ook als je daadwerkelijke gebruik lager is dan de toezegging. Plan je cloudgebruik dus goed, en maak dit inzichtelijk op één centrale plek, voordat je een beslissing neemt.
Grote cloudproviders ondersteunen je in dit proces, als onderdeel van hun gratis kostenbeheertools. Zo zijn er tools die aanbevelingen doen op basis van historisch gebruik. Op deze manier kun je behoorlijk besparen en krijg je hulp in afwegingen maken voordat je je vastlegt. Zo doe je alleen een commitment waartoe de organisatie bereid is en minimaliseer je het risico van overcommitment.
Bij on-premises it-omgevingen worden vaak grote VM’s gebruikt en het it-infrastructuurteam optimaliseert de capaciteit van het onderliggende virtualisatieplatform door CPU's en eventueel RAM te overboeken. De grote cloud providers passen om beveiligings- en prestatierisico's te voorkomen doorgaans geen overboeking van CPU's toe en zeker geen overboeking van RAM. Overboeking maakt de omgeving kwetsbaarder voor aanvallen door hackers, en voor side-channel attacks in het bijzonder.
VM's in de cloud zijn vaak overgedimensioneerd: Gebruikers kiezen VM's op basis van het aantal virtuele CPU's en geheugen, wat resulteert in grotere VM's dan nodig omdat in de cloud geen overboeking wordt toegepast.
Bespaar kosten met rightsizing: pas dus de grootte van VM's aan naar wat daadwerkelijk vereist is. Dit kan aanzienlijke kostenbesparingen opleveren.
Rightsizen kost veel werk voor grote aantallen VM’s of database-instanties, maar gelukkig zijn hiervoor tools beschikbaar. Ons advies: begin met tools van de cloudproviders zelf en kijk naar tools van derde partijen als je functionaliteiten mist.
In tegenstelling tot on-premises omgevingen, biedt de cloud de mogelijkheid om snel nieuwe VM's te maken om piekbelastingen op te vangen. De grote cloudproviders ondersteunen eenvoudige automatische schaling op basis van drempelwaarden zoals CPU-bezetting of het aantal openstaande requests naar een applicatie.
Automatische schaling in de cloud: hiermee kunnen nieuwe VM's worden aangemaakt als dat nodig is en automatisch worden verwijderd als de belasting afneemt.
Geschiktheid voor horizontale schaling: als je applicatie geschikt is voor horizontale schaling, kan automatische schaling kosten minimaliseren.
Door automatische schaling te gebruiken, betaal je alleen voor de capaciteit die je tijdens piekbelasting nodig hebt. Het gebruik van meerdere kleine VM's in verschillende Availability Zones verbetert de beschikbaarheid van de applicatie. De meeste grote cloudproviders bieden tools om dit proces te ondersteunen, zodat je jouw cloudinfrastructuur efficiënt kunt schalen en beheren.
De belangrijkste conclusie is dat cloud financieel beheer alleen goed kan werken als er wordt samengewerkt tussen verschillende belanghebbenden. Zonder deze samenwerking kun je niet goed kosten toewijzen aan gebruikers, noch goede beslissingen nemen over vastleggingen waarmee je korting krijgt.
Gelukkig bieden cloudproviders hulpmiddelen die cloud financieel beheer ondersteunen. Als je begint met het inrichten van je financiële processen voor cloud, raden we aan te beginnen met deze tools. Meestal gebruik je ze kosteloos. En door ze te gebruiken bouw je kennis op over de mogelijkheden die er zijn.
Heb je suggesties, ervaringen die je wilt delen of andere feedback? Laat het weten in de Cloudcomputing-community! Zo we leren van elkaar.
Werk in het SURFcumulus team, woon in Utrecht Meer over John Segers
0 Praat mee