Some moons ago, we talked about Cisco Nexus1KV switch and how to install it in our virtual infrastructure. You can refresh your memory by clicking here.
We saw how to use the VUM (VMware vSphere Update Manager) to install our VEM modules. This is the neat way of doing it, but sometimes VUM just wouldn’t cut. For reasons that may be hard to determine. Sometimes disabling VMware HA, installing the VEM and re-enable HA helps, but sometimes it does not. Recently I was installing VEMs on three *identical* hardware hosts with the *identical* version of ESXi hypervisor with funny result: only one out of three was successfully installed with this VUM method. Others? Well, VUM throws this error message:
“vDS operation failed on host <hostname>, got (vmodl.fault.SystemError) exception”
And in Recent Tasks an additional message was listed:
“The operation is not supported on the selected inventory objects. Check the events for the objects selected for the operation.”
Well, I doubt that log digging would provide any answers. Even if it did, this was a great opportunity to try the alternate way of installing VEM module 🙂
So, how do we do this? Manually! We need to do what VUM failed to do.
First, under the “Configuration->Security Profile” of our ESXi host we enable SSH access:
Now the most tricky part is to find appropriate VEM module library. Remember how we used to connect to VSM to obtain an Nexus VSM extension that was needed to be registered as a plug-in inside the Virtual Center? Well, this is the exact spot we come back now to download needed library:
If we hover above wanted VIB file, in the status bar of our browser we should see a hyper link to it. For example:
Copy this link, we are going to need it…
We click now that link and save a VIB file somewhere on the local disk. Now we need to transfer this VIB file to the ESXi host. One way of doing it is using SFTP protocol and WinSCP application. We can now install this VIB from a ESXi itself or install by downloading a VIB from the VSM directly using noted hyper link. Let’s go for a second way. First is mentioned as an option.
We log in to the ESXi console with some SSH application, such as Putty, and go to the folder we placed the VIB file. The installation is done with just one command:
“esxcli software vib install -v http://10.x.y.41/cisco/vib20/cisco-vem-v150-esx/Cisco_bootbank_cisco-vem-v150-esx_188.8.131.52.1.1.0-3.1.1.vib”
This command is entered in a single line, by the way, and the result of running it is hopefully this:
So with the command “esxcli software vib install” we started installation, and with the command “vem status” we verified that installation was successful.
Now the VEM agent is installed and running on the ESXi host. We still need to go back to Virtual Center and add this host to the Nexus virtual distributed switch, as described in this article, under the section “Step Bv: Adding VEMs”. In this case the VUM will see that the right VEM is installed on host and will just reconfigure virtual switch, without trying to install the library.
I hope this helped somebody. If so, it’s worth blogging!