Ik kan mij er niet aan ontrekken dat zo'n beetje iedereen die ook maar iets in de ict in de pap te brokkelen heeft, het over virtualisatie heeft. Het lijkt de Haarlemmerolie van de 21e eeuw. Als je maar virtualiseert, zit je goed, zo lijkt het credo. In de praktijk blijkt de vork vaak anders in de steel te zitten. Virtualiseren is slechts één van de middelen of methodieken om iets te bereiken! In veel gesprekken met zowel experts als nieuwkomers lijkt dat gegeven echter zeer ver te zoeken.
Je kunt geen projectmanager in de ict vinden die niet met 'een virtualisatieproject' bezig is. Er is geen ict-bedrijf meer te vinden dat zich niet bezighoudt met 'virtualisatie'. Er is zelfs geen computerblad dat niet een virtualisatiespecial heeft, of daar een speciaal katern aan wijdt. Waarvan akte.
Nou begrijp ik als geen ander dat 'virtualisatie' inmiddels tot een verzamelterm is gemuteerd. Het gaat gelukkig lang niet altijd meer over het sec virtualiseren van een bepaalde laag of een proces. Virtualisatie is de verzamelterm geworden voor zoiets als:
Alles opknippen in gestandaardiseerd te verbinden modules, die onderling zo flexibel mogelijk ten op zichte van elkaar als entiteit kunnen functioneren.
Dat impliceert een boel, maar feitelijk komt het hier wél op neer. Dat betekent dat virtualisatie op zich (als methodiek) helemaal niet op zichzelf staat en misschien wel helemaal niet de belangrijkste of zelfs de beste methodiek is om een modulaire omgeving te maken. Je kunt bovenstaande bewering immers ook op hele andere manieren bereiken. Feitelijk voldoet bijvoorbeeld Lego hier ook aan. Het enige verschil is dat de modules van Lego wat minder complex zijn en dat daarmee de modules zelf ook wat minder kostbaar zijn. Uiteraard hangt er bij een Lego-module ook geen heel bedrijfsproces aan vast.
De essentie zit hem daar wel in. Waarom is Lego zo groot geworden? Omdat ze zich een zeer strenge standaard hebben aangemeten die ondanks de daaraan verbonden productiekosten wél voor robuuste bouwblokken zorgden. Ze garandeerden daarmee bovendien voor de uiteindelijke stapelaar dat het bouwwerk solide in elkaar zou steken en als samenhangend geheel voor speelgoed door kon gaan. Als je wilt weten welke standaardisatienormen ze zichzelf hebben opgelegd, dan kun je op Lego – Wikipedia onder het kopje Kwaliteit er alles over lezen.
Het klinkt wellicht wat kinderachtig om naar het speelgoed ‘Lego’ te verwijzen bij een serieuze vaktitel als Computable. Toch denk ik dat het ogen kan openen als we ons eens wat vaker verdiepten in het hoe en waarom van het succes van Lego en de parallellen die er zijn met onze ict-legostenen. Wij als ‘virtualisatie-ict’ers’ zijn feitelijk met twee totaal verschillende dingen bezig: we zijn blokjes aan het maken/verzinnen/creëren/aanpassen en tegelijkertijd aan het stapelen.
Als je het zo snel even zegt, heb je gelijk door dat dat eigenlijk helemaal niet praktisch is om tegelijkertijd te doen! Het is veel beter om eerst de blokjes af te hebben voor je ze aan elkaar knoopt en dan moet je het nog eens zijn over de manier waarop je de blokjes aan elkaar knoopt en hoe ze op elkaar moeten passen. Welke marges hanteer je daar dan bij en zijn die marges in elke richting even belangrijk? Welk eindresultaat dienen die blokjes bij elkaar dan en wat is het stappenplan daar naartoe? Lego maakt duidelijke stap voor stap instructie- of stapelboekjes. Wij ook? Om het dan helemaal ingewikkeld te maken accepteren wij het ook nog dat er mensen zonder onderlinge afspraken onderdelen binnen een bouwsteen veranderen en aanpassen die de standaardisatie aan de buitenkant van die module teniet doen.
Concluderend zijn er feitelijk maar drie dingen waar je je mee bezig zou moeten houden: het maken en onderhouden van een standaard, het creëren van modules die voldoen aan die standaard en het verzinnen en uitvoeren van een stapelplan als je een bepaald doel wilt bereiken met de modules. Virtualiseren is hier zeer ondergeschikt aan. Dat is namelijk slechts één van de methodieken die je zou kunnen toepassen om een standaard te creëren. Het is slechts één van de methodieken die je zou kunnen gebruiken om bijvoorbeeld van je fysieke servers of van applicaties ‘losse’ modules te maken.
Ik wil dan ook af van ‘virtualisatie’ als verzamelterm! Het verwart en vervuilt de discussies. Het laat het voor de klant veel (te) mooi(er) lijken dan het is. Bovenal leidt het af van hetgeen waar we eigenlijk naar streven: standaardisatie en modularisatie! Met welke gereedschappen of methodieken je dat voor elkaar krijgt is voor het uiteindelijke resultaat totaal niet relevant.
Volgens mij slaat de schrijfer hier de plank behoorlijk mis. Door virtualisatie te omschrijven als ” gestandaardiseerd te verbinden modules” krijg ik het idee dat de schrijver met zijn stuk SOA en/of webservices/mashups bedoelt en per ongeluk in de verkeerde rubriek is terecht gekomen.
Virtualisatie is naar mijn mening het boven op de fysieke laag plaatsen van een stuk software waardoor er optimaal gebruik gemaakt wordt van de beschikbare resources zonder dat de applicatie hoeft te weten waar de resources zich fysiek bevinden. Niet meer, niet minder…
‘Concluderend zijn er feitelijk maar drie dingen waar je je mee bezig zou moeten houden: het maken en onderhouden van een standaard, het creeren van modules die voldoen aan die standaard en het verzinnen en uitvoeren van een stapelplan als je een bepaald doel wilt bereiken met de modules.’ Martin rechtvaardigt met deze conclusie Virtualisatie als oplossing. Het probleem IS namelijk zijn conclusie: Er is geen standaard, modules kunnen dus niet aan die standaard voldoen en de meeste stapelplannen mislukken om die reden. TENZIJ je gaat virtualiseren. De vergelijking met Lego gaat mank in die zin dat dit een op zichzelf staand product is dat specifieke (verbindings)eigenschappen toepast op elke nieuwe generatie. Blokken van 20 jaar oud passen daardoor uitstekend op de blokken van vandaag. Toch geldt ook hier dat wat of hoe je er mee bouwt niet standaard hoeft te zijn. Vraag tien kinderen een kasteel te bouwen en je krijgt tien verschillende kastelen. Daar zit hem dus niet de overeenkomst, maar juist het verschil tussen Lego en ICT. In de ICT zijn applicaties de kastelen. Applicatiebouwers gebruiken voor elke nieuwe versie vaak niet alleen andere stenen, maar ze bouwen ook nog eens een nieuw kasteel dat vervolgens op dezelfde bouwplaat moet passen en (voor een groot deel) over het oude heen gezet moet worden. De bouwplaats raakt hierdoor ontzet, waardoor dat oude kasteel gedeeltelijk of soms zelfs geheel onbereikbaar of onbruikbaar is geworden en er in het nieuwe kasteel bepaalde deuren of zelfs de ophaalbrug niet goed werken. Virtualisatie zet het oude en het nieuwe kasteel naast elkaar op dezelfde bouwplaats, maar heeft daar eerst een keurig aangeharkte en ge?galiseerde nieuwe laag overheen gelegd, zodat met allebei, tegelijkertijd en onafhankelijk van elkaar gespeeld kan worden en de ridders probleemloos van het ene naar het andere kasteel kunnen lopen.
Volgens mij slaat de schrijver de plank helemaal niet mis, dit is idd precies wat er aan de hand is. Virtualisatie is een heilig woord, en alles kan als het maar virtueel is. De praktijk is wel degelijk anders, er zijn producten die zich heel goed lenen om virtualisatie toe te passen maar de meeste producten zijn hier op dit moment gewoon nog niet geschikt voor. Het is een mogelijke oplossing voor speciale doeleinden.
Inderdaad HK, je hebt gelijk dat Lego voor een gedeelte mank gaat qua vergelijking en ik vind je analogie met het kasteel een erg goede.
Wat wel ook uit jouw relaas blijkt is precies waar het mij om gaat: iedereen heeft het maar over virtualisatie, maar vergeet dat dat geen doel op zich is. Virtualisatie is slechts een middel om standaarden te bereiken. En dat maakt iemand die NIET kiest voor virtualisatie maar op een andere manier een standaard of modularisatie wil bewerkstelligen nog niet per definitie ouderwets of niet met zijn tijd meegaand.
Vandaar ook bedankt, Berrie: jij hebt mijn tekst begrepen.
Niek moet het nog maar eens onbevooroordeeld opnieuw lezen. Het klopt dat ik SOA als voorbeeld heb gebruikt. maar in mijn optiek is SOA slecht modularisatie in de process/middelware laag en virtualisatie vaak de modularisatie en standaardisatie methodiek in de verwerkings/applicatie/server/netwerk laag. Dit maakt waarom de denkwijzen zo lekker bij elkaar aansluiten. Zie het maar als Duplo vs Lego. Het is niet hetzelfde, maar het past vaak wel.. 😉
De tendens van het artikel is zodanig dat het lijkt alsof virtualisatie iets is waar nog van alles aan mankeert en dat je je beter eerst op andere zaken kunt richten. Dat is niet per se het geval. Er zijn inmiddels een aantal zeer goed werkende oplossingen. De enige beperking is de omgeving waarin die oplossingen toegepast kunnen worden en wat je er mee wilt oplossen. In principe is alles te virtualiseren wat Windows based is (vrijwel 100% van de bekende applicaties bijvoorbeeld), zeker als het gaat om standaard werkplekbeheer. In dat geval zijn er virtualisatieoplossingen die traditionele oplossingen veruit de baas zijn als het gaat om goed, goedkoop en veilig in te richten en te beheren omgevingen.
Dat op meerdere fronten aan virtualisatieoplossingen wordt gewerkt en dat die lang niet allemaal even goed werken of toepasbaar zijn is waar, maar het diskwalificeren van de term is daarmee niet gerechtvaardigd.
@Hans Kroon
Ik diskwalificeer de term niet, althans, dat is niet de bedoeling van mijn betoog. Ik diskwalificeer het te pas en te onpas gebruiken van de term waardoor de betrokkenen, waaronder beslissers en eindgebruikers ongewild en vaak ongemerkt aan het eigenlijke doel voorbij gaan. Hoeveel vendoren / fabrikanten gebruiken de term niet om alleen maar de aandacht te vestigen, in totaal verschillende settings. Zelfs blade systemen worden in ??n adem genoemd als virtualisatie oplossing. Dat erger ik me aan, en d??r gaat het me om.