Saturday, 2 January 2016

VMware Labs: ESXi Embedded Host Client Fling



Written by Suhas Savkoor



Until now, ESXi management was done by two ways. One was by connecting it to a vCenter and logging into this vCenter via a vSphere Client or a Web Client, and the other way, was to directly log into the host via the vSphere Client. This was good, however, I recently came across the ESXi Embedded Host Client, and I found this to be better than the vSphere Client login to host mainly because of two reasons: Easy navigation and no requirement of opening a Putty Session for logging.

You can download the ESXi Embedded Host Client from this link here.

The setup is pretty simple and straightforward. 

1. Enable SSH on the host for which you want to configure the Host Client.

Two paths to proceed further:

Path 1:
In the SSH of the host, run the following command:

 ssh root@<esxip> esxcli software vib install -v <URL>

How to get the URL? 
In the Fling page, on the left side, from the drop-down select the esxui-singed.vib and right click the download button. 
Then go to the SSH session and in the place of <URL>, press Shift+Insert or Right click which will paste the URL. 

Run the command, and it will prompt for the root password. The VIB installation completion status will be displayed. 

Path 2:
Offline Install:

If you are using a 5.x host, from the drop down choose the 5.x bundle, otherwise the 6.x bundle. 
Check Agree and download box and click download. 

Login to the host via the vSphere client and upload the VIB to a datastore.


Open a SSH to this host and run the below command:
scp /path/to/downloaded/vib/esxui.vib root@<esxip>:/tmp

This looks something like below for my environment:
scp /vmfs/volumes/Protected_LUN/VMware_bootbank_esx-ui_0.0.2-0.1.3357452.vib root@192.168.1.176:/tmp 

Enter the Password when prompted. This will import the VIB from the datastore to the tmp folder of the host. 

Then to install the VIB run the following command:

ssh root@<esxip> esxcli software vib install -v /tmp/esxui.vib 

It will ask for the password of the ESXi host. Once completed the output is something like this:



Host reboot is not required.

To manage this:

Open a browser and enter the URL: https://<host_IP>/ui
You might receive: 503 Service unavailable


To resolve this:
1. Go back to the SSH session of this host.
2. Go to the following directory
# cd /etc/vmware/rhttpproxy/
3. Here you will see a file called endpoints.conf
Open this file using an editor

#vi endpoints.conf
4. Press "i" to begin edit and remove the following line:
/ui local 8308 redirect allow
5. Save the file by pressing ESC and then typing :wq!
6. Restart the rhttpproxy service using the below command:
/etc/init.d/rhttpporxy restart 

Login to the client again using the same address and you will be presented with the login screen.


Logging in with root credentials will give you the management page:


Now, there are lot of options here that you can explore from deploying VMs to managing the host.
The best part I liked about this is the ESXi logs. If you click the Monitor option on the left side and go to Logs tab you will get the list of ESXi logs that are available. Upon selecting the logs you can view that particular logging in the window below.

The host client is great and I will be actively testing this and will update this article if needed be.

Cheers!