vSphere ClientOk, you read the title of this post, and you’re thinking “hey, this guy must be goin’ cuckoo for coco puffs.”  No, this is FOR REAL. Here’s the deal: with the help of some people I met this week (Micheal Bell and the rest of the students from my VI3 Fast Track class in Irvine), I figured out how to run the vSphere Client on my Mac OS X. This is something that I’ve wanted to get up and running for a long time, ever since I converted from the Church of Gates and bowed down to the one true computer deity – the all enlightened Steve Jobs.  That’s right folks…I’ve just plucked a bright shiny Apple from the Tree of Virtual Knowledge.

Let’s face it. All of us that use Macs would really love to have a native vSphere Client from VMware, but this is something that I don’t think they are going to focus on very much, at least in the near future. Up until now, If you wanted to run the vSphere Client on Mac OS X, you could go about implementing that via VMware Fusion by running a VM in Unity mode. If you didn’t know about Unity view, it removes or hides the VM from the screen and simply displays the applications that are running in the VM. That’s great and all – and I personally love VMware Fusion and think it’s a freaking awesome product – but I always thought it would be so much better to just have a client on Mac OS X that didn’t require me to load a VM just to get access to it.

Well, as the Beatles said, “I get by with a little help from my friends.”  The other day, we finally figured out a way to get access to the vSphere Client on Mac OS X. Because this solution has only been done in a select few environments, it work for some but not others… so don’t hate! So far this has worked for me at my office and while connected remotely to my environments via VPN.

The way I got it to work was by using a few open source components and by installing a few extra bits of software on my Mac. I have to say that I didn’t really invent the wheel here. All I did was use X11, MacPorts, rdesktop, and Seamlessrdp to create a remote terminal session to a Windows Server 2003 R2 VM running in a remote VMware Fusion VM and also another one hosted on an ESX Server in my lab. Here is a step by step walkthrough detailing what I did and how I got everything flowing:

  • Install X11 on your Mac’s, you can find that on your Mac OS X DVD or it can even be downloaded from the web.
  • Go to the MacPorts site and download the version of the tools that matches your Mac. MacPorts also  known as DarwinPorts is a free/open source package management system that simplifies the installation of software on the Mac OS X and Darwin operating systems.
  • After installing the MacPorts packages, open a terminal and run the ports update command to update the application to the latest and greatest version: sudo /opt/local/bin/port -v selfupdate
  • Install the rdesktop client with MacPorts by typing the following command in the Terminal: sudo /opt/local/bin/port install rdesktop
  • After the application is installed, confirm that you have the latest version of rdesktop by typing: /opt/local/bin/rdesktop   scroll to the top of the Terminal windows and see that you have rdesktop version 1.6.0.
  • On the Windows Server 2003 VM, configure a user account that has permissions to access the vSphere environment. This could be a local system or Active Directory based account.
  • Configure the Windows Server 2003 R2 to allow remote desktop connections, and make sure to add the users that will be allow to connect to that system via RDP.
  • Install the vSphere Client on the Wndows Server 2003 R2 server
  • Modify the Windows Path Environment Variable and add the path of the directory where the vSphere Client executable file is located, the default path is always: C:\Program Files\VMware\Infrastructure\Virtual Infrastructure Client\Launcher make sure to put a semi-colon ; at the end of the path currently listed in the variable value field.
Environment Variables

Environment Variables

    • Download the seamlessrdp application and extract it to the root of the system drive called seamlessrdp
    • Test the connection to the Windows Server 2003 by opening a session from the Mac by typing the following command in the Terminal window:  /opt/local/bin/rdesktop <ip or FQDN> A remote desktop windows should appear if everything is working correctly and you can connect to the system on the network.
    • Once the connection to the system works, test the seamlessrdp connection to the vSphere Client from the Mac by typing the following command on the Terminal window: /opt/local/bin/rdesktop -A -s “c:\seamlessrdp\seamlessrdpshell.exe VpxClient” -u username -p password -a 16 FQDN or IP

      syntax breakdown:

      • -A = Start application in seamless mode
      • -s =  Specifies the path to the location of the Seamless files
      • -u =  Username
      • -p =  Password
      • -a =  Color bits (8, 16, or 32)

      After the connection is made to the client, the capability to connect CD-ROM, Floppies is not available because it’s an obvious remote connection.

      You can now launch the application from the terminal everytime or you can setup an icon for it so you can keep it in the dock.

      Setting up Icon To Launch vSphere Client application:

      • Use a text editor and open a new document
      • Make sure is set to a plain text format
      • type the command used to connect to the Windows Server 2003
      • Save the file as vSphereClient and use the .command extension. Go to the location where the file is saved and use the Get Info and select to hide the extension on that file. This way you dont have to see that .command on the file and it looks like a regular icon in the dock.
      • Make the file executable by opening the Terminal application and entering the following command: sudo chmod 777 /path/to/vSphereClient.command file
      • You can now change the icon of the file to something you like or something that identifies with VMware.

      This worked great with Windows Server 2003 R2 as the target server that I used to host the vSphere client, but when I tried the same steps listed on a Windows Server 2008 they didn’t work. I was able to open a remote desktop session to the VM but the session was a bif window and it didnt opent he application at all. So If any one with skills on UNIX, Linux, OS X can get this to work with Windows Server 2008 please let me know.  Get ready to bite your chompers into that apple!

      vSphere Client on Mac OS X Demo