Fun with Sun Ray, 3D, Oracle VM x86 and SRIOV

One of the things I like about my job is that I get to play around with stuff and make use of the technologies we work on in my teams. Sort of my own little playground. It allows me to study the products in great detail and put them to use in ways that individual product teams don't always intend them to be used for :) but that makes it fun. I have a lot of this set up at home because... work is sort of hobby and I just like to tinker with it.

Anyway, a few weeks ago I was looking at my sun ray rig at home and how well 3D works. Google Earth and some basic opengl tests like glxspheres combined with virtualgl. It resulted in some very cool demos recorded with my little camera (sorry for the crappy quality of the video :-) :

OVDC (soft client) on my mac
Sun Ray 2FS

Never mind the hickups during zoom, that's because I was using the scrollwheel on my mouse and I can't scroll uninterrupted :) Anyway, this is quite cool !

The setup for this was the following :
Sun Ray on LAN, Sun Ray Server 5 latest installed on OL5.5 inside a VM running on Oracle VM 2.2 (hardware virt, with a virtual network (vif)) and the virtualgl rendering happened on another box (wopr5) that runs linux on a little atom D520 with an ION2 gpu.

So network goes from Sun Ray to Sun Ray Server to wopr5 and back. Given that this is full screen 3D it puts a good amount of load on the network and it's pretty cool that SRS was just a VM :)

So, separately, I had written a little blog entry about using sriov and oracle vm a while back. link to sriov blog entry

Last night when I came home I wanted to do some more playing around with SRIOV and live migrate. To do this, I wanted to set up a VM with 2 network interfaces, one virtual network (vif) and then one that's one of the SRIOV virtual functions from my network card.
Inside the guest they show as eth0 and eth1, and then bond them using a standard linux bonding device (bond0 here) with active active links.

The goal here is that on live migrate, we would detach the VF (eth1 in guest in this case), the bond would then just hum along on eth0 (vif) we can live migrate the VM and then on the other server after the migrate completes we re-attach a VF to the VM there and eth1 pops up again and the bond uses both eth0/eth1 to do its work.

So, to set this up, I figured, why not use my sun ray server VM because the 3D work generates a nice network load and is very latency/timing sensitive.

In the end, I ran glxspheres on my sunray server (vm) displaying on my sun ray 2 fs and while that was running, I did my live migrate test of this vm (unplug pci VF, migrate, reconnect vf) and guess what, it just kept running :) veryyyyyy cool. now, it was supposed to, but it's always nice to see it actually work, for real.

Here's a diagram of it.

No gimics - just real technology at work !

enjoy :)


That is the ultimate coolness! I am actually attempting to set something like this up where I work. Currently, I have OVM configured on 3 physical servers with back end storage, LACP and HA enabled. What I am uncertain of is the placement of SRSS or VDI 3.2. Do I install these items on a VM within the OVM server pool or do I install SRSS / vBox / VDI 3.2 on the same system that contains the OVM Mgr which is an entirely separate server? I could really use a pointer and some guidance since I am unable to find any guides for this configuration per se. I did look at your diagram and from the looks of it, SRSS is installed in a VM on the OVM Server pool. In this case, be it SRSS or VDI 3.2 are there any particulars to where for how the new VMs should be created. More to the point, should I create VMs for my end users via OVM Mgr or via VDI 3.2?

Posted by Jeff Tiemann on January 05, 2011 at 11:38 PM PST #

well. depends. if you want to use virtualbox as well. then that would have to be installed native. you can't install that component on top of oracle vm server. Technically you can try to install a solaris guest on oracle vm and install VDI3.2 in there (without the vbox component). I haven't tried that yet, and don't use this "production" or expect support :) so try at your own risk. but there's no technical reason it wouldn't work. so then you can have vdi in a VM and the other windows VMs separately running and use the generic desktop provider ;-)

Posted by wim.coekaerts on January 08, 2011 at 03:32 AM PST #

Ok, I think I understand. To reiterate - though not supported, it is conceivable to run VDI 3.2 in a solaris VM on top of OVM. Regarding the generic desktop provider which exists in the VDI component, is it fully compatible with OVDC / SunRay? Lastly, I may be seriously over complicating all of this for myself. I am working on an assumption that it is good to have redundancy in a multi core / multi server VDI scenario and that OVM provides architectural stability whereas VDI provides flexibility - manageability concerning the desktops. Am I barking up the wrong tree with this and should I be looking at OVM & VDI as two separate or standalone products?

Posted by Jeff Tiemann on January 12, 2011 at 05:00 AM PST #

ovdc works just fine w/ this. regarding products in general. vdi and ovm today are independent for sure.

Posted by wim.coekaerts on January 12, 2011 at 05:07 AM PST #

Post a Comment:
  • HTML Syntax: NOT allowed

Wim Coekaerts is the Senior Vice President of Linux and Virtualization Engineering for Oracle. He is responsible for Oracle's complete desktop to data center virtualization product line and the Oracle Linux support program.

You can follow him on Twitter at @wimcoekaerts


« June 2016