http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1008065
Configuring SNMP Traps for ESXi/ESX 3.5, 4.x, and 5.0
Details
To generate virtual machine and environmental traps from ESX/ESXi 3.5, 4.x and 5.0 hosts, you must configure and enable the embedded SNMP agent. You cannot use the Net-SNMP-based agent to generate these traps, although it can receive GET transactions and generate other types of traps.
This represents a change in behavior from ESX 3.0.x, in which the configuration file for the Net-SNMP-based agent controlled the generation of virtual machine traps. For more information, see Configuring SNMP on an ESX 3.0.x host(1008186).
Solution
Use the vicfg-snmp.pl command from the Remote CLI or vSphere CLI to enable the SNMP agent and configure trap destinations. Each time you specify a target with the vicfg-snmp.pl command, the settings you specify overwrite all previously specified settings. To specify multiple targets, specify them in a single command, separated by commas.
To enable and configure SNMP traps:
Notes:
Prior to ESXi 5, ESXi did not include a firewall
Ensure that the SNMP protocol is open in the ESX firewall. For more information, see:
ESX 4.x: Working with firewall rules in ESX 4.x (1021779)
ESXi 5.0: By default, the SNMP firewall port 161 is open. If it is not, see the ESXi Firewall Configuration section of the ESXi and vCenter Server 5.0 Documentation.
To implement these steps:
ESX/ESXi 3.5: Use the Remote CLI. For more information, see the Remote Command-Line Interface Documentation. You can download the VMware Infrastructure Remote CLI from the VMware Download Center.
ESX/ESXi 4.x and ESXi 5.0: Run this procedure using vSphere CLI, not vSphere PowerCLI.
For more information, see the vSphere Command-Line Interface Documentation.
If you have a My VMware profile, you can download vSphere CLI from:
vSphere 4.x – http://www.vmware.com/download/download.do?downloadGroup=VCLI41
vSphere 5.0 – http://www.vmware.com/download/download.do?downloadGroup=VCLI50
Note: If you do not have a My VMware profile, you must create one. For more information, see Creating a My VMware profile (2007005).
Navigate to the directory where vicfg-snmp.pl is stored. By default, vicfg-snmp.pl is located in:
C:\Program Files\VMware\VMware vSphere CLI\bin
Run this command:
vicfg-snmp.pl --server hostname --username username --password password --show
Note: Run the vicfg-snmp.pl --help command for a full list of options.
Specify the communities and trap targets with this command:
vicfg-snmp.pl --server hostname --username username --password password -t hostname@port/community
Note: In ESX 4.x or ESXi 5.0, you may need to use the -c community flag.
Example: To send SNMP traps from the host host.example.com, to port 162 on target.example.com, using the public community, use this command:
vicfg-snmp.pl --server host.example.com --username root --password password -t target.example.com@162/public
Note: To prevent clear text display of the user password, remove the --password password portion. You are then prompted to enter the password, and the entry is hidden.
To enable the SNMP service, run this command:
vicfg-snmp.pl --server hostname --username username --password password --enable
Note: To verify SNMP settings, run this command:
vicfg-snmp.pl --server hostname --username username --password password --show
(Optional) To send a test trap to verify that the agent is configured correctly, run this command:
vicfg-snmp.pl --server hostname --username username --password password --test
The test trap generated is a warmStart trap.