Een clouddienst is een it-dienst die ergens op het internet draait. Zowel de benodigde servercapaciteit als de data bevinden zich dus buiten uw bedrijf. Dat hoeft zelfs niet op eenzelfde locatie te zijn. Waar wat draait interesseert u dan ook niet. Het gaat om de dienst die aangeboden wordt en de daaraan verbonden sla's (service level agreements). Alleen dat is belangrijk.
...

Een clouddienst is een it-dienst die ergens op het internet draait. Zowel de benodigde servercapaciteit als de data bevinden zich dus buiten uw bedrijf. Dat hoeft zelfs niet op eenzelfde locatie te zijn. Waar wat draait interesseert u dan ook niet. Het gaat om de dienst die aangeboden wordt en de daaraan verbonden sla's (service level agreements). Alleen dat is belangrijk. Als u clouddiensten gebruikt, bent u afhankelijk van de uitbater(s) van die diensten. Zeker als die clouddiensten van cruciaal belang zijn voor het bedrijf, staat of valt alles met de betrouwbaarheid en stabiliteit van de uitbestede diensten. Het is dus van essentieel belang voor- en nadelen tegenover elkaar af te wegen. Kostprijs, prestaties, stabiliteit, betrouwbaarheid: het speelt allemaal een rol. Het grootste voordeel bij een clouddienst is dat u die niet zelf meer moet draaien of onderhouden. En u hoeft die ook niet zelf te beveiligen tegen onbevoegden of tegen misbruik. Dat bespaart geld. Keerzijde van de medaille is dat u een abonnement moet betalen om van de dienst te mogen gebruik maken. Een ander voordeel kan te maken hebben met reikwijdte van de beschikbaarheid. De dienst kan in al uw filialen tegelijk beschikbaar zijn. Of wereldwijd, waar uw medewerkers ook naartoe gereisd zijn. Als ze een internetaansluiting hebben, kunnen ze aan de dienst. Het grootste nadeel is dat u controle uit handen geeft. U hebt geen beheerderbevoegdheid over de applicaties en dus ook niet over upgrades, beveiliging, data-opslag en back-ups, toegankelijkheid en noem maar op. Zo'n uitbesteding vergt dus een groot vertrouwen van uw kant. Ook inzake verantwoordelijkheid. Wie is er verantwoordelijk als de cloud een probleem vertoont? Uzelf of de dienstuitbater? Dat moet contractueel vastgelegd worden. Als u kritische bedrijfsprocessen via uitbestede diensten laat lopen, is ook uw bedrijfsinternetverbinding van het grootste belang. Uitval betekent immers dat alle door u gebruikte uitbestede diensten allemaal tegelijk weg zijn. Het is dus absoluut essentieel dat u redun-dantie inbouwt via meervoudige internetverbindingen die met verschillende technologieën werken. Als de clouddienst specifieke applicatiesoftware aanbiedt zonder dat u die software op uw eigen systemen moet installeren, dan spreken we over een applicatieclouddienst. Het meest bekende voorbeeld van zo'n applicatieclouddienst is waarschijnlijk webhosting. Salesforce biedt echter een databaseclouddienst aan onder de toepasselijke naam database.com. Zelf gebruikt het bedrijf die database ook voor zijn bekende crm-clouddienst. Salesforce is overigens niet het enige bedrijf dat zijn database als een applicatieclouddienst ter beschikking stelt. Amazon en Oracle doen hetzelfde. Maar hier behandelen we dus Database.com van Salesforce. De Salesforce database gebruikt u zoals elke database, met een eigen ondervraagtaal en api. Salesforce gebruikt wel een sql-type database, maar gehoorzaamt de sql-standaard niet volledig. Daardoor kunt u geen bestaande sql-scripts gebruiken, maar moeten die noodzakelijkerwijze aangepast worden. Omdat alles met xml (eXtensible Markup Language) werkt, ondersteunt database.com bekende protocollen zoals Rest (Representational State Transfer), Soap, oAuth en Saml (Security Assertion Markup Language). Er zijn api's beschikbaar voor zowat alle bekende omgevingen, inclusief. Net en php. Het is probleemloos bruikbaar vanuit andere clouddiensten en applicaties, waaronder Amazon EC2, Google AppEngine, VMforce (Java) en Salesforces eigen ontwikkelingsplatform Force.com. Behalve de eigenlijke databasedienst voorziet Salesforce niets extra, maar er zijn wel allerlei producten en diensten van derden beschikbaar. Zo voorziet Jinfonet met JReport een complete rapportagedienst die samenwerkt met database.com. En Informatica zorgt voor een Data Loader waarmee u bestaande data snel kunt overzetten naar database.com. Er is geen op voorhand vastgelegde beperking inzake prestaties, opslaghoeveelheid, trafiek en aantal gebruikers. U kunt gratis beginnen. Pas vanaf 100.000 records, 50.000 transacties per maand (inserts niet meegerekend) en drie bedrijfsgebruikers betaalt u een maandelijkse vergoeding per gebruiker. Als u een degelijke identiteitscontrole met behoorlijke authenticatie en beveiliging op het niveau van databaserijen wenst, moet u ook betalen. Salesforce claimt dat dezelfde clouddienst door hun eigen crm-dienst en alle andere klanten gebruikt wordt. Dat zijn overigens meer dan 87.000 klanten volgens Salesforce. Er is een webbeheer voorzien waarmee u uw databases kunt zien en beheren. De webinterface toont bovendien een dashboard met statusgrafieken zodat u in een oogopslag kunt nagaan of alles prima draait. U kunt doorgraven in databases tot op het recordniveau en verbindingen zien en leggen tussen records, allemaal via die webinterface. De structuur van uw database wordt geschematiseerd voorgesteld en dat maakt het wel overzichtelijk en gemakkelijker, zelfs voor een niet zo ervaren databasebeheerder. Database.com biedt de mogelijkheid om vrij krachtige en zelfs omvangrijke databases als een clouddienst beschikbaar te hebben. Tijdens onze informele test van de dienst waren we tevreden over de snelheid van data-aanmaak, -wijziging, en -ondervraging. Maar hierbij spelen zoveel variabelen een rol dat het moeilijk is echte uitspraken over de prestaties te doen. Vermoedelijk is het aanbod van infrastructuurclouddiensten tegenwoordig vrijwel even groot als dat van applicatieclouddiensten. Dat je een infrastructuur als een dienst kunt aanbieden, werd natuurlijk pas volop mogelijk met de opkomst van virtualisatie en specifiek hypervisors. In plaats van dat u zelf een server koopt, installeert, configureert en in gebruik neemt, koopt u de overeenkomstige systeembronnen als een dienst via een abonnement bij een infrastructuurdienstenleverancier. De meest eenvoudige vorm daarvan is de vps of virtual private server. Bij een vps is er een één-op-éénrelatie tussen de dienst en een welbepaalde gehoste server. Bij een IaaS (Infrastructure as a Service) is dat van elkaar losgekoppeld. U specificeert alleen welke systeembronnen u nodig hebt en u laat het aan de provider over hoeveel servers, cpu's en andere hardware dat dan wel vereist. Niettemin zien we sommige IaaS-leveranciers toch werken met het servermodel en moet u de aanwezige resources verdelen over aan te maken servers, waarschijnlijk omdat die leveranciers vinden dat het zo overzichtelijker en beter begrijpbaar blijft voor hun gemiddelde klant. Een ideaal IaaS-aanbod is juist niet toegespitst op servers, maar laat u betalen voor de systeembronnen die u consumeert. Die zijn meestal onderverdeeld in cpu-kracht (doorgaans opgegeven als een cpu-frequentie en aantal cpu's), geheugen, opslagruimte en netwerkverkeer. Dat klinkt nog allemaal erg hardwareachtig, maar zegt niet over hoeveel en welke servers dit verdeeld is. U abonneert zich dus op het verbruik van virtuele hardwarebronnen of met andere woorden een gehoste infrastructuur of infra-structuurclouddienst. De meest bekende infrastructuurclouddienst is waarschijnlijk het aanbod van Terremark, een onderdeel van Verizon met ook een vestiging in België. Het concept van Terremark is, dat u zoveel servers kunt aanmaken en gebruiken als u maar wenst, u betaalt alleen voor de capaciteit die u werkelijk verbruikt. In feite is dat laatste niet helemaal correct (al zouden we dat wel graag toegepast zien), maar kiest u de resources die u nodig hebt en betaalt u dus daarvoor, ook al zou u ze niet volledig opgebruiken. Daar waar vps-aanbieders u een virtuele server verhuren, verhuurt Terremark u een resourcepool. Omdat u uw eigen resourcepool (letterlijk een bronnenbundel) volledig kunt beheren, kunt u zelf beslissen welke resources elke virtuele server toegewezen krijgt en u kunt die parametrisering ook altijd veranderen. Als u meer resources nodig hebt dan uw resourcepool beschikbaar heeft, dan biedt Terremark daar twee mogelijke oplossingen voor. Voor permanent meer resources kunt u gewoon een grotere capaciteit aanvragen en huren. Die extra capaciteit komt dan bij uw resourcepool en u kunt die naar wens verdelen onder uw virtuele servers. Terremark biedt u echter ook een tijdelijke resourcestijging aan. Dat is bedoeld voor verbruikspieken: situaties waarbij een of meer virtuele servers plots veel meer resources (meestal cpu en/of geheugen) nodig hebben dan oorspronkelijk begroot. Deze tijdelijke resourcestijging heet dan ook een resourceburst. Doordat de klanten van Terremark capaciteit begroten en dan huren, is er een grote waarschijnlijkheid dat daar capaciteit van over blijft en dus niet benut wordt. Terremark verzamelt deze overschotten en gebruikt dat om hun klanten resourceburst toe te kennen. Deze resourcebursts zijn weliswaar extra te betalen, maar u betaalt ze in feite alleen maar van zodra en voor zolang als u ze gebruikt. Als het geregeld nodig zou zijn, overweegt u uiteraard beter om permanent meer resources in uw pool aan te kopen. U kunt in uw resourcepool zelf configureren of bursts wenselijk zijn en hoeveel extra resources u in nood zou willen verbruiken. Terremark werkt zoals de meeste clouddiensten met een webbeheer. Dat heet Infinicenter. Er kunnen voor een account meerdere virtuele infrastructuren bestaan. Een virtuele infrastructuur heet een omgeving en bestaat uit resources, servers en netwerken. Binnen een omgeving kunt u de servers onderverdelen in rijen en groepen. U kunt servers verplaatsen van een rij naar een andere, of van een groep naar een andere. Er zijn sjablonen om snel servers aan te maken met de meest populaire besturingssystemen waaronder uiteraard Windows en Linux. U zorgt zelf voor de nodige OS-licenties. Zodra u een server aanmaakt, toont de configuratiewizard een boodschap die vraagt of u begrijpt dat u gefactureerd zult worden voor alle gebruikte resources en licenties. Het webbeheer toont alle kosten die aan een bepaalde configuratie verbonden zijn voordat u de configuratie voltooit en activeert. De configuratiewizard vraagt welk besturingssysteem u wenst, welke resources en welke netwerkinstellingen. Daarna kan de virtuele infrastructuur uitgerold worden en kunt u kiezen of die meteen gestart moet worden of niet. Bij het netwerkbeheer in de webinterface kunt u meer dan alleen netwerkinstellingen vastleggen: u kunt alle internetprotocollen en bijbehorende beveiligingsinstellingen definiëren. De onderverdeling in rijen en groepen van de resourcepool zou u ook kunnen gebruiken om bij elkaar horende servers of diensten te groeperen. Voor de meer low-level beheertoegang heeft Terremark een vlan voorzien met vnc-toegang voor elke virtuele server. Daarmee kunt u alles doen wat u met een vps ook kunt. Infinicenter heeft rijkelijk uitgewerkte dashboards en rapportageopties. Op die dashboards ziet u realtime-grafieken over het resourceverbruik versus wat u aankocht. Trends worden ook aangegeven, zodat u tijdig ziet of u eventueel meer resources nodig gaat hebben. Met burstgebruik houdt het systeem hierbij ook rekening en u kunt naar meer details doorgraven om zo opslag-, geheugen- en processortrends op te vragen. Ook historieken zijn mogelijk, waarbij u dan vooruit en achteruit in de tijd kunt rollen om een goed overzicht te krijgen van pieken en dalen in het resourceverbruik. Sinds kort heeft Terremark overigens ook een beveiligd nap (Network Access Point) in Amsterdam-Schiphol. Dat krikt de netwerkprestaties voor lokale klanten nog wat op. Het idee om resources in plaats van servers te huren is zo logisch, dat we ons afvragen waarom niet meer hosters hierop gekomen zijn. Het is enorm flexibel. Terremark biedt een volledig beheerd systeem, zodat u nooit aan uw lot overgelaten wordt. U kunt een demo aanvragen om zelf een en ander uit te proberen. Het is wel een stuk duurder dan een vergelijkbare vps en dat zouden we toch graag anders zien. Platformclouddiensten of 'Platform as a Service' (kortweg PaaS) bestaat uit een volledig computerplatform dat u bepaalde diensten verstrekt. U ziet en gebruikt dus geen losse servers. Infrastructuurclouddiensten werken in tegenstelling hiermee wel met losse servers, al zijn die ook flexibel aan te maken en te beheren. In feite zou u het kunnen vergelijken met webhosting versus een vps. Bij het eerste ziet u ook alleen de webdienst en hebt u niks te maken met de onderliggende servers, terwijl u bij het tweede normaal ook de onderliggende server beheert. Een platformclouddienst is dus ook geschikt voor wie alleen in de diensten geïnteresseerd is en niets wil weten van de onderliggende infrastructuur voor die diensten. Voor zover wij weten, is Microsoft de enige aanbieder van een platformclouddienst. De rest van de wereld biedt infrastructuurclouddiensten aan. De platformclouddienst van Microsoft heet Azure. Dat hebben we een jaar geleden al eens uitgebreid besproken in Data News (nr. 13 van 2010), dus gaan we het nu wat korter houden. Het idee achter Azure is eenvoudig. U wenst it-diensten op het internet of in uw bedrijf aan te bieden. Waarom zou u dan complete servers kopen of huren als die misschien niet eens ten volle benut worden? Het is toch veel logischer alleen te betalen voor de dienst en wel in de mate dat u er gebruik van maakt? Hiermee hebben we Microsoft Azure gedefinieerd. U betaalt voor verbruikte capaciteit bij de uitbating van een dienst. Voor het gemak kunt u Microsoft Azure beschouwen als een online dienstencentrum. U abonneert zich op Azure en dan kunt u diensten en applicaties aanmaken en starten. Zoals eerder aangehaald, betaalt u dan alleen voor de capaciteit en resources die u verbruikt. Dat biedt u de hoogste vorm van flexibiliteit. Een aangemaakte dienst in de testfase zonder klanten kost u dus ook niks of vrijwel niks. Pas als de dienst effectief draait en dus capaciteit verbruikt, begint u te betalen. Is de dienst veel succesvoller dan u verwacht had, dan moet u dus geen extra capaciteit bij Microsoft gaan aanvragen. Nee, dat wordt allemaal flexibel en in real-time toegekend of weer weggenomen en u komt dus nooit tekort en hebt ook nooit een ongebruikt overschot. Diensten staan niet los van een onderliggend platform. Afhankelijk van wat u precies wenst, biedt Microsoft u binnen Azure vier verschillende clouddiensten aan. Windows Azure komt overeen met een gehoste Windows Server waarin u Windows-internetdiensten kunt uploaden en starten. SQL Azure komt overeen met een gehoste SQL Server waarin u databases kunt aanmaken en gebruiken. Azure AppFabric is voor ontwikkelaars, om Azure-applicaties en diensten mee te ontwerpen. Het verbindt ook privé- en publieke-clouddiensten met elkaar. System Center Azure ten slotte biedt bewakings- en beheergereedschappen voor alle diensten binnen Azure. Microsoft zelf verdeelt Azure verder nog op in platformdiensten (SQL Azure, Windows Azure AppFabric, Live Services, SharePoint Services en Dynamics CRM Services), softwarediensten (Exchange Online, SharePoint Online, Office Communications Online en Dynamics CRM Online) en applicatiediensten (Bing, Windows Live, Office Live, Microsoft HealthVault, Microsoft Advertising en XBox Live). U merkt dat er op deze manier plots heel weinig verschil te merken is tussen platform-, infrastructuur- en applicatieclouddiensten. Azure dekt wel zo'n beetje alles, zo lang het tenminste over Windows gaat. U begint met een abonnement op Microsoft Azure; op de site vindt u overigens een calculator waarmee u richtprijzen kunt berekenen afhankelijk van de platformdiensten die u afneemt. Binnen uw account kunt u dan een Azure-dienst of -site creëren. Daarbij moet u het soort dienst opgeven. In dat geval betekent "webdiensten" overigens alleen IIS. Wenst u Apache te gebruiken, dan kan dat, maar dan moet u een "worker role" gebruiken en niet "web role". Wij kozen voor een webrol-instantie. Die vult u in met behulp van de gebruikelijke Microsoft-ontwikkelingsomgevingen, bijvoorbeeld Visual Studio. Een 'hello world'-website was binnen een minuutje klaar en kon vanuit Visual Studio direct naar Azure geüpload worden. Daarna moesten we alleen nog onze website starten en konden we er direct aan vanaf eender welke browser. Een web- of werkerrolinstantie draait in zijn eigen vm en die worden gerepliceerd naar behoefte. Zo kan Microsoft u binnen Azure vrijwel onbeperkt schaalbare resources bieden. Azure controleert dat alles met een "fabric controller"; die bepaalt voor elke instantie de vm-specificaties en de opslagparameters en kan die naar behoefte doen aangroeien of krimpen. De hele opzet blijkt wel degelijk Windows-centrisch. Hoewel Microsoft tegen ons zei dat het op termijn mogelijk moet worden ook Linux-servers binnen Azure te integreren, is dat momenteel nog niet het geval. Standaard biedt Azure dus alleen Windows-servers die u kunt gaan invullen met diensten. Ook hier is het weer erg specifiek gericht naar de eigen producten van Microsoft. Dat heeft natuurlijk gevolgen voor de parametrisering en de granularisering van het resourceverbruik. Ook voor het in gebruik nemen van de diensten hebt u de software van Microsoft nodig. De Azure-clouddiensten zijn vooral interessant voor bedrijven die erg Microsoft- en Windows-centrisch werkt met volle ondersteuning van. NET en de Microsoft-variant van SQL. Johan ZwiekhorstHoewel Microsoft tegen ons zei dat het op termijn mogelijk moet worden ook Linux-servers binnen Azure te integreren, is dat momenteel nog niet het geval.