ios_facts - Collect facts from remote devices running Cisco IOS
New in version 2.2.
Synopsis
- Collects a base set of device facts from a remote device that is running IOS. This module prepends all of the base network fact keys with
ansible_net_<fact>
. The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.
Options
parameter | required | default | choices | comments | |||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
auth_pass | no | none | Specifies the password to use if required to enter privileged mode on the remote device. If authorize is false, then this argument does nothing. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_AUTH_PASS will be used instead. | ||||||||||||||||||||||||||||||||||||||||||||||
authorize | no |
| Instructs the module to enter privileged mode on the remote device before sending any commands. If not specified, the device will attempt to execute all commands in non-privileged mode. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_AUTHORIZE will be used instead. | ||||||||||||||||||||||||||||||||||||||||||||||
gather_subset | no | !config | When supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial ! to specify that a specific subset should not be collected. | ||||||||||||||||||||||||||||||||||||||||||||||
provider | no | A dict object containing connection details. |
|||||||||||||||||||||||||||||||||||||||||||||||
|
Examples
# Note: examples below use the following provider dict to handle # transport and authentication to the node. --- vars: cli: host: "{{ inventory_hostname }}" username: cisco password: cisco transport: cli --- # Collect all facts from the device - ios_facts: gather_subset: all provider: "{{ cli }}" # Collect only the config and default facts - ios_facts: gather_subset: - config provider: "{{ cli }}" # Do not collect hardware facts - ios_facts: gather_subset: - "!hardware" provider: "{{ cli }}"
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
ansible_net_all_ipv4_addresses | All IPv4 addresses configured on the device | when interfaces is configured | list | |
ansible_net_all_ipv6_addresses | All IPv6 addresses configured on the device | when interfaces is configured | list | |
ansible_net_config | The current active config from the device | when config is configured | str | |
ansible_net_filesystems | All file system names available on the device | when hardware is configured | list | |
ansible_net_gather_subset | The list of fact subsets collected from the device | always | list | |
ansible_net_hostname | The configured hostname of the device | always | string | |
ansible_net_image | The image file the device is running | always | string | |
ansible_net_interfaces | A hash of all interfaces running on the system | when interfaces is configured | dict | |
ansible_net_memfree_mb | The available free memory on the remote device in Mb | when hardware is configured | int | |
ansible_net_memtotal_mb | The total memory on the remote device in Mb | when hardware is configured | int | |
ansible_net_model | The model name returned from the device | always | str | |
ansible_net_neighbors | The list of LLDP neighbors from the remote device | when interfaces is configured | dict | |
ansible_net_serialnum | The serial number of the remote device | always | str | |
ansible_net_version | The operating system version running on the remote device | always | str |
Notes
Note
- Tested against IOS 15.6
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance Info
For more information about Red Hat’s this support of this module, please refer to this knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/ios_facts_module.html