Als u in de ict werkt en de afgelopen maanden een willekeurige vakpublicatie heeft opengeslagen dan heeft u ongetwijfeld kunnen lezen over een nieuwe trend in ict: 'cloud computing'. Gartner, Forrester en alle andere ict-researchbureaus hebben al vele publicaties uitgebracht waarin de trend geduid wordt als een 'paradigm shift', een verandering dus waardoor alles anders wordt. De impact van cloud computing op de ict in bedrijven wordt ongeveer even groot als de invloed van e-business, zo stelt Gartner.
Een half jaar geleden, net terug van de Microsoft PDC (de belangrijkste conferentie voor Microsoft-ontwikkelaars) schreef ik al een blogpost over het fenomeen cloud computing. Want ook Microsoft gaat zich in deze markt storten, het bouwt wereldwijd nieuwe datacentra en heeft een nieuwe versie van Windows aangekondigd voor cloud computing: Windows Azure. Naast Microsoft zijn er andere spelers die zich richten op deze opkomende markt. Ik noem bedrijven zoals Google, Amazon, SalesForce en 3Tera .
Als u gaat zoeken hoe de bedrijven die ik hiervoor noemde zich richten op de markt voor cloud computing, dan ontstaat een heel divers beeld. Cloud computing is duidelijk een erg jonge en nog niet duidelijk gedefinieerde markt. Verschillende partijen hebben vanuit hun eigen perspectief een visie ontwikkeld op deze markt en hebben producten ontwikkeld die daarop aansluiten. In dit stukje ga ik proberen de verschillende visies naast elkaar te zetten en de verschillende manieren van cloud computing toe te lichten.
Amazon: marktleider en geestelijk vader van cloud computing
Amazon was het eerste echte e-commercebedrijf en heeft de pieken en dalen van het dotcom tijdperk meegemaakt. En Amazon blijkt te kunnen blijven innoveren. Het ging, naast de eigen shop, ook e-commerce sites hosten voor anderen. Daarbij werden ook veel van de technieken die Amazon zelf toepast om zijn reusachtige site te hosten ook ter beschikking gesteld. Van het één kwam het ander: Amazon is nu de leider in de jonge markt van cloud computing.
Amazon Elastic Compute Cloud (EC2) is een dienst voor 'computing resources', geheugen en processorcapaciteit dus. Dit wordt aangeboden in de vorm van 'virtual machine' instanties, die zich gedragen als standaard Intel-gebaseerde computers waarop een operating system en applicaties geïnstalleerd kan worden. De instanties zijn gebaseerd op een Machine Image, dat je zelf kunt ontwikkelen of uit de lijst van Amazon kiezen. Amazon ondersteunt Windows- en Linux-images. Via een beveiligde verbinding kan men inloggen op de machine en deze beheren. Er kunnen applicaties geïnstalleerd worden, via web services kan alles ook geautomatiseerd worden. Als je de machine uitzet, dan is deze weg, inclusief de lokale data.
Dataopslag doe je bij Amazon op Simple Storage Service, ofwel S3. Deze dienst maakt het mogelijk om permanente (disk-)opslagcapaciteit te gebruiken. Het is mogelijk om deze data te spreiden over meerdere Amazon datacenters, waarmee deze data een zeer hoge beschikbaarheid krijgt.
Wij hebben Amazon EC2 zelf getest met Windows. Alles werkt goed, maar Amazon is geen platform voor incidenteel gebruik. EC2 is gericht op webapplicaties op grote schaal, het is goed beveiligd en werkt daardoor wel vrij complex. Ook het kostenmodel is zeer ver uitontwikkeld, je betaalt voor ieder onderdeel afzonderlijk en ook dat maakt dat de kosten vooraf moeilijk voorspelbaar zijn.
Google: App Engine
Een heel andere visie op cloud computing komt van Google. Met de App Engine is het ook mogelijk web applicaties te ontwikkelen die gebruik maken van de infrastructuur en technologie die ontwikkeld is door de aanbieder van deze dienst, in dit geval Google. Google laat gebruikers echter niet inloggen op virtuele of fysieke servers. In plaats daarvan kan de gebruiker van App Engine custom applicaties ontwikkelen in een afgeschermde omgeving. Daarvoor wordt de taal Python gebruikt.
Voor data opslag biedt Google Bigtable, de schaalbare opslag technologie die Google ook gebruikt voor zijn search engine. Relationele data is daarmee niet mogelijk, queries en transacties wel.
Microsoft: Windows Azure
Het Microsoft Azure-platform ligt een beetje tussen Amazon en Google in. Applicaties draaien in een eigen virtuele machine, maar je kunt deze machines niet zelf beheren. Het is alleen mogelijk om applicatiecode te installeren op Azure. Deze wordt in .NET ontwikkeld, met Visual Studio en een Azure SDK. Dit lijkt erg op ‘normale' .NET-ontwikkeling. Azure ondersteunt websites en achtergrondprocessen. Daarnaast is er SQL Server Data Services voor data opslag, en .NET Workflow Services voor asynchrone processen.
SalesForce: Force.com
Nog een stapje hoger in de applicatiearchitectuur zit het cloud platform van SalesForce. Deze leider op CRM Software-as-a-Service (SaaS) heeft zijn applicatieplatform opengesteld voor derden. Dat maakt het mogelijk om businessapplicaties (ERP) met vergelijkbare functionaliteit als SalesForce.com zelf te ontwikkelen. Er zijn op het platform honderden kant-en-klare toepassingen beschikbaar via de 'Application Exchange' en het is ook mogelijk eigen maatwerkapplicaties te maken.
3Tera: iedereen zijn eigen cloud
3Tera is het laatste cloud-model: dit bedrijf ontwikkelt cloud-managementsoftware die als licentie wordt aangeboden. Met deze software is het mogelijk een eigen cloud service te bouwen. De 3Tera software wordt gebruikt door verschillende publieke cloud-aanbieders, maar het is voor grotere bedrijven ook mogelijk een cloud service op te bouwen in het eigen datacenter. In een 3Tera cloud service is het mogelijk om in een browsertoepassing complexe applicatie-infrastructuren te ontwerpen en direct in te schakelen. Vervolgens kunnen bestaande technieken gebruikt worden om de applicatie te ontwikkelen.
Voor- en nadelen
Iedere visie op cloud computing heeft voor- en nadelen. In de tabel probeer ik een overzicht te geven.
|
Amazon |
|
Microsoft |
SalesForce |
3Tera |
Service |
Infrastructuur |
Platform |
Platform |
Software |
Infrastructuur |
Voordelen |
Maximale flexibiliteit; alles kan |
Eenvoudig model, schaalt automatisch, Google beheert alles |
Microsoft beheert OS, dus minder beheer. Flexibel applicatiemodel, erg goede tools |
High-level applicatie support, snelste ontwikkeltijd |
Alles onder eigen beheer (juridich), toch cloud voordelen |
Nadelen |
OS en applicatieheheer vrij complex, helemaal zelf doen |
Beperkt in mogelijkheden voor achtergrond processen, integratie, authenticatie. |
Niet alles mogelijk op de machine. |
Geen ondersteuning voor andersoortige (low-level) applicaties. |
Nog steeds hardware aanschaffen en beheren |
Toepassen voor |
Grote schaal web / eCommerce sites |
Eenvoudige publieke websites |
Complexe web toepassingen met backoffice integratie |
ERP toepassingen |
Cloud oplossingen met juridische randvoorwaarden |
Besparingen |
Redelijk |
Hoog |
Hoog |
Zeer hoog |
Beperkt |
Maarten Sikkema, technisch directeur Macaw
Graag breng ik nog een nieuwkomer onder uw aandacht in de cloud/saas/paas wereld. De opensource leverancier Wavemaker (http://www.wavemaker.com/cloud) heeft een beta draaien (http://cloud.wavemaker.com) van hun onwikkel- en runtime omgeving. Met de ontwikkeltool Wavemaker Visual Ajax Studio kunnen snel en op een visuele wijze Ajax webapplicaties worden ontwikkeld. Onder water wordt gebruik gemaakt van een groot aantal opensource producten zoals Java, Javascript, Dojo, Spring en Hybernate, maar de ontwikkelaar hoeft hier feitelijk geen kennis van te hebben.Ook wordt een groot aantal merken databases ondersteund waaronder Mysql, Postgress, Sqlserver, Oracle en Db2.
Door de Studio wordt een standaard WAR file gegenereerd die naar diverse applicatieservers (Tomcat, Jboss, Weblogic,Websphere) kan worden deployed. Voor grootschalig gebruik kan een applicatie ook op Amazon’s EC2 gehost worden waardoor maximale schaalbaarheid wordt gewaarborgd.
Het interessante is dat deze applicaties via een eigen datacenter of via de “cloud” aangeboden kunnen worden. Met dit product wordt dus zowel een vendor lock-in m.b.t. de ontwikkel als de runtime omgeving voorkomen.
Ik heb veel gelezen over cloud computing de laatste tijd, en lees voor en nadelen, echter nergens maakt er iemand zich druk over nadelen dat je niet weet wat er met je bestanden gebeurt. In hoeverre wordt het voor reclame-doeleinden gebruikt. Kan de overheid/belasting dienst ze ook inkijken? Wat gebeurt er als een data center falliet gaat? Zijn je bestanden dan nog wel van jou of verkoopt de curator de server al dan niet met data aan de hoogste bieder?
Op dit moment zeg ik NO WAY dat ik het ooit zal gebruiken, maar gezien het aantal mensen wat gmail en hotmail gebruikt en er niet mee zitten wat die bedrijven daar mee doen, zal het wel gemeengoed gaan worden, en ergen nog komt er misschien een moment dat het niet eens meer anders kan.