Serverless Cloud: wat zijn de voor- en nadelen van deze FaaS?
Cloud computing heeft, mede door de betrekkelijk lage kosten en hoge mate van schaalbaarheid, inmiddels een grote vlucht genomen. Clouddiensten en -oplossingen vervangen dan ook bij steeds meer organisaties traditionele on-premise omgevingen. Een van de nieuwere trends binnen de cloud is serverless cloud computing (de serverloze cloud). Maar wat is dit eigenlijk? En wat zijn de belangrijkste voordelen van deze vorm van cloud computing? Lees verder om er alles over te weten te komen.
Function-as-a-service (FaaS)
Serverless cloud computing startte in 2013-2014 als een interessant doch tamelijk marginaal punt van discussie. Inmiddels staat het onderwerp echter centraal binnen talloze publicaties over de toekomst van de cloud. Hoewel de naam doet vermoeden dat er geenservers worden gebruikt bij serverless cloud computing, is dat niet het geval. Je IT-omgeving moet immers toch ergens op draaien.
Het belangrijkste basisbeginsel van serverless cloud computing is dat ontwikkelaars geen toegang hebben tot de gevirtualiseerde IT-infrastructuur. Functies draaien nog wel op servers, alleen heb je daar in het geval van serverless zelf geen omkijken meer naar. De toewijzing van taken en resources staat in het geval van de serverless cloud niet vast, maar wordt in plaats daarvan gestuurd door actuele gebeurtenissen en behoeften die real-time plaatsvinden.
Het resultaat? Extreem hoge benuttingswaarden voorwaardevolle resources die een optimale setup mogelijk maken. Dit geldt vooral voor situaties waarin gebruikers te maken krijgen met het asynchroon (niet gelijktijdig) verwerken van data en requests op de korte termijn. Het is dan ook niet zo vreemd dat de serverloze cloud vaak, naar analogie van modellen als SaaS (software-as-a-service) en PaaS (platform-as-a-service), wordt getypeerd als function-as-a-service (FaaS). Het belangrijkste kenmerk van FaaS is dat de cloudprovider zorg draagt voor het beheer aan de gehele onderliggende IT-infrastructuur en je alleen verantwoordelijk bent voor specifiek opgeroepen functies.
Met Serverless Cloud Computing zelf geen servers meer inrichten beheren
Serverless cloud computing komt dus neer op het abstraheren van servers, infrastructuur en besturingssystemen. Dankzij het bouwen van serverloze apps hoef je zelf geen servers meer in te richten en te beheren. Heel handig, want veel geld en tijd spenderen aan problemen in de infrastructuur is met de serverloze cloud definitief verleden tijd. Omdat serverloos een volledig beheerde service is, zijn het serverbeheer en de capaciteitsplanning niet zichtbaar voor de ontwikkelaar en is facturering alleen gebaseerd op verbruikte resources binnen de tijdspanne waarin de codewordt uitgevoerd.
Belangrijkste voordelen van Serverless Cloud Computing
Serverless cloud computing heeft een aantal belangrijke voordelen ten opzichte van andere cloudoplossingen en traditionele on-premise toepassingen. Tijd om die voordelen eens helder en overzichtelijk op een rij te zetten.
Flexibel schalen
Serverless cloud computing zorgt ervoor dat je tussen de nul en duizenden functies (geheel afhankelijk van de wensen en behoeften van de organisatie) gelijktijdig en snel kunt verwerken. Voldoen aan de vereisten van elke denkbare workload wordt zo een koud kunstje. Serverless cloud computing is wat dat betreft het neusje van de zalm als het aankomt op schaalbaarheid, ook omdat er in real-time wordt gereageerd op gebeurtenissen en triggers. Dit sluit goed aan op het continuous delivery (CD) en continuous integration (CI) proces.
Betalen naar gebruik
In tegenstelling tot on-premise oplossingen, waar je altijd het gevaar loopt te investeren in functionaliteiten en opslagcapaciteit die je niet nodig hebt, betaal je in het geval van serverless cloud computing alleen voor wat je daadwerkelijk gebruikt. Het kostenmodel is namelijk gebaseerd op gebeurtenissen. Dit betekent dat je alleen betaalt voor de tijd waarin code wordt uitgevoerd en voor de resources die daadwerkelijk worden gebruikt.
Minder tijd en mankracht kwijt aan beheer
Omdat serverless een volledig beheerde dienst is, hoeven je eigen teams zich voortaan niet meer bezig te houden met het beheren van servers. Zo ontstaat de ruimte om de focuste leggen op de kerntaken van de organisatie; in de meeste gevallen development. Bovendien kun je extra aandacht besteden aan de bedrijfsprocessen die waarde toevoegen aan producten en diensten.
Big data wordt beheers- en analyseerbaar
Omdat het werken met serverloze cloudoplossingen het verwerken van grote workloads faciliteert en de schaalbaarheid vergroot, wordt het ook veel gemakkelijker om op grote schaal met analytics en big data aan de slag te gaan. Denk bijvoorbeeld aan de onderstaande toepassingen.
- Verzekeraars kunnen middels een combinatie van traditionele workloads en het analyseren van big data (realtime) gedetailleerde profielen van verzekerden opstellen. Verzekeraars kunnen onder meer terugvallen op claims, medische gegevens en sociale gegevens.
- GPS-informatie kan gecombineerd worden met data die worden gegenereerd doorbewegingssensoren om bijvoorbeeld logistieke processen te verbeteren of oplossingen te zoeken voor verkeerstechnische problemen zoals het voorkomen van verkeersinfarcten.
- Op kunstmatige intelligentie gebaseerde oplossingen zoals Robotic Process Automation (RPA) en chatbots zorgen voor een snelle en geautomatiseerde verwerking van asynchrone informatie op grote schaal. In een serverloze cloud kun je deze workloads uitstekend en geheel naar actuele behoefte sturen.
Providers en de serverloze cloud
Ook belangrijke cloud aanbieders onderkennen inmiddels het potentieel van serverless cloud computing en bieden al diverse oplossingen aan voorapplicatie-ontwikkelingen binnen een serverloze IT-architectuur. Voorbeelden zijn AWS Lambda en Google Cloud Functions, twee platforms die Node.js ondersteunen. Ook Microsoft blijft niet achter en heeft inmiddels Azure Functions en Azure Data Lake. Beide systemen draaien op de Azure cloud. Ook zogenoemde next generation platforms zoals Kubernetes zijn inmiddels zo aangepast dat ze compatibel zijn met serverloze containers.
Risico’s van de Serverless Cloud
Nieuwe technieken brengen natuurlijk ook nadelen met zich mee. Zo zijn de complicaties die zich voor kunnen doen bij het migreren van een applicatie naar een ander platform voor veel ontwikkelaars vaak al een grootstruikelblok bij “serverfull-omgevingen”. Omdat een serverless-omgeving nog specifieker platformafhankelijk is, is een standaardisatie van de technieknodig om je applicatie pijnloos over te kunnen hevelen naar een ander platform.
Ook omdat de techniek nog niet volledig geadapteerd is bestaat het risico dat een serverless dienst niet toekomst vast blijkt te zijnen zomaar verdwijnt uit het managed diensten portfolio van je provider. Welke consequenties heeft dat voor een applicatie? Welke impact heeft het op je verdienmodel? En hoe borg je je klantafspraken als er opeens een schakel in de ketting ontbreekt. Of bij succes: hoe houd je controle over de kosten van de resources als deze significant verhoogd worden? Daarnaast zijn er nog de vragen over de data; waar staat het?, wie kan erbij?, is het (voldoende) gescheiden van andere klanten?, wordt er consistent geback-upt?, etc. Zomaar wat vragen en aandachtspunten waarop in de markt (nog) geen antwoord op gevonden is.
De toekomst van de serverloze cloud
Hoewel de techniek achter serverless cloud computing nog deels in de kinderschoenen staat, zijn de potentie en groeimogelijkheden enorm. Dat geldt vooral voor scenario’s waarin grote, asynchroon optredende workloads verwerkt moeten worden of grote hoeveelheden data vragen om een grondige analyse.
De serverloze cloud brengt het concept van cloudcomputing naar het hoogste niveau van abstractie dat op zakelijk vlak nog interessant en relevant is. De techniek geeft ontwikkelaars en IT-teams ongeëvenaarde mogelijkheden voor het bouwen, ontwikkelen en inzetten van hoogwaardige cloudapplicaties.
Wil je meer weten over de bijzonderheden en mogelijkheden van de serverloze cloud? Neem dan gerust vrijblijvend contact met ons op. Bij ACC ICT zijn we gespecialiseerd in het inrichten en beheren van verschillende typen multi-cloudomgevingen en hebben we te allen tijde oog voorde IT-continuïteit binnen jouw organisatie.