Virt IO Performance

Saturday, October 4th, 2008

banner_kvm_forum_2008

One of the latest cool new virtualization features KVM offers, is “VirtIO”, which is paravirtualized networking – a fancy way of saying “Really fast networking that runs at or near native host speed”.

Although the tun/tap based networking we’ve been using for over a year has proven itself to be very fast and reliable, we’ve done some experimenting with VirtIO after attending this June’s KVM Forum in Napa.

We’ve applied some benchmarks from the KVM virtio instructions, here:

Using VirtIO NIC – Kernel based Virtual Machine

and came up with about 40% higher than their results, guest-to-host, even with no virtio:

Ubuntu Intrepid Ibex client, v.sep30, no virtio:

sysadmin@unconf-ubu810-oct3:~$ sudo iperf -c librehost.com -w 65536 -p 12345 -t 60
————————————————————
Client connecting to librehost.com, TCP port 12345
TCP window size:   128 KByte (WARNING: requested 64.0 KByte)
————————————————————
[  3] local 216.218.243.155 port 60365 connected with 216.218.243.130 port 12345
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec    995 MBytes    139 Mbits/sec
sysadmin@unconf-ubu810-oct3:~$

Host/server:

root@librehost-h64:~# iperf -s -w 65536 -p 12345 -I 5
WARNING: option -I is not valid for server mode
iperf: ignoring extra argument — 5
————————————————————
Server listening on TCP port 12345
TCP window size:   128 KByte (WARNING: requested 64.0 KByte)
————————————————————
[  4] local 216.218.243.130 port 12345 connected with 216.218.243.155 port 60365
[  4]  0.0-60.0 sec    995 MBytes    139 Mbits/sec
root@librehost-h64:~#

After virtio installed & configured, showing ~5x speedup:

sysadmin@unconf-ubu810-oct3:~$ sudo iperf -c librehost.com -w 65536 -p 12345 -t 60
————————————————————
Client connecting to librehost.com, TCP port 12345
TCP window size:   128 KByte (WARNING: requested 64.0 KByte)
————————————————————
[  3] local 216.218.243.155 port 36958 connected with 216.218.243.130 port 12345
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-60.0 sec  3.90 GBytes    559 Mbits/sec
sysadmin@unconf-ubu810-oct3:~$

And on the server/host:

root@librehost-h64:/vm/155# iperf -s -w 65536 -p 12345 -I 5
WARNING: option -I is not valid for server mode
iperf: ignoring extra argument — 5
————————————————————
Server listening on TCP port 12345
TCP window size:   128 KByte (WARNING: requested 64.0 KByte)
————————————————————
[  4] local 216.218.243.130 port 12345 connected with 216.218.243.155 port 36958
[  4]  0.0-60.0 sec  3.90 GBytes    559 Mbits/sec

In conclusion, with this 5X speedup, all our Ubuntu Intrepid Ibex-based vMachines will offer virtio installed soon; likely by the time Ibex is released.

Ask for it and we’ll be sure to install it by hand on your VM if so desired.

j

Uptime

Sunday, June 1st, 2008

Uptime Collection

This post serves as a collection of our notable uptimes – for several things:

  • Physical servers
  • VMs / Virtual Servers
  • Application platforms that keep uptimes, such as Zope

We will also be posting notable uptimes as comments to the post so that you can get an idea of how we do things.

Good Example [Updated! March 18, 2010]

Here’s one of our primary webservers, running Debian, installed in 2005 prior to our adopting Virtualization across the board in our product line:

webserver:~# uptime
16:26:01 up 1534 days, 10 min,  7 users,  load average: 0.16, 0.32, 1.04
webserver:~# date
Thu Mar 18 16:26:11 PDT 2010
webserver:~#

Yes, that’s right – 4.2+ years.

One of our Physical VM hosts

Here’s our current uptime, just prior to our kernel upgrade which will force a reboot:

root@librehost-h64:~/libre# uptime
17:27:36 up 96 days, 18:36,  4 users,  load average: 0.16, 0.26, 0.27
root@librehost-h64:~/libre#

After this upgrade we’ll be on production/release post-SSH-key Ubuntu Hardy 8.04 LTS.

j