Sun VirtualBox and Sun VDI Power JavaOne

Even though you may be away from the office attending a conference, the rest of the world moves on and you quite often need to keep up with your day job. At JavaOne this year, Sun provisioned 21,000 Virtual Desktops for the attendees to use to stay on top of things. This blog entry describes briefly how this was done using VirtualBox and Sun VDI...

User's experience

Dotted around the Moscone Center were hundreds of Sun Rays. These were in the Lobby Areas,

Underpass between North and South Halls, 

and Cyber Lounge areas in the Pavilion.

Every JavaOne attendee was given a smartcard as part of their Welcome Kit on registration. And all you needed to do to get your Virtual Desktop was insert this into the nearest free Sun Ray.

The user can then choose which type of Virtual Desktop they want from:

  • Windows 7 
  • Ubuntu 8.10
  • OpenSolaris 2009.06 

Under the hood:

The first time you make this choice your Virtual Desktop virtual machine (vm) is created based on a template in Sun VDI. The virtual machine configuration is held in a MySQL database and the virtual disk image is quickly cloned from the template using a feature of ZFS which underpins the Sun Storage 7000 servers that were in use. Then Sun VDI chooses a VirtualBox server (based on load) and launches the new vm on that server, with the configuration and iSCSI target id that uniquely identifies the new virtual disk.

When you pull your card out the vm suspends after a short period which means resources can be freed up for other users.

When you re-insert your card and launch a previously created Virtual Desktop, the vm is restored from disk (note that this can be to a different VirtualBox server than the original session ) and you are good to go.

Here is my Windows 7 Virtual Desktop.

Administrator Experience 

To manage the 21,000 virtual desktops we had 2 guys (admittedly smart guys).

And the whole thing was powered by a single rack:

The rack consisted of:

  • 4 VDI servers - 4 Sun Fire X4450, each with 4 CPUs and 64 GB memory.
  • 5 VirtualBox servers - 5 Sun Fire X4450 servers, each 4 CPUs, 6 cores per CPU and 64 GB of memory.
  • 3 Storage servers - 3 \* 7210 Unified Storage servers.

This was vastly over-spec'ed as we could see using the Analytics of the storage servers:

Thanks to Christian and Thomas (our architects and admins for the week) and kudos to Dirk's and Achim's teams.

- FB 


Nice rack ;-)

How many sun rays were dotted about the place? Interested to see some figures on max concurrancy.

21k desktops - how many in use at any one time?


Posted by Darren Chapman on June 09, 2009 at 09:55 AM BST #


There were only a few hundred Sun Rays but the capacity planning had to allow for 7000 attendees running all 3 choices, hence the 21K. In reality, I think only 16K vm's were created.

So concurrency, only a few hundred, but lots of suspends/resumes.


Posted by Fat Bloke on June 09, 2009 at 10:08 AM BST #

"The user can then choose which type of Virtual Desktop they want from: Windows 7. Ubuntu 8.10, OpenSolaris 2009.06"

But OpenSolaris was the only one that performed so badly that it had to be removed altogether after a couple of days. Epic fail...

Posted by guest on June 09, 2009 at 11:00 AM BST #

Anyone know why OpenSolaris performed so badly?

Posted by Glynn Foster on June 09, 2009 at 03:38 PM BST #

All in one rack, brilliant !!

Nice post FatBloke :)

Too bad I missed JavaOne, maybe next year.

Posted by Remold Krol on June 10, 2009 at 03:08 PM BST #

This is brilliant - just what I'm looking for. Do you have some documentation on the build of this setup. I'm very interested in the VirtualBox and JavaOne login stuff. I've mostly built sunrays with vmware - but this is really good.
Cheers and keep up the good work

Posted by Rodger Hanson on June 15, 2009 at 08:31 PM BST #


more info at

Posted by Fat Bloke on June 16, 2009 at 01:28 AM BST #

Thank you for the information provided

Posted by Diş Sağlığı on June 19, 2009 at 12:08 PM BST #


Posted by Film izle on June 19, 2009 at 12:09 PM BST #

can you address the previously mentioning of opensolaris not performing to par at java one via ALP sunray thinclient?
I would think the norm for opensolaris/gnu linux would be an X11 session on the Sunray server not a independent OS. I understand the sunray - ALP - sunrayserver - VDI RDP broker - to window os instance. What protocol is used for b/t sunraysrver and a opensolaris instance on virtualbox?
Thanks - looks very impressive..
Also what would be the deference between the java applet/"java start" application via web secure global desktop to VDI and a RDP client?

Posted by sid wilroy on July 14, 2009 at 12:02 AM BST #


Don't know enough about the specifics of OpenSolaris at JavaOne.
Even when running OpenSolaris/Ubuntu virtual desktops the connections are via the RDP presentation layer built into VirtualBox. This is neat because you can see the actual console of the virtual machine, even when it is booting up. (no waiting in hope for RDP service to start)

SGD connects to existing back end presentation services (X11, Terminal Services, etc) and so you could use SGD with VirtualBox. Simply have SGD launch an app using VBoxManage startvm ...

- FB

Posted by Fat Bloke on July 14, 2009 at 09:58 AM BST #

Post a Comment:
  • HTML Syntax: NOT allowed

Fat Bloke


« May 2016