![Impact Assessment: Virtualization's Leading Edge](https://twimgs.com/informationweek/1186/EMCvirtualize_impact.gif)
![](https://twimgs.com/infoweek/spacer.gif)
(click image for larger view)UNCORK THE I/O BOTTLENECK
With the first push toward virtualizing servers in the data center, the number of virtual machines per server was a conservative four, five, or six, depending on the applications. Then administrators found they could safely run seven or more applications per server, using 80% of total server capacity, a huge improvement over the average 5% to 15% of unvirtualized server capacity.
But running all those virtual servers puts a strain on a piece of hardware's I/O capacity. There's the traffic coming and going to the network, not to mention the data being loaded in blocks from other applications or a back-end database. Too much I/O overwhelms the server's channels, leading to backlogs and idle CPUs as they wait for data.
The solution is to virtualize server I/O. That is, turn normally fixed and static I/O channels, host bus adapters, and network interface cards into more dynamic resources whose capacity can expand and contract based on virtual server needs. If I/O virtualization could be achieved, it would resolve a persistent problem server administrators have as they stack virtualized applications on the same hardware. Until virtualized I/O becomes commonplace, applications with heavy or fluctuating I/O demands aren't being virtualized, lest they end up causing I/O backups.
Two early solutions have emerged and more are sure to follow. Startup Xsigo off-loads I/O traffic to an attached appliance that virtualizes it (see diagram, p. 20). The approach requires replacing standard HBAs and NICs on the server with Xsigo custom cards and investing in the Xsigo appliance. Pricing starts at $30,000.
Xsigo's appliance can generate up to 16 usable channels of I/O, feeding storage traffic to a Fibre Channel network or LAN traffic to an Ethernet network. It also can monitor workloads and assign more capacity to the VMs that need it most. Virtualizing I/O helps balance the virtual machine workload, letting applications that generate heavy I/O traffic during the night work alongside other applications that only experience occasional spikes in activity.