Feeds:
Posts
Comments

Posts Tagged ‘I/O virtualization’

Een onvermijdelijk gevolg van server-virtualisatie is dat een groot deel van de I/O afhandeling door de CPU’s moet worden uitgevoerd, in plaats van door externe Network Interface Cards (NIC’s) of Host Bus Adaptors (HBA’s). Voor data-verkeer tussen twee virtuele machines die in dezelfde fysieke server draaien is dat deel zelfs 100%.

Dit is altijd al een zorgpuntje geweest. De toename van CPU-kracht – vroeger door een hogere klok-snelheid, tegenwoordig door steeds meer cores en CPU’s – heeft die zorgen aan de ene kant verlicht. Daar staat dan wel tegenover dat je door die toename in kracht ook veel meer virtuele machines in dezelfde server gaat draaien. Hierdoor is de kans op data-verkeer die binnen die server blijft dus ook steeds groter. En omdat dat verkeer voor 100% door de cores / CPU’s afgehandeld moet worden heb je dus veel cores / CPU’s nodig. Lijkt een beetje op een hond die achter zijn eigen staart aan rent…

dog-chasing-tail

VMware heeft daarom een “performance study” gepubliceerd waarin gemeten is in hoeverre de CPU-power een bottleneck vormt bij dataverkeer, zowel binnen de machine als naar buiten. De resultaten zijn bemoedigend. Zo is het bij de gangbare servermodellen mogelijk om de vier 10 GbE NIC’s die zo’n machine meestal heeft zo goed als volledig te verzadigen vanuit 1 virtuele machine met 4 virtuele CPU’s. En 2 virtuele machines binnen dezelfde machine kunnen op zo’n 27 Gbps hun data onderling uitwisselen.

De performance study is hier als PDF-bestand van 13 pagina’s te downloaden.

Met dank aan Duncan Epping

Read Full Post »

Citrix ontwikkelt een open source virtuele switch. Deze wordt geschikt voor zowel Xen als KVM gebaseerde hypervisors. Deze switch zou dus kunnen gaan concurreren met de Nexus 1000V virtuele switch die door Cisco voor – en samen met – VMware is ontwikkeld.

Voorlopig is het volgende bekend van de nieuwe open source switch:

  • Initieel geschikt voor zowel Xen als KVM
  • Ondersteunt gecentraliseerd netwerkbeheer
  • Ondersteunt geavanceerde netwerk-management features, zoals Netflow, SPAN, RSPAN en ERSPAN
  • Initieel beschikbaar als plug-in voor XenCenter
  • Ondersteunt security features als ACLs en 802.1x

Het open source karakter maakt het onder andere voor leveranciers van Converged Network Adaptors (CNA’s) mogelijk om de switch in de firmware te implementeren en daarmee de SR-IOV standaard te ondersteunen. Je krijgt dan een behoorlijk ontlasting (raar woord, ik bedoel dus minder belasting…) van de centrale processor.

Bron: Chris Wolf

Read Full Post »

De SCOPE Alliance, die eerder al nuttige white papers over virtualisatie publiceerde, heeft nu het domein van I/O virtualisatie verder uitgediept. De doelgroep zijn netwerk operators, echter het document kan voor iedereen die te maken krijgt met I/O virtualisatie erg nuttig zijn.

IO virtualization

Dit geldt zeker voor gebruikers van blade servers, die juist door I/O virtualisatie steeds meer geschikt worden voor onder andere server consolidatie.

Het rapport is als PDF document van 21 pagina’s te downloaden.

Bron: VMblog

Read Full Post »

Er is vaak verwarring over de vraag wat I/O virtualisatie (IOV) nu precies is en waar je het voor nodig hebt. Vanaf 10.000 meter hoogte ziet het plaatje er ongeveer als volgt uit (alhoewel geredeneerd wordt vanuit VMware zijn de basisprincipes ook voor de andere hypervisors toepasbaar):

Allereerst stond VMware al bij het begin voor het probleem hoe je meerdere virtuele machines toegang kunt geven naar één Network Interface Card (NIC). Immers, elke virtuele machine meent de hardware volledig te bezitten, inclusief alle I/O apparaten. En bestaande NIC’s waren nooit gebouwd voor een situatie dat ze vanuit meerdere virtuele machines met elk een eigen operating systeem en drivers benaderd zouden worden. De oplossing hiervoor was relatief eenvoudig. VMware bouwde eerst een virtuele NIC waarmee elke virtuele machine ‘naar buiten’ kon communiceren. Zo’n vNIC gedraagt zich net als een fysieke NIC en heeft bijvoorbeeld ook een eigen uniek MAC adres. Vervolgens bouwde VMware een virtuele switch om alle vNIC’s te kunnen koppelen met die ene (of meerdere) fysieke NIC. Als neveneffect werd daarmee tevens bereikt dat verkeer tussen virtuele machines binnen dezelfde fysieke server niet meer over het fysieke netwerk hoefde te lopen, maar volledige binnen het virtuele netwerk kon blijven. Belangrijk is je te realiseren dat zowel de vNIC’s als de vSwitches volledig in software zijn gemaakt en draaien op de CPU’s van de computer. Er komt dus geen andere hardware en firmware aan te pas.

