vmware_host_snmp – Configures SNMP on an ESXi host system¶
New in version 2.8.
Synopsis¶
This module can be used to configure the embedded SNMP agent on an ESXi host.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
PyVmomi
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
community
list
|
List of SNMP community strings.
|
|
hostname
string
|
The hostname or IP address of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_HOST will be used instead.Environment variable support added in Ansible 2.6.
|
|
hw_source
string
|
|
Source hardware events from IPMI sensors or CIM Indications.
The embedded SNMP agent receives hardware events either from IPMI sensors
sensors or CIM indications indications . |
log_level
string
|
|
Syslog logging level.
|
password
string
|
The password of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_PASSWORD will be used instead.Environment variable support added in Ansible 2.6.
aliases: pass, pwd |
|
port
integer
added in 2.5 |
Default: 443
|
The port number of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_PORT will be used instead.Environment variable support added in Ansible 2.6.
|
send_trap
boolean
|
|
Send a test trap to validate the configuration.
|
snmp_port
integer
|
Default: 161
|
Port used by the SNMP agent.
|
state
string
|
|
Enable, disable, or reset the SNMP agent.
|
trap_filter
list
|
A list of trap oids for traps not to be sent by agent, e.g. [ 1.3.6.1.4.1.6876.4.1.1.0, 1.3.6.1.4.1.6876.4.1.1.1 ]
Use value
reset to clear settings. |
|
trap_targets
-
|
Default: []
|
A list of trap targets.
You need to use
hostname , port , and community for each trap target. |
username
string
|
The username of the vSphere vCenter or ESXi server.
If the value is not specified in the task, the value of environment variable
VMWARE_USER will be used instead.Environment variable support added in Ansible 2.6.
aliases: admin, user |
|
validate_certs
boolean
|
|
Allows connection when SSL certificates are not valid. Set to
false when certificates are not trusted.If the value is not specified in the task, the value of environment variable
VMWARE_VALIDATE_CERTS will be used instead.Environment variable support added in Ansible 2.6.
If set to
yes , please make sure Python >= 2.7.9 is installed on the given machine. |
Notes¶
Note
Tested on vSphere 6.5
You need to reset the agent (to factory defaults) if you want to clear all community strings, trap targets, or filters
SNMP v3 configuration isn’t implemented yet
Examples¶
- name: Enable and configure SNMP community
vmware_host_snmp:
hostname: '{{ esxi_hostname }}'
username: '{{ esxi_username }}'
password: '{{ esxi_password }}'
community: [ test ]
state: enabled
validate_certs: no
delegate_to: localhost
- name: Configure SNMP traps and filters
vmware_host_snmp:
hostname: '{{ esxi_hostname }}'
username: '{{ esxi_username }}'
password: '{{ esxi_password }}'
community: [ test ]
trap_targets:
- hostname: 192.168.1.100
port: 162
community: test123
- hostname: 192.168.1.101
port: 162
community: test1234
trap_filter:
- 1.3.6.1.4.1.6876.4.1.1.0
- 1.3.6.1.4.1.6876.4.1.1.1
state: enabled
validate_certs: no
delegate_to: localhost
- name: Disable SNMP
vmware_host_snmp:
hostname: '{{ esxi_hostname }}'
username: '{{ esxi_username }}'
password: '{{ esxi_password }}'
state: disabled
validate_certs: no
delegate_to: localhost
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
results
dictionary
|
always |
metadata about host system's SNMP configuration
Sample:
{'esxi01': {'changed': False, 'community': ['test'], 'hw_source': 'indications', 'msg': 'SNMP already configured properly', 'port': 161, 'state': 'enabled', 'trap_targets': []}}
|
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]