VMware View Open Client

So…that crazy, proprietary company, VMware, today released the first open-source VDI client! (Just a small jab) :-) It’s actually a very exciting event in terms of the possibilities it opens up. Already out of the gates, VMware has announced in the press release a bunch of different partners that are leveraging this View Open client in their own solutions (ChipPC, Novell, HP, Sun…). http://vmware.com/company/news/releases/view_open_client.html

The new View Open Client includes all the major components needed for someone to take the software, adapt it to their needs and package up a rich, customized solution. This should really assist all the players in the eco-system to reduce their time to market on solutions. I’m hoping this results in some new and innovative ways to deliver virtual desktops!

Another great use case that I hope we soon see more of are commercially supported (by the vendor and VMware), turn-key solution for turning your fat PC into a dumb, highly managed “thin client’. There are some solutions out there today, but I would think that this new View Open Client would allow someone to put together a package to do this easily with out-of-the-box View integration. The great part is, that a solution someone in the eco-system puts together using the View Open Client can be submitted to VMware for formal certification and support!

If you have some good ideas on how to apply this, have at it: http://code.google.com/p/vmware-view-open-client/

VMware Infrastructure Client on Ubuntu … an Update

I finally got the VMware Infrastructure Client running directly on my Ubuntu Linux.  I use the word running, because I’m not prepared to use the word working just yet.  Though the application seems fairly stable and most feature / functionality I’ve tested thus has worked, I’ve already found two bugs, one of which will hang your entire terminal.  And believe me, I’ve only just begun to test, so who knows how many more bugs I’ll find?

But until today, I couldn’t even get the client to launch and I haven’t been able to find anyone else that has been able to do so either.  So I’m going to consider this a minor success and a step in the right direction.  But just to be clear, I would NOT advise you start managing your environment with the VIC on wine just yet! :)

OK, here’s the proceedure I used get this running.

  1. My environment (I haven’t yet tried this proceedure on any other combination of Linux and Wine):
    • ubuntu 8.10 (kernel 2.6.27-11)
    • wine-1.1.14
  2. Download and install the latest version of winetricks.
  3. Run winetricks and select ONLY the following options:  dotnet20, ie6 and winxp.  Now, for future reference, I believe the bugs I’ve already found can be cured with a few more options.  But, one step at a time.  I also know that a couple options will crash the application.
  4. Download and install the VMware Infrastructure Client.  You can get this by going to http://<ip of your vCenter server>.
  5. Here’s the critical part, you need to modify your vCenter (or ESX) server to accept both HTTP and HTTPS.  By defult, vCenter and ESX will accept HTTP requests, but they are immediately redirected to HTTPS.  And currently, this will break the VIC on wine.  Do NOT do this on a production vCenter server!! To modify your vCenter server, do the following:
    • On your vCenter server, go to C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter
    • Copy proxy.xml to proxy.xml.bak
    • Open proxy.xml with a text editor
    • Find the lines with httpsWithRedirect and replace with httpAndHttps
    • Restart the “VMware VirtualCenter Server” Service
  6. Back on your linux workstation, go to ~/.wine/drive_c/Program Files/VMware/Infrastructure/Virtual Infrastructure Client/Launcher/
  7. Execute wine VpxClient.exe and you should see the following:

    vic_login_prompt1

  8. Make sure you put an http:// in front of the IP or DNS name of your vCenter server.  Otherwise, it will try to connect via HTTPS and again, this is currently problematic.
  9. That should do it.

OK, here are the bugs that I’ve found so far (other than SSL, which I’ve already mentioned):

  • Using the right click menu will freeze your screen about 50% of the time.  When it freezes, you’ll have to connect to another TTY, find the process and kill it.  But the alternative menus seem to work.  For example, if you right click on a host and click “New Virtual Machine … ” your screen will likely freeze.  However, if instead you click the “New Virtual Machine” link on the Summary tab, the New Virtual Machine Wizard will properly launch.
  • The New Virtual Machine Wizard will not advance past the Virtual Disk Capacity step.  It produces the error “The disk capacity entered was not a properly formatted number or was out of range …”  It gives this same error no matter what value I enter.  Actually, simply clicking Cancel will produce the error.  Weird.
  • The Getting Started tab correctly renders the proper HTML, but the viewing area is about 100 x 100 pixels and not adjustable.  (This is nothing more than an annoyance).
  • You can create a folder in a datastore, but you can’t delete one.  Deleting files on a datastore seems to work fine.

Most of the navigation (other than the right click menu I mentioned above), seems to work well.  VMotion worked fine.  Configuring HA and DRS worked fine.  Performance stats rendered fine.  But I’ve got a lot more to test and I’ll update again with my test results as I progress.

Thanks to Dan Kegel (www.kegel.com) and Jeff Warnica (don’t know his website/blog) for your help and pointing me in the right direction!

