• partner

  • partner

  • partner

  • Homepage
  • >
  • Blog
  • >
  • Clouddienst FaaS – Wat is dat eigenlijk?

Blog

  • Clouddienst FaaS – Wat is dat eigenlijk?

    16.01.17 | Door: Telindus

    De term ‘as-a-Service’ wordt veelvuldig gebruikt bij het aangeven van clouddiensten. De drie bekendste zijn Infrastructure as a Service (IaaS), Platform as a Service (PaaS) en Software as a Service (SaaS). Bij de meeste IT-professionals zullen deze termen bekend in de oren klinken. Voor de lezers die het niet meer precies op het netvlies hebben, blik ik kort terug op deze services en bespreek ik de nieuwste clouddienst: Function as a Service.

    Clouddienst 1: IaaS
    Met Infrastructure as a Service maak je alleen gebruik van een infrastructuur die aan jou ter beschikking wordt gesteld. Denk hierbij aan bijvoorbeeld een cloudprovider zoals Amazon Web Services (AWS), waar je een virtuele infrastructuur kunt afnemen in een pay-per-use model zonder hiervoor ook maar enige hardware aan te schaffen. Met deze vorm kun je gebruikmaken van storage, compute en networking van de cloudprovider om zo je eigen virtuele omgeving op te bouwen. Hierbij levert AWS alleen maar de infrastructuur. Je bent zelf helemaal verantwoordelijk voor de inrichting van de verschillende virtuele servers en applicaties daarop. In de meeste gevallen deel je de onderliggende hardware met andere klanten van de IaaS-aanbieder.

    Clouddienst 2: PaaS
    Met Platform as a Service gaan we al een niveau verder. Hierbij wordt een platform aangeboden, waarop je bijvoorbeeld eigen ontwikkelde applicaties kan draaien. Cloud Foundry of de Google App Engine zijn enkele voorbeelden van zo’n PaaS-clouddienst. Als gebruiker heb je dus geen omkijken meer naar de onderliggende infrastructuur, dit wordt als gebruiker van zo’n platform voor je geregeld.

    Clouddienst 3: SaaS
    De meest gebruikte clouddienst is Software as a Service. Software wordt hierbij als een dienst aangeboden. Als gebruiker betaal je hiervoor een variabel bedrag voor bijvoorbeeld de gebruikte hoeveelheid storage of een vast bedrag per maand. Je hoeft dus zelf de software niet te beheren, dat doet de SaaS-aanbieder. Ik denk dat iedereen wel gebruikmaakt van een service zoals Dropbox of Gmail, waarmee je dus zelf ook een gebruiker van een SaaS-dienst bent.

    Nieuwe clouddienst: FaaS
    De laatste tijd heb ik een aantal keer de term Function as a Service (FaaS) gehoord in combinatie met serverless-architecturen. Maar wat wordt daar nu eigenlijk mee bedoeld? Hieronder geef ik een voorbeeld:

    Stel ik heb een eenvoudige dienst die een watermerk op een afbeelding zet en deze wil ik bij een cloudprovider hosten, dan kan ik ervoor kiezen om een IaaS-dienst af te nemen bij een cloudprovider. Deze infrastructuur moet ik dan zelf voorzien van de juiste configuratie, operating systemen en applicaties. Dit betekent dat ik niet alleen mijn applicatie moet beheren, maar ook het onderliggende operating systeem. Wanneer deze dienst een groot succes wordt, moet ik tevens rekening houden met het automatisch schalen van de virtuele servers aan de onderkant. Maar wat als deze dienst niet aanslaat? Iedere seconde dat de setup actief is, moet ik mijn provider betalen ongeacht of er bezoekers zijn of niet.

    Als mijn cloudprovider een FaaS aanbiedt, dan zou ik het aanbrengen van een watermerk als functie kunnen aanbieden. Mijn cloudprovider is verder verantwoordelijk voor het beheer van de onderkant. Dit betekent dat je als gebruiker ontzettend wordt ontzorgd en je alleen nog maar verantwoordelijk bent voor de functie zelf. Het is de verantwoordelijkheid van de provider om bij een hoge load automatisch resources aan de onderkant toe te voegen voor een specifieke functie. Daar komt de term serverless in combinatie met FaaS dan ook vandaan. De functie draait natuurlijk nog steeds op servers alleen heb je daar als afnemer van de dienst geen omkijken meer naar.

    Mocht deze fantastische watermerkdienst nu geen succes worden, geen probleem. Ik betaal voor de aantal keren dat deze functie wordt aangeroepen. Bij Amazon Lambda zijn bijvoorbeeld de eerste miljoen calls per maand gratis. Hier zit ook het onderscheid ten opzichte van applicaties in een PaaS-omgevingen, die zijn niet gericht zijn op het continu stoppen en starten bij iedere ‘request’. FaaS is nu precies ontwikkeld om dit te doen. Diverse cloudproviders bieden deze diensten al aan zoals AWS Lambda, Google Cloud Functions, Azure Functions en voor de private cloud variant IBM OpenWhisk.

    Klinkt goed toch? Dus hup al mijn applicaties de FaaS in. Helaas werkt het niet zo simpel. Diensten die hiervan gebruik willen maken, moeten volgens een ‘Event-Driven’ model ingericht worden en van verschillende clouddiensten gebruik maken voor bijvoorbeeld storage, database en API front-end services. Dus zoals altijd geldt de regel: Kan ik deze oplossing voor uitdaging X, Y of Z gebruiken? It depends.

    Auteur: John Grinwis, Consultant bij Telindus

Meest gelezen op IT Executive

Meest bekeken partnercontent