Vervolgens ontstond er een beheerprobleem. Het beheer van vNIC’s en vSwitches kwam namelijk in handen van de serverbeheerders en stond daarmee los van de netwerkbeheerders. Bovendien ziet een vSwitch er toch anders uit dan welke fysieke switch dan ook. Dit zorgde ervoor dat ook netwerkbeheerders niet precies wisten wat ze in handen hadden. Ook voor security-specialisten is zo’n constructie al snel een doorn in het oog. Cisco loste dit recent samen met VMware op door het bouwen van een virtuele switch die exact gelijk is aan een fysieke switch. Het gaat in dit geval om de Nexus 1000V, met dezelfde software als de Nexus 5000 fysieke variant. Deze switch kan dus die van VMware vervangen en heeft ook nog eens als voordeel dat het een gedistribueerde switch is. Dit laatste houdt in dat de switch verspreid over meerdere fysieke servers kan bestaan (op hypervisor niveau), maar door de beheerder als één switch gezien kan worden. De Nexus 1000V brengt de virtuele switch dus volledig terug in de handen van de netwerkbeheerders. Alle policies die voor het fysieke netwerk worden opgesteld kunnen één op één in de virtuele switch worden doorgevoerd.

Een ander probleem dat veroorzaakt werd door serverconsolidatie is de relatief beperkte bandbreedte van de NIC vanuit de fysieke machine naar het netwerk. Zo’n NIC werd immers in het verleden gebruikt door slechts één machine. In een geconsolideerde server echter door misschien wel tientallen virtuele machines. VMware loste dat op middels NIC-teaming. Dit houdt in dat meerdere fysieke NIC’s parallel gebruikt kunnen worden, op een voor de virtuele machines transparante manier. Echter, het aantal fysieke NIC’s dat je op een server kunt aansluiten is beperkt. Dit geldt zeker voor Blade Servers. Daarom komen momenteel oplossingen beschikbaar in de vorm van server-interfaces met een zeer hoge snelheid (denk aan InfiniBand of 10 Gb Ethernet), die vervolgens buiten de server verder doorgeschakeld worden naar interfaces met lagere snelheden (1 Gb Ethernet, 100 Mb Ethernet, Fibre Channel). Als je hierbij meerdere protocollen ondersteunt (zoals Ethernet en Fibre Channel) dan wordt zoiets een Unified Fabric genoemd.

Al deze oplossingen hebben gemeen dat ze nogal wat CPU-power van de server afsnoepen. Immers, de vNIC’s en vSwitches draaien allemaal als software op de server. Daarom hebben de NIC-fabrikanten besloten om NIC’s te bouwen die zich naar de server toe gedragen alsof ze wel uit meerdere NIC’s bestaan. Fysiek is het dus één NIC naar buiten, logisch kun je elke virtuele machine een virtuele NIC geven die volledig in de firmware van de NIC wordt uitgevoerd. Je kunt dus stellen dat zo’n NIC eigenlijk een eigen switch aan boord heeft. Deze oplossingen worden door PCI-SIG onder de namen ‘Single-root IOV’ en ‘Multi-root IOV’ gestandaardiseerd. Er is sprake van de relatief eenvoudige ‘Single root IOV’ variant als de NIC zich naar slechts één fysieke server toe gedraagt als meerdere NIC’s. De meer complexe ‘Multi-root IOV’ variant zou ook meerdere fysieke servers (met name Blade Servers) moeten kunnen ondersteunen.

Samenvattend is de stelling gerechtvaardigd dat virtualisatie een ‘disruptive technology’ is. Wat begint bij serverconsolidate eindigt uiteindelijk in een volledige herziening van je ICT-infrastructuur, vanaf de desktop tot het datacenter, inclusief alles wat er tussen zit.

Read Full Post »