Here are a few more screenshots of the client in action.  Click on each image for the full scale picture.

screenshot-1

Performance stats, and completed VMotion (in Recent Tasks at bottom)

screenshot-2

Datastore browser

The E.T.D.F. Series — Planning and Preparing the Environment

This is the first post in my e.t.d.f (eating the dog food) series.  I had hoped to get this first one typed up quickly.  But instead, my week was consumed with customer meetings and the logistics around rescheduling a big event I am putting on for the Commonwealth of Kentucky.  (Thanks to a ton of snow and ice, we had to postpone it a few weeks.)  So now that I’ve got a little free time again, let’s get started.

In case you’re just joining us, as a quick recap, this series will document my conversion to a virtual desktop.  Meaning, when this series is over, I will no longer be tied to any physical laptop, PC, mobile phone or whatever.  My dedicated VMware corporate desktop will live full-time on the virtual infrastructure in my house.  I will then connect to my desktop remotely (whether I’m a few rooms away, or a few hundred miles away) via a VMware client or a web interface.  Sounds easy, right?  Well it really is, though we will have some challenges around multimedia, working offline, and accessing some local devices … all of which will be addressed as we progress.

But for now, first things first.  I want to establish some requirements and goals.

  1. The desktop needs to be always on.  When connecting to my desktop, I don’t want to wait for it to power on.  I want to simply launch the client and connect.
  2. I want to be able to securely connect to it anytime, anywhere.  This might sound obvious, but my home Internet connection has a dynamic IP address.  How do I connect remotely when my IP address changes?  And what about security?  Will other people be able to access my desktop from the web too?
  3. My desktop has to be at least as performant as my current local desktop.  The only exception I’ll make here is for high end mulitmedia.
  4. I want my desktop completely maintenance and worry free.  To me, that means:
    • My data is always backed up.
    • My desktop can be destroyed by a hacker or virus (or my own stupidity) and restored to its previous state with little effort and under 30 min.
    • Updating and patching my desktop has to be done automatically, or at least, a fairly painless process.
  5. I want to be able to carry my desktop on a USB stick or LiveCD.  (If you don’t know what this means, I’ll be covering this in more detail when we discuss options for connecting to the desktop)
  6. Finally, I want this to be scalable.  Keeping in mind that this series aimed to also serve as a loose guide to a Proof of Concept, I need to be able to add users and deploy desktops quickly and with minimal effort.

If at the end of this series I have met these goals, then I will consider my conversion a success and my desktop will permanently remain virtual.

So now let’s discuss what we’ll need to make this all a reality.

Server Requirements

VMware virtual desktops run on ESX, so ideally you would want at least one server that is currently on the HCL (Hardware Compatability List).  If you have a server but can’t find it in the “Systems” section of the HCL, then search for the components of your server in “I/O Devices.”  If your components are listed, there’s a good chance that ESX will run just fine.

If you don’t have a server and don’t have a big budget to buy a new one, then have a look at Mike D’s Building a $500 ESXi Host.  Or another great resource is VM-Help.com, which maintains the Unofficial ESX Whitebox HCL.  Keep in mind that anything not on the official HCL won’t be supported by VMware.

As for me, I have three servers in my lab, all of which are HP ML150′s with 8GB of RAM and 300GB of local storage.  Each server is connected to a Buffalo TeraStation iSCSI SAN with close to 1TB of storage.

Network Requirements

At a bare minimum, we’ll need a dedicated Internet connection.  Mine is a business grade, cable modem service provided by Cincinnati Bell with 5Mbps down, 1Mbps up, and a single dynamic external IP address.  We will also need an internal DHCP server with a range of IP addresses set aside for our desktops.  If you’re setting this up as a Proof of Concept for your company, you probably already have a solid Internet connection.  So make sure you’ve got DHCP enabled with enough available IPs for the number of desktops you plan to deploy.

VMware Software

If you haven’t already done so, go sign up for the free 60 day evaluation of VMware View and download the software bundle.  It will contain everything we’ll need from VMware for this project.

Desktop Operating System

My corporate desktop is Windows XP, so I’ll stick with that.  Make sure you’ve got the proper Microsoft licenses secured before deploying desktops.

That’s about it for our planning session.  Now for our homework assignment.  In the next day or two, please be sure to do the following:

  1. Identify at least one server upon which VMware ESX can be installed.  Two servers would be better, if possible.
  2. Make sure you’ve got an internal DHCP server set up.
  3. If you have a separte network team, try to secure a dedicated external IP address.
  4. Download the 60 day evaluation of VMware View.
  5. Download the VMware View Manager Administration Guide.  It’s close to 200 pages long, so don’t worry about reading it now.  And really, following this series will cover most of what’s in the guide anyway.  But it’s nice to have handy as we move along.

On a final note, I’ll be making a separate page next to the “About the Author(s)” page at the top, for quicker access.  See ya next time :)