Well. I’m little bit hesitated for me to write this ESXTOP article. The reason for that is there are quite good ESXTOP articles that everyone refers to. I think I just write something simple and useful from my past Experience for the beginners.
Here we go!
Any system need to be monitored properly. For Vmware ESX Hosts, ESXTOP is absolutely best tool.
This tool can monitor basically everything happening in one host box. Including CPU, MEMORY, DISK, NETWORK I/O. ESXTOP can be pre-configured so it will remember your special settings. It also can be exported to csv file which can be used by performance (Windows), Excel or third part tool (like RVTOOLS).
As a Vmware administrator, I used to check out memory and DISK status everyday morning.
TIP:In the default, ESXTOP refreshs every 5 secs, but you can manually refresh it by press spacebar.
1. How to run ESXTOP
It’s easy. You just need to either use SSH tool (like putty) or just use KVM console (or ILO) to get into server and login in as root. Type esxtop in the black command console, here it is.
2. What should we to check out in CPU?
When you get into esxtop, you can press ‘c’ (not ‘C’), you will get cpu interface. To be honest, most ESX host case issue happens in memory , disk, I/O. For me, only thing you need to focus is%RDY part.
If this %RDY is higher than 10, you may have some troubles with wrong vCPU in some VMs.
TIPs: Press ‘f’ to get into Filed order. Press any keys (‘ABCDEfGH), you can add new filed on the screen.
If you want to save your current configuration, press ‘W’ (not ‘w’) in the main interface (not filed screen), you will get prompt of path where you want save.
3. What should we check for Memory?
Memory is always issue for Vmware admin. I can give you a very simple case. One Engineer is using template to build a new server. After server built, he needs to increase new VM memory from 1 GB to 4GB. So he added memory in the configuration file, done? No. He forget to change the setting on the Option->Memory. So his vm is still limited to use 1GB memory instead of 4GB. If you check VM itself, it’s fine. System shows 4GB memory, but from VM level, Host is only granting it 1GB physical memory and 3GB balloon memory.
As you know, Ballon memory is kind of slow procedure. So we don’t want that. I found it at second day when I check out memory part.
Press ‘m’ to get into memory. Press ‘f’ to get into field selection window. Press ‘i’ to select MCTL.
Make sure MCTLSZ is 0. If it is not, check out VM is ballooning or not from vClient.
4. What should we check for Disk VM?
Disk VM is view for individual VM I/O activity. Normally, CMDs is the one we care about. It indicates how much Disk Command this VM execute per second. Normall, CMD value is no more than 2000.
CASE: One VM got virus attacked. The VM is writing disk crazily. The value of CMD was 20,000!! It flooded whole SAN box.
DAVG /cmd is latency of disk read or write. It depends on disk you use. For FC disk, should less than 20. For SATA, should be around 200. You can select filed ‘f’ and ‘j’ for latency stats
5. Looking for help?
Just press ‘h’ key at anytime.
6. How to save esxtop result to csv?
login to console
preconfigure your esxtop and save it (use ‘W’)
run “esxtop -b -d 2 -n 30 > esxtopcapture.csv”
-b stands for batchmode.
-d 2 is a delay for 2 seconds
-n 30 is to get 30 sample (it means 1 minute with 2 sec delay).
7. How to read data?
You can load data with windows performance. But I use esxplot.
Go to http://labs.vmware.com/flings/esxplot and download esxplot.
Install in the Windows. Run esxplot.exe at esxplot\bin folder.
Then, import your data. Once you import data, don’t forget to double click your host name to expend all details.
If anyone is interested in full long bible, please following these links:
ESX Bible: http://communities.vmware.com/docs/DOC-9279
Great ESX blog: http://www.yellow-bricks.com/esxtop/