Software op abonnementsbasis neemt momenteel een enorme vlucht en onderlinge integratie neemt werkbare vormen aan. Bij het oprichten van een nieuw bedrijf is het een reële mogelijkheid geworden om dit zonder eigen servers te doen. Sterker nog, ik denk dat er in veel gevallen helemaal geen server meer nodig is. Klinkt radicaal? Misschien wel, maar dat maakt het niet minder waar.
Het klinkt als een cliché vergelijking, toch pak ik hem weer op: stroom. Stroom is iets wat je afneemt en betaald naar gebruik. Van stroom zijn we behoorlijk afhankelijk en als een graafmachine de kabels kapot harkt doet niets het meer. Welk bedrijf heeft nog een eigen generator om stroom op te wekken? Juist, geen enkel bedrijf meer op een paar zeer uitzonderlijke gevallen na zoals een ziekenhuis. Gelukkig vertrouwen we op stroom en wordt er keihard aan gewerkt om je weer van stroom te voorzien. Zo is het ook met grote bedrijf die software aanbieden over het internet. Er kan altijd een ramp gebeuren, maar dit niet oplossen hoort niet bij de mogelijkheden.
Die generator om stroom op te wekken kun je vergelijken met een server. Ergens moet er nog wel een generator zijn om stroom op te wekken, maar je ziet hem niet meer. Het is voor het gebruik niet meer relevant geworden.
Terug naar de server. En de cloud. Cloud computing is helemaal niet relevant voor een afnemer van een software abonnement. Het is hooguit interessant voor het bedrijf dat de software maakt. Dus vergeet cloud computing.
Vanuit het perspectief van de software leverancier is het installeren van een server iets wat snel zal verdwijnen. Zeker in een tijd van cloud computing zijn alle servers sowieso al virtueel. En virtuele servers installeer je niet, het zijn gewoon files die door een stukje techniek zich voordoen als een server. Met een serverimage factory houd je virtuele servers up-to-date. AOL heeft een onbemand datacenter welke een virtuele server binnen 60 seconde productieklaar kan maken. Dat is iets anders dan een server bestellen en met de hand installeren.
Maar zelfs als softwaremaker wil je helemaal niet meer bezig zijn met een server. Je wilt code deployen op een platform. Dat het platform op servers draait zie je als ontwikkelaar niet. Het beheren van dit platform gaat gewoon met een management console die functioneert in een browser. Ook de database kan gewoon draaien op een platform en geldt hetzelfde voor.
Net als de generator is een server een generiek product geworden waar je eigenlijk niet meer individueel naar hoeft te kijken. Een server is nog steeds een complex stukje ijzer, maar het beheer is grotendeels versimpeld door verregaande automatisering. Automatisering bestaat uit laagjes en hoe beter de lagen op laag niveau geautomatiseerd zijn hoe minder er naar omgekeken hoeft te worden.
Traditioneel doet een server van alles. Het hosten van files, aannemen van connecties en het uitvoeren van code. Waar het in een virtueel scenario om draait is dat een server CPU kracht levert om code uit te voeren met vluchtig geheugen (RAM) . De specifieke files van bijvoorbeeld de applicatie staan niet op de server maar op virtuele harde schijven (niet vluchtig geheugen). Wil je meer kracht? Dan schakel je virtuele servers bij. Gaat er één stuk? Dan switch een deel van de verwerkingskracht naar andere virtuele servers.
In de definities van cloud computing wordt vaak het piramide model gebruikt van SaaS, Paas en Iaas (afkortingen voor Software as a Service, Platform as a service en Infrastructure as a service). Als automatisering moderniseert zal de IaaS laag steeds minder zichtbaar worden en op termijn misschien zelfs verdwijnen. Je wilt geen servers, je wilt software!
Virtuele servers draaien op fysieke servers. Dat is onvermijdelijk. De titel van dit artikel zou dus eigenlijk moeten zijn; “De server verdwijnt uit het zicht…..”, maar dat klinkt al veel minder radicaal.