VMware ESX3 Server Profiles
This VMWare ESX3 Server Profile has been deprecated. |
This profile monitors an instance of the VMWare ESX 3 virtualization software. It can also be configured to monitor the guest operating systems underneath the installed instance. Please see Implementation Notes below.
Example: Check disk with check_esx3_gs.pl
running ./check_esx3_gw.pl -h to specify thresholds for disk:
*DISK is megabytes/sec over the sampling interval. Thresholds are raw megabytes/sec.*
*e.g.: -l DISK -w 45 -c 99 will return a warning when thrashing at > 45 megabytes/sec.*
Services Configuration
- Service - Definitions in Monarch are stored under this name.
- Command LIne - Service command name with arguments to be passed to the plugin.
- Plugin Command Line - Plugin script called by Nagios for this Service.
- Extended Info - The Extended Service Info definition, typically used for generating graphs.
Command lines displayed below are intended to be single line commands. Service Command Line Plugin Command Line Extended Info snmp_esx3_instance_list check_esx_gw_vm_instance_list!10%!5% $USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l LIST -w $ARG1$ -c $ARG2$
snmp_esx3_memory_available check_snmp_esx3_available_mem $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.4.1.6876.3.2.3.0" -l "Available Mem" -C '$USER7$'
snmp_esx3_memory_console snmp_esx3_memory_console $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.4.1.6876.3.2.2.0" -l "Console Used Mem" -C '$USER7$'
snmp_esx3_memory_total check_snmp_esx3_total_mem $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.4.1.6876.3.2.1.0" -l "Total_server_memory" -C '$USER7$'
snmp_esx3_num_system_processes check_snmp_esx3_num_system_processes $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.2.1.25.1.6.0" -l "number_processes" -C '$USER7$'
snmp_esx3_num_users check_snmp_esx3_num_users $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.2.1.25.1.5.0" -l "Number of Users" -C '$USER7$'
snmp_esx3_server_cpu check_esx_gw_server_cpu!85!95 $USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l CPU -w $ARG1$ -c $ARG2$
snmp_esx3_server_mem check_esx_gw_server_mem!5000!2000 $USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l MEM -w $ARG1$ -c $ARG2$
snmp_esx3_server_net check_esx_gw_server_net!120!150 $USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l NET -w $ARG1$ -c $ARG2$
snmp_esx3_uptime check_snmp_esx3_uptime $USER1$/check_snmp -H $HOSTADDRESS$ -o ".1.3.6.1.2.1.25.1.1.0" -r "Timeticks" -C '$USER7$'
snmp_esx3_vm_cpu_Despina_1 check_esx_gw_vm_instance_cpu!
Despina_1!80!90$USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l CPU -V $ARG1$ -w $ARG2$ -c $ARG3$
snmp_esx3_vm_mem_Despina_1 check_esx_gw_vm_instance_mem!
Despina_1!80!90$USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l MEM -V $ARG1$ -w $ARG2$ -c $ARG3$
snmp_esx3_vm_net_Despina_1 check_esx_gw_vm_instance_net!
Despina_1!80!90$USER1$/check_esx3_gw.pl -H $HOSTADDRESS$ -C $USER7$ -l NET -V $ARG1$ -w $ARG2$ -c $ARG3$
icmp_ping_alive check_alive $USER1$/check_icmp -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -n 1 number_graph tcp_ssh check_ssh $USER1$/check_ssh -H $HOSTADDRESS$ -t 60 number_graph
Profile Package
This package includes the following files:
Profile Definitions
- service-profile-snmp-vmware-esx3.xml
- perfconfig-snmp-vmware-esx3.xml
Plugins Scripts (installed with the GroundWork Monitor product)
- check_esx3_gw.pl
- check_ssh
- check_icmp
- check_check_snmp
Files and Scripts for installation on VMWare ESX 3 server
- defesxtop.cfg
- snmpd.conf
- vmware-statgen-gw
- vmware_statsgen.conf
- vmware-stats-gw
- esxtop3rc
Performance Graphing Programs
- number_graph.cgi
Installation
GroundWork Monitor includes many monitoring profiles for a variety of devices, systems and applications. Profiles already imported on a new GroundWork installation include Service Ping, SNMP Network, and SSH UNIX. The GroundWork Monitor Configuration tool is used to import updated Profiles and Profiles that require additional setup; the Profile XML file and its companion Performance Configuration definition file. Services can also be imported in addition to Service Profiles in the Profile Importer. The import process is documented under GROUNDWORK PROFILES > How to import profiles.
In addition this profile requires files and scripts (identified above in the Profile Package section) to be installed and configured on the VMWare ESX3 server. Refer to the Implementation Notes section below.
Implementation
This section contains detail settings used by this Profile. These parameters can be altered with the Configuration tool.
Command Parameters
Command parameters are in the Configuration Services section with the following names and default values. Any bolded arguments MUST be set before this Service Profile will work properly.
snmp_esx3_instance_list
- Returns a list of VMWare guest instances installed on the VMWare ESX 3 server.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is 10%. This is the warning threshold for the number of guests that need to be up as a percentage of the total number.
- $ARG2$ - Default is 5%. This is the critical threshold for the number of guests that need to be up as a percentage of the total number.
snmp_esx3_memory_available
- Returns the available memory to VMWare guests in bytes.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_memory_console
- Returns the memory used by the ESX console in bytes.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_memory_total
- Returns the total amount of memory on the server in bytes. This should be equal to the available memory plus the memory used by the ESX console.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_num_system_processes
- Returns the number of processes running in the ESX console.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_num_users
- Returns the number of users logged in to the ESX console.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_server_cpu
- Returns the CPU utilization of the ESX server as a percentage.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is 85. This is the warning threshold for the percentage of CPU utilization.
- $ARG2$ - Default is 95. This is the warning threshold for the percentage of CPU utilization.
snmp_esx3_server_mem
- Returns the available memory of the ESX server in megabytes, and of the ESX console as a percentage used.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is 5000. This is the warning threshold in megabytes of available memory below which an alarm will be generated. This value should be adjusted appropriately based on the amount of memory your server has.
- $ARG2$ - Default is 2000. This is the critical threshold in megabytes of available memory below which an alarm will be generated. This value should be adjusted appropriately based on the amount of memory your server has.
snmp_esx3_server_net
- Returns the total network I/O in megabits per second.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is 120. This is the warning threshold in megabits per second above which an alarm will be generated.
- $ARG2$ - Default is 150. This is the warning threshold in megabits per second above which an alarm will be generated.
snmp_esx3_uptime
- Returns the number of seconds that the ESX server has been up.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
snmp_esx3_vm_cpu_Despina_1
- Returns the CPU utilization of the guest instance ‘Despina_1’ as a percentage.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is ‘Despina_1’. This is the name of the guest instance. You will want to change this argument to match the guest instance you wish to monitor. You will also want to make a corresponding change to the service name to reflect the guest instance name.
- $ARG2$ - Default is 85. This is the warning threshold for the percentage of CPU utilization.
- $ARG3$ - Default is 95. This is the warning threshold for the percentage of CPU utilization.
snmp_esx3_vm_mem_Despina_1
- Returns the memory utilization of the guest instance ‘Despina_1’ as a percentage.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is ‘Despina_1’. This is the name of the guest instance. You will want to change this argument to match the guest instance you wish to monitor. You will also want to make a corresponding change to the service name to reflect the guest instance name.
- $ARG2$ - Default is 80. This is the warning threshold for the percentage of memory used.
- $ARG3$ - Default is 90. This is the critical threshold for the percentage of memory used.
snmp_esx3_vm_net_Despina_1
- Returns the total network I/O in megabits per second for the guest instance ‘Despina_1’.
- $USER7$ - SNMP community string. This has no default but must be set in order for the profile to function. The community string must match one of those configured in the snmpd.conf file on the VMWare ESX 3 server.
- $ARG1$ - Default is ‘Despina_1’. This is the name of the guest instance. You will want to change this argument to match the guest instance you wish to monitor. You will also want to make a corresponding change to the service name to reflect the guest instance name.
- $ARG2$ - Default is 80. This is the warning threshold in megabits per second above which an alarm will be generated.
- $ARG3$ - Default is 90. This is the warning threshold in megabits per second above which an alarm will be generated.
icmp_ping_alive
- Returns the round trip time and packet loss for an ICMP ping check against the VMWare ESX 3 host address.
tcp_ssh
- Returns the success or failure of an attempt to connect to the SSH port on the VMWare ESX 3 host address.
Performance Graphing Parameters
The following parameters are used to generate performance charts. These parameters are set using the Configuration>Performance tool in GroundWork Monitor.
snmp_esx3_server_cpu
- Graphs the CPU utilization of the ESX server as a percentage.
- The Nagios service description must match the string "snmp_esx3_server_cpu".
snmp_esx3_server_mem
- Graphs all performance parameters returned by the service check. By default these are sys_mem_free_mb, sys_ballon_mem_mb, and sys_console_mem_pc.
- The Nagios service description must match the string "snmp_esx3_server_mem".
snmp_esx3_server_net
- Graphs all performance parameters returned by the service check. By default these are sys_net_mbps, sys_net_mbps_in and sys_net_mbps_out.
- The Nagios service description must match the string "snmp_esx3_server_net".
snmp_esx3_vm_cpu
- Graphs all performance parameters returned by the service check. By default these are vhost_cpu_used_pc and vhost_cpu_ready_pc.
- The Nagios service description must contain the string "snmp_esx3_vm_cpu".
snmp_esx3_vm_mem
- Graphs all performance parameters returned by the service check. By default these are vhost_mem_active_pc and vhost_mem_ave_pc.
- The Nagios service description must contain the string "snmp_esx3_vm_mem".
snmp_esx3_vm_net
- Graphs all performance parameters returned by the service check. By default these are vhost_net_mbps, vhost_net_mbps_in and vhost_net_mbps_out.
- The Nagios service description must contain the string "snmp_esx3_vm_net".
- The performance graphing of the tcp_ssh and icmp_ping_alive service checks are provided by performance configuration definitions contained within base product.
Implementation Notes
The following setup instructions need to be followed on the VMWare ESX 3 target server(s).
You will need to access GroundWork Connect for the snmp-vmware-esx3.zip file. Search for ESX3 Profile in GroundWork Connect and select the ESX3 Profile folder result. |
- Copy the following files to the /etc/snmp directory on the ESX server to be monitored:
- vmware-statgen-gw
- vmware_statsgen.conf
- vmware-stats-gw
- defesxtop.cfg
If you are using ESX 3.0.0 copy the file .esxtop3rc to the /root directory)
- Make sure the vmware-statgen-gw and vmware-stats-gw are executable by root:
- # chmod +x vmware-statgen-gw
- # chmod +x vmware-stats-gw
- Add the following lines to snmpd.conf:
- # For Nagios/MRTG monitoring agent
- exec 1.3.6.1.4.1.2021.1000.10 vmware /etc/snmp/vmware-stats-gw
- # VMWare MIB modules. To enable/disable VMWare MIB items
- # add/remove the following entries
- dlmod SNMPESX /usr/lib/vmware/snmp/libSNMPESX.so
- Set up SNMP to run automatically (if it is not already):
- # chkconfig snmpd on
- # service snmpd start
- Enable SNMP through the firewall:
- # esxcfg-firewall --e snmpd
- Add the following lines to /etc/crontab:
- # generate performance stats every 5 minutes
- */5 * * * * root /etc/snmp/vmware-statgen-gw