18_rubriek Virtualisatie DOOR Bram Dons
Hypervisor vangt random gedrag VM’s af
Virsto verhelpt gebreken virtualisatie 42 S T O R A G E M A G A Z I N E · S p e c i a l i ss u e
Virtualisatie moet de bezettingsgraad van processors en harddisks verhogen. Degenen die nu echt VM’s inzetten, merken echter dat virtualisatie nog veel meer verhoogt: de opslagbehoefte bijvoorbeeld. Het jonge bedrijf Virsto claimt dat het deze nadelen kan opheffen en de prestaties van VM’s drastisch kan verbeteren. Dat vraagt om een test.
De belangrijkste redenen voor ondernemingen om over te stappen op servervirtualisatie zijn zo langzamerhand iedere IT’er wel bekend. De voordelen van virtualisatie zijn ons door de leveranciers, inclusief de IT-media, de afgelopen jaren voortdurend voorgehouden en ingepeperd: minder fysieke servers, minder vloerruimte, efficiënter beheer, enzovoorts. Maar langzamerhand komt iedereen die zich met virtualisatie bezighoudt tot het besef dat ook aan de virtualisatietechnologie wel degelijk nadelen zijn verbonden. Dat wil niet zeggen dat virtualisatie zijn doel voorbij schiet, integendeel, alleen moeten we de nadelen zo goed mogelijk zien in te perken. Wat zijn die nadelen dan en welke oplossingen zijn er? Dit artikel beschrijft het product Virsto One van de start-upfirma Virsto, dat de afgelopen maand is vrijgegeven. Het bedrijf claimt een groot aantal nadelen van virtualisatie te kunnen opheffen, waarvoor de huidige softwareleveranciers tot nu toe geen of onvoldoende oplossingen hebben gevonden. We beginnen met
STM10SG30_p42-47_Virsto_117677 42
een opsomming van die nadelen. IT-organisaties die de moeite namen en de moed hadden om na implementatie van virtualisatietechnologie post-hoc analyses uit te voeren, kwamen vaak tot
schokkende ontdekkingen. Weliswaar was, zoals verwacht, de TCO van virtuele servers aanmerkelijk lager, maar de uitgaven aan storage waren schrikbarend toegenomen. Dit betrof dan de aanschaf van meer en duurdere highendhardware en de daarmee gepaard gaande arraysoftwarelicenties en hogere operationele uitgaven. IT-architecten ontdekten dat er onverwacht high-end storagearrays moesten worden aangeschaft om de gestelde doelen bij de implementatie van virtualisatie te kunnen halen. De conclusie was dat de invoering van virtualisatie per saldo, op korte termijn in ieder geval, geen enkele besparing had opgeleverd. Het best bewaarde geheim van de virtualisatieindustrie?
Figuur 1: De architectuur van Virsto One
05-08-2010 11:07:01
In de virtualisatiewereld zijn we zo langzamerhand wel bekend met de VM sprawl. Maar wat te denken van de storagesprawl? In de fysieke wereld was de verhouding van het aantal operating systems tot het aantal dozen 1:1. De toepassing van VM-technologie heeft de zaak echter opgeblazen. Dat komt niet alleen door alle actieve VM’s, maar ook door alle andere images die tijdelijk zijn opgeschort of opgeslagen voor back-upen rollbackdoeleinden. Het is allang geen probleem meer om een datacenter te bouwen met tientallen, honderden of zelfs duizenden VM-images. Dat alles samen vraagt echter wel heel veel diskruimte. Als bij virtuele servers alle virtuele images volledig worden opgeslagen, is er ongeveer 15 tot 20 procent meer storage nodig dan bij fysieke servers, hebben IT-beheerders gemerkt. De VM sprawl heeft dan ook niet alleen een directe invloed op het budget voor storagehardware, maar ook op de operationele kosten!
fIlTERDRIVER ScHRIJfT DATA SEQuENTIEEl WEG De ironie is dat het merendeel van de bits in deze virtuele images precies hetzelfde is. De images zijn namelijk meestal klonen van een klein aantal golden masters en tijdens het actieve leven van een VM veranderen veel van die bits niet. Daar moet toch winst zijn te behalen, dachten veel softwareontwikkelaars.
complexiteit Het is in dit tijdschrift al enkele keren naar voren gebracht: de kans is groot dat bij een grootschalige implementatie van servervirtualisatie in een datacenter de complexiteit van de IT-architectuur en het beheer daarvan toeneemt. De afgelopen tientallen jaren hebben we gezien dat het beheer van storage niet bepaald eenvoudig is. Maar hoe lastig het ook was, met de komst van virtualisatie werd het nog een graadje moeilijker. Alleen al back-up, een noodzakelijk kwaad, is zeer CPU- en I/O-intensief. Het gevolg daarvan is vaak de ongewenste aanschaf van meer hardware of van speciale back-upsoftware die de virtuele omgeving moet ontlasten. Met onderbezette CPU’s hadden veel applicaties geen probleem, maar met virtualisatie is die ruimte er niet meer – deze wordt nu door
STM10SG30_p42-47_Virsto_117677 43
VM’s in beslag genomen. Dat was in het begin natuurlijk ook een van de voornaamste doelen van servervirtualisatie. Omdat de CPU’s door virtualisatie nu voor een groot deel bezet worden, moet er zorgvuldig worden omgegaan met de belasting van systemen. Tijdkritische applicaties kunnen in de problemen komen wanneer ze niet tijdig kunnen beschikken over de juiste resources, waaronder geheugen en I/O-capaciteit.
prestatieproblemen Bij een toenemend aantal VM’s zullen, relatief gezien, de prestaties dalen. De oorzaak is dat de gemengde I/O-belastingen afkomstig zijn van diverse operating systems, wat een streaming I/Obelasting in de weg staat. Zo Figuur 2: livespace- en logspacevolumes kan een fysieke server waarop acht VM’s draaien minder dan 80 procent van de samengestelde diskI/O-prestaties leveren die dezelfde fysieVirsto One ke server zou halen als daarop een enkel Virsto One is een hypervisorgebaseerd operating system draaide. Storageprovisistorageplatform voor de Microsoft oning is een ander probleem binnen de Hyper-V-omgeving, dat ontworpen is om virtuele omgeving. Elke creatie van een rekening te houden met bepaalde unieke VM vereist de toewijzing van storage. eigenschappen van storage met virtuele Maar de provisioningprocessen die zijn servers. Het biedt een aantal services voor ontworpen voor fysieke servers gaan gevirtualiseerde datacenters waarmee de ervan uit dat provisioning een niet-frekosten van storage zijn terug te dringen. quente activiteit is, die weinig coördinaHet belooft hoge prestaties in combinatie tie vereist tussen de server, het SAN en de met een vereenvoudigd beheer van de storagebeheerteams. Deze combinatie is storageomgeving. Bij de toepassing van te complex voor een dynamische VMVirsto is geen extra investering in serveromgeving. De provisioning van storage is of storagehardware nodig. Door de onderiets wat een serverbeheerder snel, eensteuning van zowel traditionele als voudig en op de juiste manier moet kuncommoditystorage stelt Virsto One enternen uitvoeren. De hypervisortechnologie prise- en clouddatacenters in staat om de heeft talrijke voordelen, maar eenvoudig kosten van een dynamische IT-infrastrucstoragebeheer behoort daar niet toe! tuur te reduceren. Virsto One belooft een
STORAGE MAGAZINE · Special iSSue
Storagesprawl
43
advertentie
Cisco Unified Computing System
het ultieme alternatief voor HP, IBM of Dell blade servers. Vraag ons waarom!
[email protected]
05-08-2010 11:07:02
Figuur 3: Het importeren van een virtuele harddisk (VHD)
44 STORAGE MAGAZINE · Special iSSue
oplossing voor de zojuist geschetste problemen met hypervisorgebaseerde storage. Het bedrijf geeft aan dat op een drietal gebieden kan worden geprofiteerd van optimalisatie. Ten eerste is er met de hiervoor beschreven optimalisatie van de I/O flow een prestatiewinst van een factor vijf te behalen. Ten tweede bestaat de mogelijkheid om duizenden en duizenden snapshots te genereren in diep geneste structuren, zonder de prestatiedegradatie die men gewoonlijk ziet in virtuele omgevingen. Ten slotte biedt Virsto de integratie met Windows Volume Shadow Copy Service (VSS) en live migration. Laten we eens kijken naar de architectuur van Virsto One, gezien vanuit de fysieke node of server (zie figuur 1). De drie hoofdcomponenten zijn de systemservice, de filterdriver en de virtuele harddisk (de VHD in een vhd-bestand). De Virsto One-
software wordt geïnstalleerd in de parentpartitie van de Microsoft Hyper-V hypervisor. De Virstoservice communiceert
RANDOM DATA bREEkT VM’S Op direct met de standaard Windows Management Interface (WMI) en is als zodanig toegankelijk voor iedere compatibele WMI-service, waaronder PowerShell en Microsoft Management Console (MMC). Virsto One is als een snap-in geïntegreerd met Hyper-V’s management-GUI.
filterdriver De filterdriver bevindt zich boven de raw volume layer en presenteert de virtuele disk als een Microsoft VHD-object aan de parentpartitie. De Hyper-V-manager ver-
advertentie
Cisco Unified Computing System
samen met EMC en NetApp het meest ideale Cloud Platform. Wij vertellen u graag waarom!
[email protected]
STM10SG30_p42-47_Virsto_117677 44
bindt deze VHD-objecten op de standaardmanier aan de guest VM’s. Een Virsto One VHD oftewel vDisk is een hoogpresterend, thinly provisioned, dynamisch object conform de Microsoft VHD-specificaties. Daarom is vDisk automatisch compatibel met alle storagefunctionaliteit van Microsoft. De vDisk is te koppelen aan een VM of aan een parentpartitie of te importeren vanuit een bestaande VHD. Noch de VM, noch het daarin aanwezige operating system ziet verschil tussen een Virsto vDisk en een gewone Microsoft VHD. Achter de schermen wordt alle data die een VM opslaat namelijk omgeleid naar de filterdriver, die de data optimaliseert voordat hij deze naar het fysieke storagevolume schrijft. Virsto denkt dat het random karakter van de datastream er de belangrijkste oorzaak van is dat VM’s slecht presteren. Bij gelijktijdige toegang van meerdere VM’s tot hetzelfde fysieke volume moet de hypervisor de randomachtige I/O-dataflows van de guest OS’en proberen te verwerken. De taak van Virsto’s filterdriver is om alle datastreams af te vangen, te
controleren, de I/O’s op te slaan en ze vervolgens sequentieel naar het fysieke volume te schrijven. Virsto One gebruikt technieken die lijken op die in hoogpresterende relationele databases: de I/O’s van individuele VM’s worden in een journalbestand opgeslagen, daar gebundeld en vervolgens op het storagesysteem opgeslagen. Deze techniek, het sequentieel schrijven en daarna opslaan van de I/O’s, is de oplossing voor veel van de prestatieen storageproblemen in VM-omgevingen.
Thin provisioning Bij Virsto One hoeft de beheerder geen keuze te maken tussen een fixed of dynamic disk, want alle storage is thinly provisioned. Volgens Virsto zijn de prestaties van vDisk daardoor beter dan die van een standaard-VHD. Dat moet vooral tot uiting komen bij het gebruik van snapshots. Daarbij zouden de prestaties hetzelfde blijven, ongeacht hoe diep in de snapshottree dit snapshot zich bevindt. Microsoft raadt het gebruik van snapshots onder sommige omstandigheden af. Indien er sprake is van tijdgevoelige services of indien de prestatie of de beschikbaarheid van de storage kritiek is, kun je volgens de fabrikant beter geen snapshots nemen van een native VM.
05-08-2010 11:07:03
S T O R A G E M A G A Z I N E · S p e c i a l i ss u e
Figuur 4: Klonen, gecreëerd uit een snapshot
Virsto claimt ongeëvenaarde prestaties bij het maken van snapshots in een Hyper-Vomgeving. Dit wordt bereikt door op volle disksnelheid alle writes sequentieel naar een logdisk te streamen. Alleen tijdens het destagingproces wordt er storage gealloceerd en er wordt altijd thin provisioning toegepast. Thin provisioning van een vDisk kost maar een fractie van een seconde, onafhankelijk van de logische grootte. Vergelijk dit met de provisioning van fixed disks in Hyper-V of LUN’s in een bestaand storagedevice: dat kan, afhankelijk van de grootte, wel uren in beslag nemen.
Snapshots en klonen Voor een snapshot onder Hyper-V wordt een avhd-bestand aangemaakt, maar een snapshot onder Virsto is een logisch object dat de toestand van het volume op een bepaald moment beschrijft. Er zit praktisch geen limiet aan het aantal en de frequentie van de te nemen snapshots. Bovendien merkt de gebruiker bij dit proces geen terugval in de prestaties. Een Virstokloon is gebaseerd op een snapshot van de parent vDisk en deelt dezelfde fysieke diskblokken. Deze kloon is dus een vDisk met een identieke inhoud. Hyper-V heeft geen soortgelijke kloonvoorziening, daar moet het vhd-bestand bit voor bit fysiek worden gekopieerd. Met Virsto valt er met een snapshot een onbeperkt aantal klonen te creëren, die gelijk beschikbaar zijn voor elke node in de cluster. De prestaties van een kloon zijn gelijk aan die van een vDisk.
Installatie Virsto One is een standaardsoftwarepakket van 10 MB dat op elke fysieke Microsoft Hyper-V-server wordt geïnstalleerd. Elk type storage is te gebruiken, als het maar fysiek is verbonden met de server, direct of via een SAN. De Virsto Onearchitectuur bestaat uit een masterserver en een of meer slaveservers. De set-up van de master bestaat uit de installatie van de Virsto Onesoftware
bonden met een vDisk op een Hyper-V VM. Heeft men al een Hyper-V-omgeving, dan is deze te importeren op een vDisk. De livespace is de plaats waar de VM’s en de applicatiedata in vDisks worden opgeslagen. De logspace is een schrijfintensieve omgeving waarvoor een snelle diskdrive vereist is, het liefst een SSD of RAID 10. Er is een logvolume van minimaal 1 GB nodig, 10 GB wordt echter aanbevolen. Virsto geeft geen
45
Microsoft raadt het maken van snapshots af en de configuratie van de live- en logspacevolumes voor de Virsto vDisks. Daarna worden de vDisks gecreëerd, gemount en ver-
limiet aan voor de grootte van het logvolume, maar alles boven de 30 GB is verspilde diskruimte. Om te kunnen profiteren van
Figuur 5: Het koppelen van een vDisk aan een VM
STM10SG30_p42-47_Virsto_117677 45
05-08-2010 11:07:05
Figuur 6: Master- en nodeservices in de cluster
46 S T O R A G E M A G A Z I N E · S p e c i a l i ss u e
alle features die Virsto One biedt, moeten zowel de live- als logspacevolumes toegankelijk zijn voor alle servers binnen Virsto’s storagepool. Daartoe moeten beide volumes worden geconfigureerd als shareable storage onder iSCSI of Fibre Channel.
uit de Virsto GUI worden vervolgens de live- en logspacevolumes geselecteerd en aan de slave node toegevoegd. Vanuit Virsto’s userinterface kan een vDisk worden gecreëerd, gemount en gekoppeld aan een Hyper-V VM. Met de
Writes streamen op volle disksnelheid Testopstelling Voor onze test maken we gebruik van twee Windows 2008 R2-servers van 64 bit, waarop we Hyper-V activeren. Beide servers zijn via Microsofts iSCSI-initiator verbonden met een StarWindstorageserver waarop drie volumes zijn gecreëerd: twee log volumes van 6 GB en een livespacedisk van 80 GB (zie figuur 2). De drie volumes zijn als RAW-volumes zichtbaar vanuit beide virtuele servers. Als eerste wordt via de installatieoptie ‘Complete’ de Virstosoftware geïnstalleerd op de master node en daarna via ‘Custom’ op de slave node. Van-
Partities Een partitie is een logische eenheid van isolatie, die door de Hyper-V hypervisor wordt ondersteund. Binnen zo’n partitie vindt de uitvoering van het OS plaats. De hypervisor moet beschikken over ten minste één parent- of rootpartitie waarop Windows Server 2008 draait in de 64 bitseditie. De virtuele stack draait dan binnen de parentpartitie en heeft directe toegang tot de hardwaredevices.
STM10SG30_p42-47_Virsto_117677 46
Import Disk Wizard is de inhoud van een bestaand vhd-bestand naar een vDisk te kopiëren (zie figuur 3). We kiezen voor deze methode. Alle data van de vhd-file moet worden gekopieerd naar de nieuwe vDisk (ik noemde hem ‘WindowsGold’). Dit kan, afhankelijk van de bestandsgrootte, enige tijd in beslag nemen.
Bootable diskimages Als het kopiëren klaar is, kun je een snapshot maken van de vDisk WindowsGold (ik noemde hem ‘SnapshotWindowsGold’). Van dit snapshot worden er dan twee klonen gecreëerd (ik noemde ze ‘CloneWindowsGold1’ en ‘Clone WindowsGold2’, zie figuur 4). Deze klonen verschillen niet van een andere vDisk en zien er ook voor de hypervisor uit als volledig bootable vhd-images. We zien dat de creatie van de snapshots en de klonen zo goed als geen tijd in beslag neemt; ze zijn onmiddellijk beschikbaar voor gebruik. Nadat de kloon is gecreëerd, is de inhoud exact gelijk aan die van het snapshot. Na verloop van tijd, als de kloon is toegewezen aan een VM die hem gebruikt om data naar te schrijven, zal de
inhoud verder afwijken van het snapshot. De Virstosnapshots en -klonen gaan efficiënt met de diskruimte om. Gemeenschappelijke datablocks op een vDisk, daarvan genomen snapshots, de klonen en hun afstammelingen: ze worden allemaal slechts in enkelvoud opgeslagen. Nu we twee bootable diskimages hebben, kunnen we deze mounten en aan twee virtual machines koppelen (zie figuur 5). Dat kan handmatig gebeuren via de GUI, maar ook automatisch tijdens de koppeling met de VM. Een script installeert automatisch een tiental VM’s voor ons. Als finale test zetten we op alle VM’s de disktest Iometer en laten we ze tegelijk draaien. De prestaties zijn minstens zo goed als of zelfs beter dan die van VM’s zonder Virsto.
Failover Willen we Virsto One toepassen in een Failover Clusteringomgeving, dan moet de failovercluster worden geconfigureerd en het functioneren van live migration worden geverifieerd. Naast de log- en livespacevolumes is voor Virsto One nog een shared volume nodig, dat fungeert als Virsto Ones master database. Dit shared volume hoeft slechts 10 MB groot te zijn en mag een clusterstoragedisk of een network-shared disk zijn. Na de configuratie van de masterserver zien we in de Failover Cluster Manager dat de masteren nodeservices zijn toegevoegd. De volgende stap is het uitvoeren van Virsto Ones installatieoptie ‘Complete’ op de andere clusternodes. De servers zullen zich automatisch bij de master database registreren. De masterservice wordt op
05-08-2010 11:07:07
conclusies Virsto One voorziet in eenvoudige plug-insoftware die zich in de parentpartitie van de Microsoft Hyper-V hypervisor nestelt. Het bevat een filterdriver en een systeemservice die direct met de standaard Windows Management Interface (WMI) communiceren. Omdat Virsto toegankelijk is voor iedere compatibele WMI-service, biedt het een aansluiting met PowerShell en MMC. De filterdriver bevindt zich boven de raw volume layer, die een virtuele disk aan de parentpartitie presenteert als een VHD-object. De Hyper-V-manager verbindt deze VHD-objecten vervolgens aan
de guest VM’s. De virtuele disks van Virsto One bieden hogere prestaties dan de standaard virtuele disks. Het zijn thinly provisioned, dynamische, met Microsoft compatibele storageobjecten. Vandaag de dag zijn nog bijna alle storagetechnologieën gebaseerd op technieken die zijn ontworpen voor fysieke servers. Ook virtuele servers maken gebruik van deze op traditionele storagetechnologie gebaseerde storagesystemen. De afgelopen tijd ondervinden gebruikers
Ten tweede bezitten virtuele servers bepaalde unieke I/O-karakteristieken. Dit zorgt voor een prestatiedaling wanneer er steeds meer VM’s aan een fysieke server worden toegevoegd of wanneer I/O-intensieve applicaties worden gevirtualiseerd. Ten derde is het beheer bij een storageomgeving met virtuele servers veel complexer dan bij een omgeving met fysieke servers. Ten slotte klagen gebruikers over de totale kosten van VM-storage. Ondernemingen stappen namelijk over op virtualisatie om daarmee
THIN pROVISIONING IN EEN fRAcTIE VAN EEN SEcONDE daarvan de beperkingen bij de grootschalige toepassing van virtuele servers. Dat is niet zo verwonderlijk. Ten eerste consumeren virtuele servers 30 procent meer diskruimte dan fysieke servers, een fenomeen dat bekend staat als de VM sprawl. Omdat een VM niet meer is dan een groot bestand dat er voor het OS als een disk uitziet, is de VM sprawl in feite een storagesprawl.
geld te besparen, niet om achteraf te moeten constateren dat de besparingen weer tenietgedaan worden door de extra investeringen in storage en beheer. p
STORAGE MAGAZINE · Special iSSue
elke server geïnstalleerd maar niet opgestart, totdat zich een fout voordoet op de originele master. Voor de ondersteuning van failover en live migration moeten de VM’s worden geïnstalleerd op shared storage. Na een geslaagde installatie zien we dat de nieuwe node master en nodeservices in de Failover Cluster Manager zijn toegevoegd onder ‘Services en applications’ (zie figuur 6). Vanuit ‘Services en applications’ kunnen op de gebruikelijke wijze VM’s worden toegevoegd.
47 bRAM DONS IS ONAfHANkElIJk IT-ANAlIST bIJ IT-TRENDWATcH (
[email protected])
advertentie
Core Education verzorgt trainingen op het gebied van Storage. Ervaren trainers brengen uw IT-kennis op peil. Wij bieden trainingen aan op alle niveaus, van open inschrijving tot maatwerk. Daarbij hanteren wij twee pijlers:
trainingcentrum voor storagesolutions
- KENNIS OP MAAT - LEREN DOOR DOEN Hiernaast vindt u enkele trainingen uit ons uitgebreide aanbod. Kijk voor meer informatie op www.core-education.nl of neem contact met ons op.
Install, Configure & Manage VMware Disaster Recovery Partner Training
N-Series System X SAN DS-Producten Partner Training
Blade Server Business Continuïty Data Protector EVA Storage Fundamentals FC Switch
Heeft u specifieke vragen of problemen? Wij zorgen via training en consultancy voor de passende oplossingen.
Core Education I Boschdijk 766 I 5624 CL Eindhoven I 040-2484486 I www.core-education.nl I
[email protected]
STM10SG30_p42-47_Virsto_117677 47
05-08-2010 11:07:08