Discovering vSphere web client 5.1

When the web client was first announced last year, I was really excited with what it had to offer. I was personally even more excited because I really thought, I would finally have no need to run a windows VM on my mbp.

Then I had a rude awakening which triggered me to write this post. Basically, even though you could access the web-client via the browser on OS X, there is still an element called the “Client Integration Plug-in” that cannot be installed on OS X. :(. This and a few more things just killed all my motivation to use the web-client. I figured if I was going to run a VM to access a fully functional client, I might as well run the C# client. But now things have changed a bit.

To start off, the client integration part has still not changed, it still does not fully work on OS X. I just tried it on 10.8 with no luck. So what does this really mean? Lack of inability to install this will keep at least two options away from you that I know of.

  1. Ability to launch the console of the VM
  2. Ability to transfer files to and from datastores
These are the only two that I am aware of, I am not sure if there are any other gotchas yet. But clearly these are not the end of the world. Another thing that I found disappointing was the inability to access VUM from the web-client. Seriously? Why?
So now that I am done with all the trash talking. Lets talk about why should you still get on the web-client bandwagon soon.
  1. I have been told, support for OS X is on the roadmap (that should address the client integration plugin issue)
  2. The VUM plug-in is coming soon
  3. All/most new enhancements of 5.1 are visible and accesible via the web-client ONLY
  4. 5.1 will be the last release for the traditional C# client we have used for all these years. Going forward, web-client is the only way.

So there, #4 should be enough to motivate one to move forward. But let’s keep the draconian approach out for a little bit. The web-client has had a major face lift and IMO has a much better UI. Sure, you will feel lost in the beginning but you will notice the web-client will provide you a much better user experience. The UI is well thought out and has a much better work flow.

To start off, one can now assign searchable tags to objects inside vCenter and yes one object can have more than one tag assigned to it. I am sure this will be a very helpful new feature in large environments.

How many times have you started doing something in vCenter only to realize you have to go back to a different object to get some info. But you can’t without canceling the wizard and what you are doing. In comes work in progress, this is a pretty handy way to address those situations where you can pause what you are doing and come back to it when you are ready.

Another one that I find very useful is the log browser. Basically it gives you the ability to view the logs for your vCenter and all yours hosts in one place. Isn’t that nice? Single pane of glass is what we always wanted. And yes it will let you see all the logs of your host, and you can switch between the type of logs using the drop down list as shown below.

 

These are simply some of the new features that the web-client has to offer among so many more. During the beta, I noticed the OS X compatibility issue but was hopeful for it to be fixed before GA. That didn’t happen but at least its on the road map. The VUM plugin is coming soon along with most other third party plug-ins. Keep in mind, dont be shocked if future third party plug-ins are only available for the web-client. It only makes sense for the vendors to develop for the client that will stay.

Lastly, if you want to make use of all the enhancements in 5.1, the web-client is a must. I was originally not too impressed by the original web client last year, but I must say the 5.1 is not just as good as the traditional c# client but better. Moreover as mentioned above, the traditional client is going away, now will be a good time to get to know your new friend.

Ops Manager does not show up under Assets in vSphere Client

Ok so I just went through some very painful hours and I hope nobody else has to ever go through this. Thats the reason fro this post. So I am sort of rearranging parts of my lab which really started the whole mess. I had to redeploy Operations Manager. Sounds pretty simple right? Read on..

Everything went great as far as registering Ops Mgr to my vCenter etc but then something odd really happened. I wasn’t able to apply the license for Ops Mgr. Keep in mind, you can only apply the license for Ops Mgr using the vSphere-Client under Home –>Administration –> Licensing, when there click on the “Asset” radio button and there you would see your unlicensed Ops Mgr waiting for your license key.

Only in my case, I saw both my hosts and the vCenter but no Ops Mgr. I tried everything under the sun from un-registering, re-registering but nothing really worked. I power cycled the vApp, restarted by vCenter service in hopes for it to start seeing things. Interestingly I could see “vCenter Operations Manager” in my home screen under “Solutions and Applications” but clicking it came back with a message saying you are not licensed you idiot. Well not quite but you know what I mean.

I was inches away from re-deploying the vApp when I figured well lets try one more thing. I looked around and noticed people had more luck with launching the vSphere client from the vCenter Server and that seem to have worked for a few folks. I figured well why not. So far I was accessing all this from the vSphere client installed on my laptop. So I logged into my vCenter (Mr. Hades) and launched the vSphere client there to see if that made a difference.


I was pleasantly surprised to see that this time around I did see Ops Mgr under Assets in licensing. Why did this work and the other didn’t? I have no clue but if I have to take a guess I would say it must have something to do with the vSphere client and not really Ops Mgr, but I am not sure. Now I did deploy Ops Mgr a few months ago and don’t recall having this issue before (I do have bad memory so its possible that I just forgot). But this is really for someone else out there who happens to see the same issue as I did, try accessing your vCenter from the vSphere client installed on the vCenter server itself and see if you have any luck.

From here onwards, you should be able to license your Ops Mgr and finally log in. For the record I am running vSphere 5 U1 and I am NOT running the vCSA. Getting the license applied in Ops Mgr is really important because basically you can’t really login to the Ops Mgr portal if its not licensed. If you are having the same issue as described above, hopefully you found this blog before you ruined your entire day like I did.

 

Updating from 5.0 to 5.0 U1 without VUM

I was trying to get a small cluster updated from 5.0 to 5.0 update 1 today. With VUM in play it’s pretty simple right. The issue was I didn’t have VUM and we are not using Auto Deploy yet. So that left me with the CLI options to update the hosts.

Turns out it’s pretty straight forward:

  • Download the update zip file here . In case that link goes stale you can get the update from http://www.vmware.com/patchmgr/findPatch.portal
  • Copy it to a local datastore on the host you want to update (I was not able to update using my shared storage for some reason)
  • Once you have copied the zip file, enable SSH on the host
  • Enter the host into maintenance mode (very important)
  • SSH into the host and type

esxcli software vib install -d /vmfs/volumes/[Datastore]/update-from-esxi5.0-5.0_update01.zip

Where [Datastore] is the name of your datastore

Once you run the command above, there will be a pause for a few seconds and then your screen will be full of a bunch of bla bla bla.. scroll all the way up right under where you executed the command and you should see:

Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective
Reboot Required: true

If you see that you are all set, reboot your host. Once your host reboots, it will have U1 running (Build 623860). You can repeat the steps for any other hosts that you may want to update.

Now once your host is running U1, guess what!! Windows 8 appears in the drop down and works all the way from powering on, installing OS to installing VMware tools etc.. have fun.. ESXi 5 Update 1 release notes are here.

HA Admission control – Percentage of cluster resources

I am sure we are all aware of why HA is all important and awesome to have. It helps you to finish your coffee, smoke your cigarette before rushing towards a server that just went down. Ok maybe not that but you get the idea right. Another thing to keep in mind regarding HA is the admission control policy. I like to call this the policy that saves you from yourself. Basically it keeps check of how many resources are available and how many will be needed for a failover to happen. It keeps you honest and ensures that the HA’s promise is not broken.

As we already know there are three types of Admission Control Policies to choose from:

  • Host failures cluster  tolerates
  • Percentage of cluster resources reserved as failover spare capacity
  • Specify a failover host
“Host failure cluster tolerates” creates slots which at times could create issues specially if you only have a a few VMs with High CPU counts and memory reservation. Of course you can look at advanced settings that could address this and Duncan can tell you all there is to know about this. The second option which is selecting a percentage of resources is my personal favorite specially due to the flexibility that it provides. We will go over that in a little bit. The last option which lets you specify a failover host is the one thats rarely used and rightly so. After all why would you want a host to just sit there and wait until something goes wrong?
As you may have already noticed, vSphere 5 gives you the option to specify a percentage of failover resources for both CPU and memory. Prior to vSphere 5, this was not the case. I think this is an excellent addition and our clusters will now be more flexible then ever.

25% is whats placed in there by default and what this really means is the 25% of your total CPU and total memory resource across the entire cluster is reserved for your cluster. So in other words, if you have an 8 node cluster, 25% of your resources or resources equal to two host (assuming its a balanced cluster) are reserved for an HA incident. If this happens to be a 32 node cluster and if this is a balanced cluster, resources that equate to 8 nodes will be reserved as 8 is 25% of 32. So keep that in mind before deciding what number to put there. You can’t reserve more than 50% of your resources.

Below is how the resources are calculated for the hosts:

The total host resources available for virtual machines is calculated by adding the hosts’ CPU and memory resources. These amounts are those contained in the host’s root resource pool, not the total physical resources of the host. Resources being used for virtualization purposes are not included. Only hosts that are connected, not in maintenance mode, and have no vSphere HA errors are considered.

So how do you know how much head room do yo have left in the cluster? On your cluster summary tab, you will notice there is no longer a place for you to look at slot size as this method does not use slot sizes. It basically gives you a simple view of how much room you have left.

The Current CPU Failover Capacity is computed by subtracting the total CPU resource requirements from the total host CPU resources and dividing the result by the total host CPU resources. The Current Memory Failover Capacity is calculated similarly.

In vSphere 5, vSphere HA uses the actual reservations of the virtual machines. If a virtual machine does not have reservations, meaning that the reservation is 0, a default of 0MB memory and 32MHz CPU is applied.

So assuming you went with the default of 25% for each resource, 0% as current failover capacity is something you should hope never to see. You are seeing that in my screenshot (above) because my cluster happens to be empty and has no hosts. Lets, say you went ahead and turned on a few VMs and your cluster shows something like below, (98% CPU and 95% memory), this is something to be happy about. This basically means you have 98% of CPU available and 95% of memory available in your cluster.

There is one thing to keep in mind, though 98% of my CPU and 95% of my memory appear under my current failover capacity, this does not account for the 25% of whats reserved for an HA incident. At least thats what I was able to see by the few tests that I ran. What this means is that I can only power on VMs that account for no more than 98-25 = 73% of CPU and 95-25=70% of memory thats free in the cluster. For everything else HA should try to save me from myself.

Let’s look at a quick example to see how these numbers are calculated:

  • The Configured Failover Capacity is set to 25% for both CPU and memory.
  • Cluster is comprised of three hosts, each with 9GHz and 24GB of memory.
  • There are 4 powered-on virtual machines in the cluster with the following configs (assume overhead is 100mb for all VMs in this case):
    • VM1 needs 2GHz and 1GB (no reservation)
    • VM2 needs 2GHz and 2GB (2GB reserved)
    • VM3 needs 1GHz and 2GB (2GB reserved)
    • VM4 needs 3GHz and 6GB (1GHz and 2GB reserved)

So what does our cluster have? Our cluster has 9GHz+9GHz+9GHz = 27GHz of CPU and 24GB+24GB+24Gb=72GB of memory. (These amounts are those contained in the host’s root resource pool, not the total physical resources of the host).

How much resources are we using with our four VMs that are powered on?

Memory = VM reservation + overhead = 0+100+2048+100+2048+100+2048+100= 6544MB = 6.4GB

Note we only used 2048 for VM4 even though it had 6GB configured. Thats because it only had 2GB reserved. Also, VM1 had no reservation so only overhead was used.

CPU = If no reservation use 32MHz for vSphere 5 = 32MHz+32MHz+32MHz+1GHz= 1.096GHz

So what is our current failover capacity?

Memory = (72GB – 6.4Gb)/72= 91%

CPU = (27GHz-1.096GHz)/27= 95.94%=96%

Wow, that is a lot of cluster resources left. Now lets take 25% off from our numbers to come up with exactly how many VMs can we power on before HA starts screaming back with an error.

Memory = 91- 25 = 66%

CPU = 96-25 = 71%

Now keep in mind, selecting the percentage for admission control policy isn’t going to solve all your problems. But I do think that this setting is far better than complex slot sizes and what not. This gives one a simple view of how much room you have in your cluster without messing around with slot sizes. However, unlike cluster host tolerates setting where you can simply add hosts like crazy, using the percentage method may require you to revisit your percentages as you add or remove hosts. At the same time it also gives you more flexibility. So next time you are setting a cluster, think about whats important to you.

 

vSphere Web Client and OS X

So I finally decided to install the Web Client server in my lab. Everything was pretty straight forward as far as installation goes. Ones you get through the wizard, you will basically have to register the Web Client with the vCenter server. This happens on the server where the web client server is installed via the browser. You will go to https://web-client-server:9443/admin-app/ where server is the name/IP of the web client server. Keep in mind this requires flash to be installed on the server. I am not a big fan of installing flash unless absolutely needed, so here is the workaround thats mentioned in this kb article.

If you don’t want to install flash on the web-client server, simply type the following command on your web-client server:

admin-cmd.bat register https://web-client-server:9443/vsphere-client https://vCenter-server username password

Be sure to replace the portions in blue above with your info (web-client server, vCenter server, username, password).

Once the registration is complete, you can simply head over to https://web-client-server:9443/vsphere-client and login. However, be warned, though this is a great alternative to the vSphere client, it does not have all the functionalities and even less if you are an unfortunate Mac user.

 At the bottom left of the screen, you will notice where it says “Download Client Integration Plug-in”, and if you are a Mac user you will be disappointed. Why? Because this will not install, you will be prompted with with a message as displayed below:

 

So whats the big deal?

To start off, client integration does a couple of important thing that I am aware of:

  1. Allows you to access a virtual machine’s console in the vSphere Web Client
  2. Allows you to connect virtual devices that reside on a client computer to a virtual machine (think USB devices on a client machine)

So if your an OS X user, you will not be able to perform those tasks using your web-client. Will this kill you? Probably not but it’s disappointing to see that OS X has been left out for now. I have heard that support for OS X is in the roadmap for the future. When exactly? No clue. I guess after crying for years, VMware listened to the Linux users and released the web-client and I think its only a matter of time before the Mac world starts to see all the features.

Don’t get me wrong. The web-client doesn’t cover all the features a traditional vSphere client has but it’s ver 1 and I am sure it will get there soon. If you are a Mac user, keep in mind the functionality of the web-client on OS X is even more limited.Will I still use it? Absolutely, this will replace the traditional client we have known for years one day.