Johan De Galas schreef op AnandTech een uitstekend artikel over hardwarevirtualisatie. Hij gaat met name uitgebreid in op de performance-consequenties van de verschillende manieren van virtualiseren. Er heersen op dit vlak nogal wat misverstanden. Johan legt deze op een grondige manier uit en behandelt en-passant ondermeer de volgende begrippen:

  • Kernel mode versus user mode
  • De oude IBM S/370 manier van virtualiseren
  • VMware’s software gebaseerde Binary Translation methode voor x86 CPU’s
  • De enorme overhead van system calls bij SYSENTER en SYSEXIT
  • I/O virtualisatie
  • De Memory Management Unit (MMU) problematiek
  • Paravirtualisatie
  • Hardware Accelerated virtualisatie (Intel VT-x en AMD SVM)
  • Waarom paravirtualisatie veel sneller is dan hardware accelerated virtualisatie
  • Tweede generatie hardware-support voor virtualisatie (Intel’s EPT en AMD’s nested paging)

Het artikel wordt afgesloten met een uitgebreide set aan benchmark gegevens.

Een paar van zijn conclusies zijn:

When we first heard about Intel’s VT-x and AMD’s SVM technology we expected to see performance improvements over the software based solutions such as Binary Translation and Paravirtualization. Both AMD and Intel gave the impression that they were about to “enhance” and “accelerate” the current purely software based solutions.

Second generation virtualization (VT-x+EPT and AMD-V+NPT) is more promising, but while it can improve performance significantly it is not guaranteed that it will improve performance across all applications due to the heavy TLB miss cost. On the flip side of the coin: software virtualization is very mature, but there is very little headroom left to improve. The smartest way is to use a hybrid approach, and that is exactly what VMware, Xen, and Microsoft have been doing.

VMware ESX is the best example of this. ESX uses paravirtualized drivers for the most critical I/O components (but not for the CPU), uses emulation for the less important I/O, Binary Translation to avoid the high “trap and emulate” performance penalty, and hardware virtualization for 64-bit guests. In this way, virtualized applications perform quite well, in some cases almost as if there is no extra layer (the VMM).

Lees de rest van het artikel hier.

Read Full Post »

InformationWeek geeft de stand van zaken weer ten aanzien van infrastructuur-virtualisatie. Daarbij wordt met name desktop virtualisatie als de volgende golf gezien, echter wel in het besef dat er nog niet één technologie als beste boven is komen drijven.

Een voorbeeld is de virtualisatie van de eerste 800 van 3.300 werkplekken bij Cincinnati Bell. Deze is uitgevoerd op basis van Sun Ray thin clients en een achterliggende Sun VDI architectuur. De voornaamste drijfveer was in dit geval de noodzaak om het binnenkort niet meer ondersteunde Windows 2000 op de desktops te vervangen. In plaats van een hardware en software upgrade op de werkplek besloot Cincinnati Bell om de de Sun Ray op de werkplek in te zetten en de desktop gevirtualiseerd naar het datacenter te verhuizen.

De toenemende acceptatie van server virtualisatie in het datacenter legt wel weer een nieuwe bottleneck bloot: die van de server I/O. Leveranciers als Xsigo en Neterion lossen dit welliswaar op verschillende manier op, echter in beide gevallen door ook die I/O te virtualiseren.

InformationWeek citeert de mening van Forrester Research ten aanzien van de volwassenheid van de verschillende virtualisatie-concepten als volgt:

Mature Or Still Changing?

  • APPLICATION VIRTUALIZATION has reached the peak of its maturity; won’t change significantly over the next 10 years.
  • NETWORK VIRTUALIZATION has had significant success in the enterprise and is unlikely to change much over the next 10 years.
  • DESKTOP VIRTUALIZATION is in early stages of development but is growing quickly; will mature into next phase of adoption over the next three years.
  • HYPERVISORS from VMware, Citrix Systems, and Microsoft, along with versions from Sun and Oracle, are doing well and will evolve into a more advanced stage over the next three years.
  • VIRTUAL APPLIANCES have caught on as a way for vendors to ship trial software but are only slowly being adopted as a means of implementing new apps in the enterprise. They should make progress in that direction over the next three to five years.

Zie InformationWeek voor meer.

Read Full Post »

Virtualisatie breidt zich als een olievlek uit over de verschillende IT-componenten. Bij een overweging om virtualisatie toe te passen zie je al snel door de bomen het bos niet meer. Daarom is elke poging om structuur aan te brengen – en het bos weer zichtbaar te maken – toe te juichen. Alana Achterkirchen van Scalent Systems doet dat in de vorm van een product stack. Hij onderscheidt:

 

  1. Server virtualisatie (VMware, Xen)
  2. I/O virtualisatie (Nuova, 3Leaf, Xigo)
  3. Infrastructuur virtualisatie (Scalent en Unisys)
  4. Applicatie virtualisatie (Appstream, DataSynapse, Citrix, Microsoft)
  5. Data Center Orchastration (OpsWare, Bladelogic, BMC)

Het volledige artikel is hier te lezen.  

 

Read Full Post »