In 2015 begon Dropbox met het volledig draaien van zijn infrastructuur op eigen servers, weg van AWS. Een jaar eerder had het leiderschap van het bedrijf besloten deze stap te zetten omdat hun cloud hosting kosten te hoog waren geworden. Dit verhaal veroorzaakte opschudding in de wereld van technologie, die tegen die tijd als vanzelfsprekend had aangenomen dat de toekomst bij de publieke cloud lag en dat spoedig alle werkbelastingen daar zouden zijn. Maar de werkelijkheid is dat oplossingen voor private cloud vaak logischer zijn voor de meeste gevallen om kosten te beheersen en voorspelbaar te maken, evenals het hebben van 100% toegewijde infrastructuur zonder lawaaiige buren. In hun beursgangpresentatie van 2018 onthulde Dropbox dat deze verandering hen meer dan 70 miljoen euro had bespaard in twee jaar tijd.
Drie jaar later gebruikten analisten van Andreesen Horowitz het verhaal van Dropbox om een trend te illustreren die ze hadden waargenomen. Hoewel het gebruik van de publieke cloud een gemakkelijke en weinig doordachte beslissing is voor een beginnend bedrijf, schreven zij in dit artikel, wegen de kosten voor cloudinfrastructuur steeds zwaarder op de winstmarges en marktkapitalisatie naarmate de zaken opschalen.
Een ander belangrijk publiek verhaal dat de “repatriëring van de cloud” in het zeitgeist stookte, was dat van 37Signals, wiens mede-oprichter en maker van Ruby on Rails, David Heinemeier Hansson, uitvoerig schreef over het verplaatsen van de producten van het bedrijf, Basecamp en HEY, voornamelijk weg van de cloud, omdat ze waren gegroeid voorbij het punt waarbij de flexibiliteit die je krijgt door het uitvoeren van werklasten in een publieke cloud een hoge kostenpost had. On-premise oplossingen begonnen weer veel zin te maken.
Het optimaliseren van de kosten van infrastructuur terwijl je aan de vraag naar werkbelasting voldoet, is een uitdaging. In dit artikel zullen we je vertellen over de algemene strategieën om de kosten van cloud hosting te verlagen. Je zult ook leren over de private cloud, als een beter alternatief voor publieke clouds, die betere prestaties kan bieden tegen lagere kosten, terwijl het de flexibiliteit van de cloud behoudt.
Begrijpen van cloud hosting kosten
Een van de redenen achter de hoge kosten van de cloud is de complexiteit van de functiesets en prijsmodellen van aanbieders van publieke clouds. Om effectief de kosten te beheersen, moet je exact weten waarvoor je wordt aangerekend en hoe kosten zich op kunnen stapelen, wat op zichzelf al een uitdaging is.
Factoren die bijdragen aan je hoge cloudrekening
- Overprovisionering: Een van de hoofddoelen van de cloud is het leveren van voldoende middelen op aanvraag, zowel om aan de behoeften van klanten te voldoen als aan de vereisten van interne teams. Een overprovisionering betekent niet noodzakelijk hogere kosten, maar moet per geval onderzocht worden.
- Verkeerde keuze van instance types: Een mismatch tussen instance types, opslagklassen en het gebruik van gespecialiseerde diensten, zoals GPU’s, kan leiden tot prestatiebottlenecks of hogere rekeningen als ze niet goed geconfigureerd zijn.
- Kosten voor dataverkeer: Data verplaatsen tussen beschikbaarheidszones en verschillende systemen kan verrassend duur zijn, zeker voor toepassingen met veel verkeer.
- Licentiekosten: Softwarelicentiekosten kunnen bijdragen aan de hoge kosten als je niet je eigen licenties mee kunt brengen (BYOL).
- Pay-as-you-go model: Dit model, waarbij je betaalt voor gebruik, maakt de cloud aanpasbaar en aantrekkelijk, omdat het een lage instapprijs biedt om een dienst op te zetten voor gebruikers op verschillende locaties. Het vereist echter een strenge kostenbewaking.
- Personeelskosten: Je moet het nodige personeel in gedachten houden om jouw hele infrastructuur te beveiligen en te bewaken. Bijvoorbeeld, als je je architectuur herontwerpt voor grotere kostenbesparingen of om betrouwbare diensten op te zetten via meervoudige of hybride cloud opstellingen, wordt een toegewijd team essentieel.
- Opslag: Zonder een goede strategie voor archivering en retentie kan de kost om jouw gestructureerde en vooral ongestructureerde data te behouden aanzienlijk stijgen. Bovendien kan het verplaatsen van data naar een andere provider om gebruik te maken van kortingen voor gecommitteerd cloudgebruik extra kosten met zich meebrengen.
Strategieën om cloud hosting kosten te minimaliseren
Eens je een beter begrip hebt van wat de hoge kosten veroorzaakt, kun je je focussen op strategieën die je helpen deze te verlagen. Je kunt jouw instances optimaliseren voor een beter gebruik van de beschikbare middelen en deze middelen aanpassen aan de vraag en de toepassing in kwestie.
- Juiste dimensionering en toewijzing van middelen: Het afstemmen van middelentoewijzing en het plannen van optimale capaciteit is een van de beste dingen die je kunt doen om geld te besparen. Dit proces begint met het gebruik van monitoring- en profileringtools.
- Automatisch schalen en het beheer van piekvraag: Automatisch schalen zorgt voor een optimale toewijzing van middelen tijdens vraagpieken, waardoor overprovisionering tijdens perioden van lage activiteit wordt vermeden.
- Gebruik van gereserveerde en spot instances: Gereserveerde instances stellen je in staat langetermijninfrastructuurverplichtingen aan te gaan, waardoor je korting krijgt. Spot instances zijn ideaal voor testdoeleinden, omdat ze gebruikmaken van ongebruikte capaciteit en daarom een enorme korting hebben. Ze brengen echter ook een risico met zich mee, ze kunnen worden vrijgegeven als de provider ze nodig heeft.
- Refactoring van applicaties: Het opnieuw ontwerpen van een applicatie om te passen in het cloudmodel kan zowel kostenvoordelen genereren als een beter functionerende en veelzijdigere applicatie.
- Gebruik van kostenmonitoring en -optimalisatiehulpmiddelen: Hulpmiddelen zoals AWS Cost Explorer en Microsoft Cost Management bieden een diepgaande analyse van kostengegevens, detecteren anomalieën en bevelen optimalisatiemogelijkheden aan.
Er zijn grenzen aan kostoptimalisatie in de cloud
Hoewel deze strategieën nuttig zijn, hebben ze allemaal hun limieten in hoeveel besparingen je kunt bereiken. Over tijd beginnen de opbrengsten van deze optimalisaties af te nemen. Bovendien kunnen en doen publieke cloud leveranciers vaak hun prijsmodellen en aangeboden diensten veranderen naar eigen inzicht, wat je optimalisatie beïnvloedt.
Is er een betere manier? De private cloud
Er bestaat een alternatieve stijl van infrastructuur die gebruikers toestaat om controle te houden over vraag, echt exclusief gebruik van computing en voorspelbare kosten, met opties voor pay-as-you-go infrastructuur. Het gaat om de toegewijde private cloud.
In tegenstelling tot traditionele cloudservices, biedt een private cloud, zoals die van Stackscale, echte fysieke server computerinstanties (bare-metalEen bare-metal server is een fysieke server met een enkele …) waarop je elke hypervisor zoals VMware, Proxmox, Hyper-V, KVM, etc. kunt implementeren. Dit biedt niet alleen betere prestaties, maar resulteert ook in een efficiënter gebruik van de exclusieve computer capaciteit waar je voor betaalt.