Pages

Tuesday, 3 April 2012

What is esxtop?

What is esxtop?

Where did it come from?

If you've used the Linux or Unix top command, esxtop may
already be familiar to you. Esxtop is VMware's version of this
popular "top" command that run on an ESX or ESXi server. Both top and esxtop run
only at the command line of a server. You would access these commands by either
going directly to a server console or by connecting to a server remotely via SSH
(or telnet, if enabled).

What does esxtop do?

Esxtop is used to analyze real-time performance data from an
individual ESX or ESXi server. You bring it up by going to the physical server
console or remote console via SSH, logging in, and typing
esxtop.
Most people would say that esxtop analyzes CPU, Memory,
Disk, and Network statistics. More specifically, you'll find that
esxtop has 8 different "displays" that show CPU, interrupt,
memory, network, disk adapter, disk interface, disk VM, and power management, as
you see in the screenshot below.
In the graphic, you can see that each of these different displays are brought
up by pressing the corresponding letter for each display (i.e., press "d" for
the "disk adapter" display).
Once in a display, you'll always have uptime and CPU trending info at the top
of each screen. From there, you'll have a column view that shows stats for
different objects. For example, in the CPU view you have processes running on
the host down the left side (which could correspond to a particular VM) and
columns across the top with different stats for each of those processes.
In the graphic above, you see the CPU display rolled up to just show virtual
machines. For each VM there is information about the percent of CPU used
allocated. One of the most valuable stats is "CPU Ready" (which you can learn
more about here, or in my vSphere Performance video below).

What's the difference between esxtop on ESX and ESXi?

You'll find that you can run esxtop on either ESX or ESXi
without any trouble. The only difference will be that esxtop on
ESX will show information about the service console. On ESX, you'll also find a
nice man page for esxtop that you can access
by typing man esxtop. In fact, I have used that man page to
figure out what I want to do with esxtop then gone over to my
ESXi server to do it.

What's the difference between esxtop and resxtop?

You'll see both esxtop and resxtop
mentioned when talking about esxtop. The only
difference is that esxtop is run locally on an ESX or ESXi
server. Resxtop, on the other hand, is "remote esxtop" and it
is only used to run esxtop on another server. For example, you
would use resxtop to monitor performance of an ESXi server if
you were currently logged into a vMA (vSphere Management Assistant) virtual
appliance.

When running resxtop, you will have to specify the ESX or
ESXi server hostname, username, and password, as you see below:

How do you control esxtop columns and sort order?

Besides looking at different displays in esxtop you can also
do two other things to manipulate what you see:

Adding or removing fields - when using
esxtop you want to make sure that your SSH appliance is the
full width of your monitor to get as much on the screen as you can. It is common
for the many columns fields provided by esxtop to run off the
screen and for you to not be able to view them. In fact, the fields that are off
the screen may be the fields that you want, so resizing the console window or
removing fields may be necessary to get the info you are looking for. You can
add or remove the fields that are shown with the f or
F key. This will take you to a screen like in the graphic below
that allows you to select (using letters) which fields you want to remove or
add. An asterisk next to a field means that it is currently being displayed.
When you press the corresponding letter for that field, the field is either
added or removed.

Changing field order - you can also change the order that
the fields are displayed in. This is done by pressing the o or
O key which will bring up the order screen below. From there,
similar to adding or removing fields, you will use letters to move fields up and
down in the order of display.

What are the best resources to learn more about
esxtop?

In this post my goal was to give you an overview of what
esxtop is and the basics of how it works. However,
esxtop is a powerful advanced performance monitoring tool, and
there is a lot more that you can do with it.