I have two hosts running the free ESXi hypervisor. However, we use Nagios for monitoring, and I've received conflicting information about how we should monitor these systems. Are my findings below accurate?

  1. ESXi with free license does not support SNMP monitoring via Nagios. True?
  2. vSphere supports SNMP monitoring via Nagios. True?
  3. Upgrade to vSphere simply requires a license change in the host. Really?

I was under the impression that ESXi does not include the RHEL environment that would allow us to install the Nagios plugins, so it seems weird that a simple license change would suddenly give us root access, and allow us to monitor it. My co-worker said he was recently forced to rebuild a vSphere host from scratch instead of upgrading ESXi, so I'd like to know if that is a requirement or not.

Also, if you monitor your VMware hosts with Nagios, please let me know if you have a better way of doing it.


I'm a VMware neophyte and I've never been able to understand the naming convention they use in relation to which "version" is which but I will tell you that I recently implemented VMware vSphere Hypervisor, which I believe is the new name for ESXi. It does not support SNMP without a purchased license. If you purchase one of the Essentials Kits you can enable SNMP, which is what I did just 2 weeks ago. Once we recieved our Essentials Kit license, I installed vCenter, added the license, added my hosts, and that was it. I then enabled and configured SNMP and I'm now able to manage the server hardware via DOMSA (Dell OpenManage Server Administrator) and recieve SNMP traps from the hosts via DITA (Dell IT Assistant).

I can't help you with RHEL but I can tell you that you can and need to license the hosts in order to enable SNMP on those hosts.



  • +1. Regardless of being a neophyte, you've provided the right answer, clearly and succinctly. May 3 '11 at 4:18
  • Thanks! I'm going to pick up the Essentials Kit and go from there. May 3 '11 at 19:42
  • Glad to help...
    – joeqwerty
    May 3 '11 at 21:25

Skipping your questions - these are answered more or less above.

For monitoring our (free) VMware ESXi 4.x hosts and their VM's, we use the excellent check_vmware3.pl plugin.

You will need the VMware Infrastructure (VI) Perl Toolkit for this to be installed on your Nagios-host. We use the vShpere CLI on top of this.

EDIT: And as of today (May 3rd 2011) a new version of check_esxi_hardware.py "to monitor the hardware of mainly ESXi servers" was released.

  • Thanks. This was also helpful. We don't use SNMP exclusively, so we'll probably be using this as well. May 3 '11 at 19:43

To clarify the question about whether all it takes to upgrade from the free ESXi to the licensed ESXi is a licenses file: Yes. All you need to do is to add a license file to ESXi, no reinstall or anything like that is required.

What you cannot do is "upgrade" from ESX (let's say 4.0) to ESXi 4.1, a change in hypervisor requires a "rebuild" as you'd put it.


A couple things to clarify:

ESX has the RHEL environment, ESXi is a much more slimmed down environment. The free licensing is only available on ESXi, not free on ESX - but beyond that, all of the licensing for the editions is identical (licensing for, say, Enterprise edition will work on either ESXi or ESX). The "root access" you're talking about is console access to the RHEL environment, which is not present in ESXi, no matter what license level you use.

Further, ESX is gone and forgotten as of vSphere 5 (4.1 is its last major version); start moving off of it now.

The full battery of performance information (per-host and per-VM) tracked by VMware isn't exposed via SNMP. The web service APIs are the correct way to get at it; I think the native SNMP implementation just does some limited traps for alerting purposes.

  • 1
    That's not true, you can gain full access to the RHEL hypervisor which ESXi runs on. That can be done either at the console or via ssh. To use ssh however you must first enable it via the ESX console. The root password is the same as the admin password.
    – Red Tux
    May 3 '11 at 2:11
  • @Shane: Isn't it the case that the platform is ESXi and the product is vSphere (Free, Standard, Advanced, etc.)? In addition you can then purchase an Essentials or Acceleration kit? I swear I can't make sense of the VMware product line. I'm afraid I've gotten into the virtualization game pretty late.
    – joeqwerty
    May 3 '11 at 2:19
  • 2
    @Shane I don't believe it's Busybox as the shell, I think it's full blown bash, and yes the Hypervisor is using RHEL. It looks like RHEL5 and FC6 in places.
    – Red Tux
    May 3 '11 at 2:58
  • 1
    @Red Tux Regardless of what it looks like, the Red Hat service console that you can access on VMware ESX isn't the hypervisor. It is simply another VM running on the hypervisor, which is in actuality the EXACT same hypervisor as ESXi is running. The service console has VMCI access to the hypervisor, providing direct access to many of the things the hypervisor controls, but it is NOT the hypervisor itself. The VMware hypervisor was actually once based on FreeBSD, but is now so modified it isn't really accurate to compare the two anymore. It is essentially its own OS. May 3 '11 at 4:17
  • 4
    @Red Tux No, ESXi uses an embedded Linux as console OS, not RHEL. Only ESX (non-i) has RHEL and full shell as console OS. The shell is ash, not full featured. You can get a shell, and enable ssh, but there is not very much you can do there.
    – Keith
    May 3 '11 at 4:25


Gaining access to the RHEL based hypervisor is pretty straight forward. You can only enable it via the console (alt-f1 for virtual console 1). (I'm going by memory here) hen you enable the service "chkconfig sshd on" followed by starting it "service sshd on". Many of the Google searches showed people editing the /etc/inetd.conf file but I don't recall doing that. Also many of the guides tell you to reboot the server at this point. You may also want to enable the firewall to allow ssh to pass. To do so go to the vSphere client, Configuration -> Security Profile -> Properties (Upper right). Then click on SSH to enable a hole in the firewall.

A quick Google search makes it look like the process for enabling SMTP is similar, however it looks like you cannot use SNMP to get items, only trapper based items.

From there you can enable sudo privileges for the users you have configured through the vSphere Client. I have one script that uses SSH keys to log into the server, then runs the 3ware controller utility with sudo without a password to check the status of my RAID array.

  • If I'm not mistaken, with the free version of vSphere you can't enable SNMP. Any attempt to enable SNMP results in an "unsupported version" message. It's not until you license it that you can enable and configure SNMP. You are correct about SNMP once it is enabled, you can't poll it, it can only send traps to an SNMP trap destination.
    – joeqwerty
    May 3 '11 at 2:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.