Clouds Within Clouds, Part I

Buzzwords, gotta love ‘em.  So the hottest buzzwords right now include cloud (grid) computing, web 2.0, SaaS, semantic web, the list goes on and on.  The buzzword this blog deals with incorporates virtual desktop on a virtual host, which I call clouds within clouds.  For background on virtualization, please read this blog.

Background:

I’m going to assume you know what cloud computing and virtualization is.  If you do not, please read this blog.  So with the help of web 2.0 technologies (javascript libraries, ajax, adobe air/flex, RIA pluggins), coupled with virtual servers (vmware server, Virtual Box), Desktop as a Service is now possible as a thin client, driven by your browser.  For the past decade or so, we’ve had vpn, and in the past couple of years, we’ve managed to defer a vpn server within the clouds.

The problem (and not necessarily a big problem), is that vpn desktops tend to be a little on the thick side and require LAN like speeds.  This includes Microsoft’s Citrix implementation as well as Linux strains of vpn.  Now we have two relatively lightweight Desktops that’s 100% served by virtual hosts, yet runs on your browser as if it were a web page (assuming you have a modern browser like Firefox).  The implications are unknown but I believe that the influence in the Enterprise 2.0 arena and collaboration will depend upon light weight, open source, browser based desktops.

All Eyes with Ulteo:

There are multiple browser desktops but I will focus on two.  Both are not google’s Chrome OS because Chrome OS seemed to be “geared” towards mobile and netbook market, where as I’m focusing on virtual desktops geared more towards laptop to desktop environments.  The two technologies in question are Ulteo and eyeOS.  Ulteo is created by Gael Duval who also created Mandriva Linux.  Ulteo is one of the more complex virtual desktops and is based off of Debian/Ubuntu.  The cool thing is that it can be deployed off of Microsoft servers which implies organizations can Ubuntu instances under their current infrastructure without adding any non-Windows servers.  For the purpose of this blog, I used a LAMP stack to implement the Ulteo environment.  Of the two virtual desktops, Ulteo is more for desktops but may be light enough for laptops.

EyeOS is a very light weight virtual desktop that’s totally a PHP application.  The back end I used is MySQL and is therefore, LAMP driven.  Unlike Ulteo, it is Linux agnostic (or OS agnostic for that matter) and does not retain any Linux modules or libraries.  It can be light enough for netbooks but can still be robust for your desktop needs.  For the purpose of this blog, I’ve tested with a dual core AMD laptop with 2 gigs of ram and my AMD quad core desktop with 8 gigs of ram.

The Technology:

What’s great about the tech stack for both virtual desktops is that both are driven by the LAMP stack on the server side.  EyeOS, on the client side, needs javascript enabled as it depends on technologies like ajax and json to interact with the server.  Ulteo is thicker, as does require a Java Virtual Machine (JDK 5/6) installed in the browser.  Not only does a jvm need to be installed, but the hardware and network requirements are fairly heavy.  Heavy as in dual or quad core CPU with a minimum of  a gig of RAM.

The Installation Process:

Both the installation instructions are included under the references below.  Of the two, eyeOS was the easiest, by far.  It required a 3.6 MB tar ball download, an extraction to my php folder, a change to the database and we are in business.  Ulteo wasn’t complicated, but was time consuming.  First, the host I initially installed it on was a 64 bit instance of Ubuntu Jaunty (9.04).  I quickly found out the install binaries are 32 bit.  I could have downloaded a generic, Linux independent version of the binaries, extract, make and configured the application but I didn’t want to.  I went down the path of including the package references in my sources.list file and work with aptitude package manager via the command line.  Once I rebuilt my host with a 32 bit version of Ubuntu (Jaunty 9.04), the installation process was self explanatory.  The longest part of the installation process were the downloads for the session manager and session manager administration modules (roughly a gig total once it was said and done).

Configuration:

Configuration was easy for both Ulteo and EyeOS.  I spent less than half an hour going through various settings for each and found that the process was intuitive.  Ulteo was slightly more complicated because you have an option of installing both the administrative module and the desktop engine on different servers.

Performance:

I evaluated both Ulteo and EyeOS on wireless and LAN environments.  My wireless setup is Wireless-N end to end on the desktop.  On the laptop, the wireless setup is Wireless-N on the broadcasting portion and receives at Wireless-G.  The LAN is a gigabit environment.  That said, the wireless on EyeOS was blazing fast.  That’s totally different from Ulteo.  Ulteo’s wireless requirement, unfortunately, does not include wireless.  At least at my speeds (which isn’t too shabby by today’s standards).  My LAN handled the Ulteo interface rather well, but the wireless issue is near deal killer on the netbook/laptop side, especially with the Wireless-G card I have in my laptop.

Features:

The features for both are extensive.  Both can browse the internet, create documents and launch apps.  EyeOS’s applications are more like widgets, but this isn’t a bad thing.  The widgets are fast and effective (and pretty).  Ulteo resembles launching true applications.  In fact, Ulteo utilizes xfce desktop found in XUbuntu.  It installs (default out of the box) Open Office, Adobe Reader and even Gimp, which all renders well provided you are wired to a LAN line.  Both can install new apps rather easily.  The only thing I really wished I could do is open a terminal and type cool commands like chmod (at least on Ulteo).

Conclusion:

The future of Enterprise level collaboration depends highly on this type of technology.  Don’t be surprised if people start to update their tweets or facebook statuses via virtual desktops.  I wouldn’t be surprised if social networking and collaboration sites are virtual desktops.  It’s a new paradigm on applications and traditional web pages blending into a collaborative desktop like interface.  It certainly has its use in Enterprise 2.0 like applications and I’m excited to see how.

References:

  • http://wiki.eyeos.org/Install_EyeOS
  • http://www.ulteo.com/home/ovdi/openvirtualdesktop/documentation/installation?autolang=en
  • http://en.wikipedia.org/wiki/Cloud_computing
  • http://en.wikipedia.org/wiki/Ulteo
  • http://en.wikipedia.org/wiki/EyeOS
  • http://news.cnet.com/8301-17939_109-10281744-2.html

Follow

Get every new post delivered to your Inbox.