Cloud computing is het via het internet op aanvraag beschikbaar stellen van hardware, software en gegevens, ongeveer zoals elektriciteit uit het lichtnet. De term is afkomstig uit de schematechnieken uit de informatica waar een groot, decentraal netwerk (zoals het internet) met behulp van een wolk wordt aangeduid.
De cloud (Nederlands: wolk) staat voor een netwerk dat met al de computers die erop aangesloten zijn een soort ‘wolk van computers’ vormt, waarbij de eindgebruiker niet weet op hoeveel of welke computer(s) de software draait of waar die precies staan. De gebruiker hoeft op deze manier geen eigenaar meer te zijn van de gebruikte hard- en software en is niet verantwoordelijk voor het onderhoud. De details van de informatietechnologische infrastructuur worden aan het oog onttrokken en de gebruiker beschikt over een “eigen”, in omvang en mogelijkheden schaalbare, virtuele infrastructuur. De cloud is dus een begrip dat onlinediensten aanduidt.
Geschiedenis
De term cloud is ontstaan samen met het concept van packet switching. Doordat de verzonden datapakketten niet meer over een vastgelegd traject gingen, wist men niet meer, en hoefde men niet meer te weten, welke weg ze volgden om aan hun eindpunt te komen. Sindsdien stelde men het netwerk voor als een wolk om aan te duiden dat men niet met zekerheid kon zeggen welke route binnen de wolk werd gevolgd. In cloud computing gaat het niet meer over verbindingswegen maar over infrastructuren. Sun Microsystems gaf als eerste invulling aan het concept met de slogan “the network is the computer” (het netwerk is de computer) en de introductie van software die het mogelijk maakte taken en gegevens over vele computers te verdelen, zoals het Network File System.
De eerste definitie werd in 1997 als volgt door Ramnath K. Chellappa geformuleerd: “Een computerparadigma waarbij de grenzen van de computer worden vastgesteld door het economische aspect eerder dan de technische limieten.”
Rond het jaar 2000 kwam SaaS erg sterk op. Salesforce.com bouwde technologieën van onder andere Google en Yahoo! om tot echte bedrijfstoepassingen. Microsoft breidde SaaS uit met webdiensten en Amazon moderniseerde zijn datacentra. Door deze spelers kende cloud computing een sterke toename.
In 2005 kwam Amazon op de markt met zijn webdiensten en in 2007 begonnen Google, IBM en enkele universiteiten met onderzoeksprojecten om informaticastudenten te trainen in de complexe techniek van cloud computing. Belangrijke aanjager van het succes van cloud computing is de mogelijkheid om de serveromgeving te virtualiseren. Het succes van cloud computing loopt dan ook synchroon met dat van virtualisatie, zoals geleverd door partijen als VMware, VirtualBox, Microsoft en Citrix.
In de eerste decennia van de computer werd gewerkt met mainframes (server) en terminals (clients). Men gaat met cloud computing terug naar dit concept met als grote verschil dat er geen centraal mainframe meer wordt gebruikt maar een gedistribueerd serverfarm.
Architectuur
De servers bieden verschillende niveaus van virtualisatie voor hun diensten. Deze zijn beschikbaar via het internet op elke computer die de clientsoftware (meestal een webbrowser) heeft.
De client is de computerhardware en/of -software van de gebruiker die verbinding maakt met de server en de gebruiker in staat stelt gebruik te maken van de dienstverlening (de software op de server).
Cloudapplicaties: software as a service (SaaS)
Bij software as a service (SaaS) biedt de dienstaanbieder eindapplicaties aan “via de cloud”. Deze applicaties kunnen van allerlei soort zijn, bijvoorbeeld e-mail, klantenbeheer, personeelsbeheer, video-applicaties enz. De dienstaanbieder heeft de volledige controle over de applicaties, maar de klant of een derde partij die het beheer uitvoert voor de klant, kan in veel gevallen wel de applicatie configureren en functioneel beheren. In veel gevallen zijn de SaaS-applicaties te gebruiken via een webbrowser op een computer. Hierbij wordt er doorgaans gebruikgemaakt van moderne technologieën zoals Ajax en HTML5 om een interactieve functionaliteit te verkrijgen die vergelijkbaar is of beter is dan die van traditionele client-software. Veel SaaS-applicaties werken ook met mobiele apparaten zoals smartphones en tabletcomputers. Ook is er soms een specifiek stuk client-software vereist en/of is de applicatie te gebruiken via een technische interface (API).
Cloudplatforms: platform as a service (PaaS)
De PaaS-laag biedt een aantal diensten bovenop de infrastructuur welke het SaaS-aanbieders mogelijk maken hun toepassingen op een gestructureerde en geïntegreerde wijze aan te bieden. Voorbeelden van diensten in deze laag zijn toegangsbeheer, identiteitenbeheer, portaalfunctionaliteiten en integratiefaciliteiten.
De klant van PaaS-diensten is een professionele, technische partij die voor het uitoefenen van zijn rol dan ook de nodige vrijheidsgraden moet hebben, binnen vastgelegde grenzen. In dit systeem wordt het framework en de infrastructuur beheerd door de dienstverlener en kan de gebruiker verder instaan voor de applicaties. Er is dikwijls ook sprake van faciliteiten voor de ontwikkeling. Hier wordt vaak gewerkt met een ontwikkelingstaal of framework zoals Python, .NET of Java waarin men functionaliteiten kan definiëren.
Cloud Infrastructure: infrastructure as a service (IaaS)
In deze laag wordt de infrastructuur aangeboden via een virtualisatie of hardware-integratie. In deze laag vindt men de servers, netwerken, opslagcapaciteit en andere infrastructuur. Dit laat de gebruiker volledige vrijheid toe over de hardware. Hier is dus ook kennis nodig over de drie lagen en het onderhoud ervan. De cloudserver kan dan ook worden bediend vanaf een externe locatie door meerdere personen.
Publiek
In de traditionele zin van cloud computing werkt men publiek of extern. De software en data staan dan volledig op de servers van de externe dienstverlener en er wordt een generieke (voor alle afnemers gelijke) functionaliteit geleverd.
Privaat
Met private ‘cloud’ werkt men op een (virtueel) private ICT-infrastructuur. In deze wolk heeft de gebruiker volledige controle over data, beveiliging en kwaliteit van de dienst. De applicaties die via de Private Cloud beschikbaar worden gemaakt, maken gebruik van gedeelde infrastructuurcomponenten die worden ingezet voor meerdere afnemers, maar worden zelf niet gedeeld met andere klanten. De verantwoordelijkheid voor het onderhouden van de private cloud ligt bij een professionele leverancier van ICT-diensten. De fysieke locatie van de infrastructuurcomponenten kan zowel de cloud-leverancier als de klant zelf zijn.
Hybride
Als meerdere interne en/of externe wolken samen worden gebruikt wordt er gesproken van een hybride wolk.