In recente gesprekken met potentiële klanten merk ik regelmatig een misverstand op: veel organisaties vinden dat ze al aan FinOps doen zodra ze tooling gebruiken om kosten inzichtelijk te maken. Ondanks deze tools worstelen ze echter vaak met het beheersen en daadwerkelijk verlagen van hun uitgaven. Hoewel het inzichtelijk maken van kosten belangrijk is, betekent dit niet automatisch dat een organisatie haar cloudgebruik optimaal beheert. Het hoofddoel van FinOps is immers om de mogelijkheden van de cloud zo efficiënt mogelijk in te zetten, waarbij financiële rapportage slechts een onderdeel is. Het meest essentiële in FinOps is het begrijpen van het cloudgebruik en bijbehorende kosten om deze ook in lijn te brengen met de waarde die dit voor een onderneming oplevert. Wanneer dit begrip ontbreekt is het onmogelijk om te sturen op kosten, hoe goed deze ook inzichtelijk zijn en hoe mooi de rapportages ook zijn.
Tooling
Het gebruik van tooling om het cloud gebruik en kosten inzichtelijk te maken is essentieel voor FinOps. Het is in mijn optiek het startpunt om FinOps te kunnen gaan uitvoeren. Tooling is een enabler voor FinOps. Het echte werk binnen FinOps is kosten(structuren) begrijpen, weten hoe deze beïnvloed kunnen worden en samenwerken om tot een optimaal resultaat te komen. Een belangrijk onderdeel van tooling is het mogelijk maken showback of chargeback; het inzichtelijk hebben van welk team of welke applicatie hoeveel kosten met zich meebrengt. Vanuit de FinOps gedachte is dit essentieel zodat de afdeling die deze kosten maakt hier ook verantwoordelijk voor wordt gehouden en kan / zal sturen om deze kosten te optimaliseren. In de praktijk zie ik vaak dat de kosten vooral als uitgangspunt worden gebruikt voor budgettering zonder te kijken hoe deze effectief deze cloud kosten zijn. Teams worden niet gechallenged om hun kosten te beheersen of te verlagen. Een absoluut bedrag geeft geen inzicht in hoeverre de kosten in verhouding staan tot de waarde van de afgenomen dienst.
Kosten binnen budget, maar toch 30% te hoog |
---|
In dit voorbeeld hebben we een quickscan gedaan bij een klant om te onderzoeken welke quick wins er gehaald konden worden. Deze klant had een derde partij gecontracteerd om de kosten in de cloud te optimaliseren deze partij leverde ook rapportages over de kosten per applicatie. De cloud spend was redelijk stabiel en binnen budget. Onze klant vond dit vanuit het oogpunt van voorspelbaarheid natuurlijk erg fijn, maar wilde toch een second opinion. Toen wij in de kosten per applicatie doken bleek dat de productieomgeving vanuit een kostenperspectief goed geoptimaliseerd was. Aan de non-productieomgeving was echter veel minder aandacht geschonken. De VM’s in deze omgevingen stonden 24×7 te draaien, de omgevingen waren niet opgeruimd, waardoor er veel (orphaned) resources actief waren die helemaal niet meer in gebruik waren. Uiteindelijk hebben we op de non-productieomgevingen de kosten met 50% verlaagd. De totale kosten voor deze applicatie gingen uiteindelijk met ca. 30% omlaag. Wanneer alleen gekeken wordt naar kosten versus budget was niet duidelijk geworden dat de kosten voor deze applicatie verre van optimaal waren, ondanks de kostenoptimalisaties op de productieomgeving. |
Zoals gezegd in het inzicht in kosten essentieel, zonder dit inzicht is het niet mogelijk om sturing te geven aan het cloudgebruik aan de personen die ook daadwerkelijk deze kosten maken / beïnvloeden. Gezien de omvang en veranderlijkheid van de data omtrent cloudgebruik is een tool daarom een onontbeerlijk hulpmiddel. Er is echter meer nodig dan een tool of rapportage om ook daadwerkelijk het cloud gebruik en de daarmee samenhangende kosten te optimaliseren.
Adviezen
Naast kosteninzicht levert FinOps tooling ook veel adviezen om kostenbesparende maatregelen te nemen. Met gebruik van tooling ontstaat er echter ook het risico dat er direct opvolging wordt gegeven aan deze adviezen. Tevens zegt het inzicht van kosten van een subscriptie, afdeling, team of applicatie niet iets over hoe (kosten)effectief dit is. Daarom is het erg belangrijk om ook goed te begrijpen waarom de adviezen gegeven worden zodat deze ook gevalideerd kunnen worden.
Resizing voor aanschaf reserved instances |
---|
In dit praktijkvoorbeeld gaf een cloud management tool aan dat onze klant flink kon besparen door Reserved Instances af te sluiten. De kosten zouden met 60% kunnen dalen. Als je iets dieper kijkt in dit advies blijkt al dat dit alleen de compute kosten zijn. Aangezien betreffende machines op Windows OS draaiden zouden de kosten effectief nog maar met 34% dalen. Toen we iets verder op deze machines inzoomden bleek het geheugen en cpu gebruik erg laag. Het bleek dat ze 1-op-1 waren gesized op de omvang die ze in een eerder VMWare cluster hadden zonder te kijken wat het daadwerkelijke gebruik was. We hebben daarom voorgesteld om de VM om te zetten naar 2-core cpu’s. Bij performance problemen kun je altijd heel makkelijk weer opschalen (dit is juist een van de voordelen van de cloud). Hiermee zouden we 69% besparen ton opzichte van de huidige kosten. Tenslotte had deze klant nog een forse onpremise omgeving met Windows Datacenter en was er genoeg ruimte om de machines met Azure hybrid benefit af te dekken waardoor ook de licentiecomponent bespaard kon worden. Dit resulteerde uiteindelijk in een daling van 91% van de kosten voor de VM’s (van €280 naar €25). Wanneer er alleen gekeken was naar de adviezen van de tool had men een nette besparing gehaald van 34%. Door echter iets verder te kijken dan alleen de adviezen van de tool is er nu een besparing van 91% gerealiseerd. |
VM | Pay-as-you-Go | 3 YR RI | Besparing |
---|---|---|---|
D4s v4 | € 279,47 | € 183,21 | 34% |
D2s v4 | € 126,91 | € 86,48 | 69% |
D2s v4 AHB | € 64,80 | € 24,38 | 91% |
Risico’s
Zoals gezegd is tooling voor inzicht in kosten en adviezen een essentieel onderdeel van FinOps en cloud cost management. Echter is het wel belangrijk om goed kennis van te hebben van de cloud cost modellen om de kosten en adviezen op waarde te kunnen schatten. De tooling levert input voor mogelijk kostenbesparende acties. Deze acties zullen echter wel eerst goed geanalyseerd moeten worden. Tooling kijkt immers alleen naar het historische verbruik. Op basis van historisch verbruik kan het bijvoorbeeld erg interessant om RI’s te kopen waarbij de optimale besparing op een 3-jarige RI ligt. Maar wanneer een workload in de (nabije) toekomst zal worden beëindigd of dat de architectuur verder geoptimaliseerd gaat worden naar bijv Containersering of een serverless oplossing is mogelijk een 1 jarige RI of zelfs helemaal geen RI veel voordeliger.
In de praktijk zien we dat bedrijven adviezen van tools om reserved instances en savings plans op VM’s af te nemen opvolgen zonder hier al te veel over na te denken. In sommige gevallen is hier fors kosten mee bespaard (rate optimization), alleen hadden deze kosten nog veel lager kunnen zijn wanneer er eerst wat gekeken naar de sizing van deze VM’s (usage optimization).
Een ander ‘probleem’ bij het rücksichtsloos opvolgen van de adviezen is dat er vaak niet wordt teruggekeken of die adviezen ook daadwerkelijk bleken te kloppen. FinOps is een continue proces, cloudgebruik is erg dynamisch en veranderlijk. Van die dynamiek kun je gebruik maken, je zult hier echter wel continu aandacht aan moeten blijven schenken.
Uitgevoerde acties blijven monitoren |
---|
Bij dit bedrijf was er op basis van de tooling een behoorlijk aantal RI’s zijn aangeschaft van eenzelfde type machine. Bij onze Quickscan bleek dat deze maar voor 5% gebruikt werden. Na een nadere analyse kwam naar voren dat er 2 maanden na het afsluiten van de RI veel machines zijn omgezet naar een andere, meer geheugen intensieve VM familie. Gevolg was dat er aan de ene kant geld werd betaald voor RI’s die niet werden gebruikt en aan de andere kant (duurdere) machines werden afgenomen op basis van PAYG. Omdat deze klant eigenlijk maar eens per 3 maanden naar de adviezen kijkt heeft dit onnodig veel geld gekost. |
Een ander voorbeeld hebben we gezien bij een partij die prepaid Azure Databricks Units voor 1 jaar had gekocht met een forse korting. Zij hadden de units na 5 maanden al verbruikt, hierdoor gingen ze daarna PAYG prijzen betalen. Zij dachten dat de korting voor 1 jaar geldig was, terwijl het prijsmodel anders werkt. Hierdoor zijn de kosten voor Databricks veel hoger uitgevallen, enerzijds doordat de korting niet meer van toepassing was. anderzijds zou er door het hogere gebruik juist een hogere korting afgesproken kunnen worden. |
Native of 3rd party tooling
Het belangrijkste in mijn ogen is dat cloud gebruikers begrijpen hoe de data geïnterpreteerd moet worden om goede afwegingen voor keuzes met betrekking tot cloudgebruik te maken. Dit staat los van de tool die gebruikt wordt. Vaak adviseren wij klanten daarom vaak om te starten met het gebruik van Native tools. Veel van de initiële requirements mbt kostenoverzichten, kostentransparantie, kosten aanbevelingen worden al kosteloos aangeboden, terwijl 3rd party software extra kosten met zich meebrengen die niet altijd in verhouding staat tot de toegevoegde waarde. Naarmate klanten beter begrip hebben van de werking komt er vaak ook een specifieke behoefte (bijv. Meer inzicht in container costs, meer mogelijkheden voor budgettering, verdergaande automatisering, multicloud rapportage) waarvoor een aanvullende 3rd party tool nodig / handig is. Het is essentieel om van te voren een goed beeld te vormen over wat er van de tooling wordt verwacht en wat het opbrengt (ook in vergelijking met de gratis tools die al beschikbaar zijn).
Aandachtspunten bij het gebruik van FinOps tooling
De volgende zaken zijn belangrijk:
- Implementeer continue monitoring om afwijkingen te signaleren en bij te kunnen sturen.
-
-
-
- Goed configureren van de tooling zodat de kostenoverzichten passen bij de inrichting van de organisatie en (financiële) processen.
- Bespreek de adviezen met de technische teams en functionele eigenaar om te bepalen of het inderdaad een goed advies is en of dit past in de toekomstige ontwikkelingen.
- Kijk verder dan de geautomatiseerde adviezen
- Monitor achteraf of de geïmplementeerde acties ook resultaat (blijven) opleveren.
-
- Implementeer continue monitoring om afwijkingen te signaleren en bij te kunnen sturen.
-
[/vc_column_text][/vc_column][/vc_row]