Documentation

bigip_gtm_facts - Collect facts from F5 BIG-IP GTM devices.

New in version 2.3.

Synopsis

  • Collect facts from F5 BIG-IP GTM devices.

Options

parameter required default choices comments
filter
no None
Perform regex filter of response. Filtering is done on the name of the resource. Valid filters are anything that can be provided to Python's re module.
include
yes
  • pool
  • wide_ip
  • virtual_server
Fact category to collect
password
yes
The password for the user account used to connect to the BIG-IP. This option can be omitted if the environment variable F5_PASSWORD is set.
server
yes
The BIG-IP host. This option can be omitted if the environment variable F5_SERVER is set.
server_port
(added in 2.2)
no 443
The BIG-IP server port. This option can be omitted if the environment variable F5_SERVER_PORT is set.
user
yes
The username to connect to the BIG-IP with. This user must have administrative privileges on the device. This option can be omitted if the environment variable F5_USER is set.
validate_certs
(added in 2.0)
no True
  • True
  • False
If no, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates. This option can be omitted if the environment variable F5_VALIDATE_CERTS is set.

Examples

- name: Get pool facts
  bigip_gtm_facts:
      server: "lb.mydomain.com"
      user: "admin"
      password: "secret"
      include: "pool"
      filter: "my_pool"
  delegate_to: localhost

Return Values

Common return values are documented here Return Values, the following are the fields unique to this module:

name description returned type sample
virtual_server Contains the virtual server enabled and availability status, and address changed dict {'virtual_server': [{'product': 'single-bigip', 'virtual_servers': [{'limit_max_pps_status': 'disabled', 'name': 'jsdfhsd', 'destination': '10.10.10.10:0', 'enabled': 'True', 'translation_address': 'none', 'limit_max_pps': '0', 'limit_max_bps': '0', 'limit_max_bps_status': 'disabled', 'limit_max_connections': '0', 'limit_max_connections_status': 'disabled', 'full_path': 'jsdfhsd', 'translation_port': '0'}], 'addresses': [{'translation': 'none', 'name': '10.10.10.10', 'device_name': '/Common/qweqwe'}], 'datacenter': '/Common/xfxgh', 'limit_cpu_usage': '0', 'expose_route_domains': 'no', 'virtual_server_discovery': 'disabled', 'iq_allow_snmp': 'yes', 'iq_allow_service_check': 'yes', 'limit_max_bps_status': 'disabled', 'limit_max_connections': '0', 'limit_cpu_usage_status': 'disabled', 'limit_max_pps_status': 'disabled', 'link_discovery': 'disabled', 'iq_allow_path': 'yes', 'monitor': '/Common/bigip ', 'limit_mem_avail_status': 'disabled', 'limit_mem_avail': '0', 'partition': 'Common', 'enabled': 'True', 'name': 'qweqwe', 'limit_max_pps': '0', 'limit_max_bps': '0', 'limit_max_connections_status': 'disabled', 'full_path': '/Common/qweqwe'}]}
wide_ip Contains the lb method for the wide ip and the pools that are within the wide ip. changed dict {'wide_ip': [{'pool_lb_mode': 'round-robin', 'last_resort_pool': '', 'persist_cidr_ipv4': '32', 'persist_cidr_ipv6': '128', 'name': 'foo.ok.com', 'failure_rcode_response': 'disabled', 'failure_rcode': 'noerror', 'partition': 'Common', 'enabled': 'True', 'failure_rcode_ttl': '0', 'ttl_persistence': '3600', 'full_path': '/Common/foo.ok.com', 'pools': [{'partition': 'Common', 'ratio': '1', 'name': 'd3qw', 'order': '0'}], 'minimal_response': 'enabled', 'type': 'naptr', 'persistence': 'disabled'}]}
pool Contains the pool object status and enabled status. changed dict {'pool': [{'verify_member_availability': 'disabled', 'partition': 'Common', 'qos_packet_rate': '1', 'qos_hit_ratio': '5', 'alternate_mode': 'round-robin', 'members': [{'ratio': '1', 'name': 'ok3.com', 'service': '80', 'member_order': '0', 'disabled': 'True', 'flags': 'a', 'preference': '10', 'order': '10', 'full_path': 'ok3.com'}], 'ttl': '30', 'qos_vs_score': '0', 'qos_topology': '0', 'load_balancing_mode': 'round-robin', 'max_answers_returned': '1', 'fallback_mode': 'return-to-dns', 'qos_rtt': '50', 'name': 'd3qw', 'qos_kilobytes_second': '3', 'qos_lcs': '30', 'enabled': 'True', 'qos_vs_capacity': '0', 'qos_hops': '0', 'manual_resume': 'disabled', 'full_path': '/Common/d3qw', 'type': 'naptr', 'dynamic_ratio': 'disabled'}]}


Notes

Note

  • Requires the f5-sdk Python package on the host. This is as easy as pip install f5-sdk

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Support

This module is community maintained without core committer oversight.

For more information on what this means please read Module Support

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.