René Løhde har været hos Microsoft i 4 år og fungerer som IT-arkitektur-evangelist for generel Microsoft platformsadoption hos kunder og partnere. René bruger det meste af sin tid på at tale om nye teknologier og arkitekturparadigmer, som har aktuel interesse for IT-arkitekter.
PaaS er det vigtigste
Som ansvarlig for Windows Azure Platform hos Microsoft i Danmark bliver jeg dagligt konfronteret med spørgsmål, meningstilkendegivelser og subjektive vurdering af Cloud Computing. I denne lille kronik deler jeg mange af de tanker, jeg har haft omkring cloud computing i de sidste 6 måneder af 2009 og, som jeg personligt mener vil komme til at berøre manges arbejde i 2010.
Software + Services
Hos Microsoft har vi talt meget om Software + Services (S+S). Vi har faktisk en helt strategi centreret omkring S+S, det har været vores bidrag til Cloud Computing ordbogen. Et af de første brede succeser med Cloud Computing initiativer var Salesforce.com. Salesforce er et online CRM system. Et kendt salgsslogan for Salesforce var ”No software”, fordi CRM’et kørte fra en server, og klienten var en web applikation i browseren. Det viste sig over tid, at Salesforce-kunder begyndte at efterspørge en klient applikation til en asynkron kommunikation med Salesforce.com, når de f.eks. var offline i kundemøder. Så Salesforce gik fra at have; ”No Software” + en service i deres datacenter, til at lave et lille stykke software på klienten kombineret med en service i ”skyen”.
Salesforce er et S+S eksempel med en lille klient og en stor service. Hvis man kigger på Windows operativsystemet, så er denne også et udtryk for S+S. I tilfældet Windows er klienten meget stor mens servicen – Windows update – er relativt lille. S+S visionen er også terminal uafhængig. F.eks. bruger spil lavet til Microsofts Xbox (Software) Xbox live servicen i skyen, iPhone + iPhone App Store, o.m.a.
S+S er en relativit simpel model at kommunikere, lidt sværere er det med Cloud Computing, men Cloud Computing danner grundlag for en semantik, som er bredt adopteret i markedet og derfor er det noget de fleste er nødt til at stifte bekendskab med. En fælles semantik er vokset frem, den såkaldte ”...as-a-Service”-beskrivelse af software varianter hosted i store datacentre rundt om i verden.
XaaS
Det fleste organisationer er blev eksponeret for ”Software as a Service” (SaaS), ”Platform as a Service” (PaaS) og ”Infratructure as a Service” (IaaS) f.eks gennem analysehusene, konsulenter eller software leverandørerne. Der er flere varianter af disse, men basalt set er det udfra disse 3 termer at de fleste samtaler om Cloud Computing kan drives.
Det er min erfaring at SaaS, PaaS og IaaS giver rum for fortolkning. Det vil med andre ord sige, at jeg i mine samtaler oplever at f.eks IaaS tillægges forskellige betydninger, afhængig af, hvem man taler med. Hos nogle er ”Infrastruktur” synonymt med den fulde virtualisering af operativsystem (som det f. eks. udbydes hos Amazon Web Service EC2), mens det hos andre f. eks. kan være deres identitetssystem, som er infrastruktur, og at de derfor anser Identitets håndtering i skyen som en del af IaaS.
Jeg ser IaaS som den del af Cloud Computing, som giver mig operativsystem lignende egenskaber. Det vil sige at det kan være den fulde virtualisering, men det kan også ”bare” være et operativsystem for enden af et RPC call.
I modsætning til IaaS er der større fælles forståelse for hvad SaaS er. SaaS er traditionel ”boxed” software, som kan køres i eget datacenter, hosted eller hosted som cloud. For SaaS gælder det, at software som Email, CRM, ERP el. lign. kan tilkøbes som service efter en ”pay-as-you-go” og ”pay-as-you-grow” model.
Nogle steder oplever jeg, at SaaS er blevet synonym med Cloud Computing. Det gør sig specielt gældende i online og skriftlige IT medier. Dette ud fra devicen, at det er nemmere at kommunikere Cloud Computing som ”software som I kender det”, nu bare solgt via internettet”.
PaaS
Den første hype af Cloud Computing har været omkring SaaS – ”køb dit software for enden af din fiber, kobber, etc. ”og IaaS – ”få dig et eller flere fuldt virtualiserede operativsystemer i et stort data center og slip for initial investering i hardware”. Når støvet fra den første hype omkring SaaS og IaaS har lagt sig, tror jeg den rigtige gevinst ved Cloud Computing vil tone frem i horisonten og blive den produktive del af skyen. Det er ”Platform as a Service” og den vil vise sig som den mest forretningsmodne af XaaS’erne.
Hvorfor? Fordi PaaS giver mulighed for, at alle virksomheder kan lave SaaS i de store Cloud Computing datacentre. Fordi platformen giver nye muligheder for systemintegratorer og deres kunder til at skalere en eksisterende applikation, som har flaskehalse i UI-laget, forretningslaget eller datalaget. Fordi de egenskaber som PaaS udbyder sætter alle virksomheder i stand til at tilkøbe sig computerkraft, som eller kun har været forbeholdt de helt store virksomheder.
Der er flere årsager, og nogle ville måske sige, at de samme egenskaber kan opnåes med applikationer, som kører på en fuldt virtualiseret IaaS platform. Det er rigtigt, men hvorfor bede om et virtualiseret miljø, med virtuelle harddiske og operativsystemer på en adresse på internettet, når man kan bede om et operativsystem, en database, et directory, en servicebus, en business process motor osv. på en internetadresse. Faktum er, at de fleste, som beder om den fulde virtualiserede OS, ofte gør dette for at kunne installere en platformskomponent, f.eks. en SQL Database på operativsystemet.
Med Platform-as-a-Service får vi det, vi beder om, og det, vi betaler for. Vi slipper for at have de samme server admin rutiner, som patchcing, server overvågning o.m.a. De rutiner har vi, når vi selv hoster eller køber hosting ude i byen eller skyen.
Platform as a Service er det, der adskiller Cloud Computing fra konventionel hosting. Det er det, der giver os muligheden, og kunden netop de fordele, som alt hype omkring Cloud Computing har omtalt. Alle kan være med.
Fik jeg i øvrigt nævnt, at Windows Azure Platform er Microsofts Platform-as-a-Service?
Cloud computing: In concept, it is a paradigm shift whereby details are abstracted from the users who no longer need knowledge of, expertise in, or control over the technology infrastructure “in the cloud” that supports them. It typically involves the provision of dynamically scalable and often virtualized resources as a service over the Internet. The term cloud is used as a metaphor for the Internet, based on how the Internet is depicted in computer network diagrams and is an abstraction of the underlying infrastructure it conceals.
Kilde: wikipedia.org