f5networks / f5networks.f5_modules / 1.28.0 / module / bigip_gtm_server Manages F5 BIG-IP GTM servers | "added in version" 1.0.0 of f5networks.f5_modules" Authors: Robert Teller (@r-teller), Tim Rupp (@caphrim007), Wojciech Wypior (@wojtek0806)f5networks.f5_modules.bigip_gtm_server (1.28.0) — module
Install with ansible-galaxy collection install f5networks.f5_modules:==1.28.0
collections: - name: f5networks.f5_modules version: 1.28.0
Manage BIG-IP GTM (now BIG-IP DNS) server configuration. This module is able to manipulate the server definitions in a BIG-IP.
- name: Create server "GTM_Server" bigip_gtm_server: name: GTM_Server datacenter: /Common/New York server_type: bigip link_discovery: disabled virtual_server_discovery: disabled devices: - name: server_1 address: 1.1.1.1 - name: server_2 address: 2.2.2.1 translation: 192.168.2.1 - name: server_2 address: 2.2.2.2 - name: server_3 addresses: - address: 3.3.3.1 - address: 3.3.3.2 - name: server_4 addresses: - address: 4.4.4.1 translation: 192.168.14.1 - address: 4.4.4.2 provider: user: admin password: secret server: lb.mydomain.com delegate_to: localhost
- name: Create server "GTM_Server" with expanded keys bigip_gtm_server: server: lb.mydomain.com user: admin password: secret name: GTM_Server datacenter: /Common/New York server_type: bigip link_discovery: disabled virtual_server_discovery: disabled devices: - name: server_1 address: 1.1.1.1 - name: server_2 address: 2.2.2.1 translation: 192.168.2.1 - name: server_2 address: 2.2.2.2 - name: server_3 addresses: - address: 3.3.3.1 - address: 3.3.3.2 - name: server_4 addresses: - address: 4.4.4.1 translation: 192.168.14.1 - address: 4.4.4.2 provider: user: admin password: secret server: lb.mydomain.com delegate_to: localhost
name: description: - The name of the server. - If the virtual server is auto-discovered from the LTM,then the partition name needs to be included as part of the virtual server name when referencing from the module e.g. "/Common/vsname". required: true type: str state: choices: - present - absent - enabled - disabled default: present description: - The server state. If C(absent), the module attempts to delete the server. This will only succeed if this server is not in use by a virtual server. C(present) creates the server and enables it. If C(enabled), enables the server if it exists. If C(disabled), creates the server if needed, and sets state to C(disabled). type: str limits: description: - Specifies resource thresholds or limit requirements at the pool member level. - When you enable one or more limit settings, the system then uses that data to take members in and out of service. - You can define limits for any or all of the limit settings. However, when a member does not meet the resource threshold limit requirement, the system marks the member as unavailable and directs load balancing traffic to another resource. suboptions: bits_enabled: description: - Whether the bits limit it enabled or not. - This parameter allows you to switch on or off the effect of the limit. type: bool bits_limit: description: - Specifies the maximum allowable data throughput rate for the member, in bits per second. - If the network traffic volume exceeds this limit, the system marks the member as unavailable. type: int connections_enabled: description: - Whether the current connections limit it enabled or not. - This parameter allows you to switch on or off the effect of the limit. type: bool connections_limit: description: - Specifies the maximum number of concurrent connections, combined, for all of the members. - If the connections exceed this limit, the system marks the server as unavailable. type: int cpu_enabled: description: - Whether the CPU limit it enabled or not. - This parameter allows you to switch on or off the effect of the limit. type: bool cpu_limit: description: - Specifies the percent of CPU usage. - If percent of CPU usage goes above the limit, the system marks the server as unavailable. type: int memory_enabled: description: - Whether the memory limit it enabled or not. - This parameter allows you to switch on or off the effect of the limit. type: bool memory_limit: description: - Specifies the available memory required by the virtual servers on the server. - If available memory falls below this limit, the system marks the server as unavailable. type: int packets_enabled: description: - Whether the packets limit it enabled or not. - This parameter allows you to switch on or off the effect of the limit. type: bool packets_limit: description: - Specifies the maximum allowable data transfer rate for the member, in packets per second. - If the network traffic volume exceeds this limit, the system marks the member as unavailable. type: int type: dict devices: description: - Lists the self IP addresses and translations for each device. When creating a new GTM server, this value is required. This list is a complex list that specifies a number of keys. - The C(name) key specifies a name for the device. The device name must be unique per server. This key is required. - The C(address) key contains an IP address, or list of IP addresses, for the destination server. This key is required. - The C(translation) key contains an IP address to translate the C(address) value above to. This key is optional. - Specifying duplicate C(name) fields is a supported means of providing device addresses. In this scenario, the addresses will be assigned to the C(name)'s list of addresses. type: raw monitors: description: - Specifies the health monitors the system currently uses to monitor this resource. - When C(availability_requirements.type) is C(require), you may only have a single monitor in the C(monitors) list. elements: str type: list provider: description: - A dict object containing connection details. suboptions: auth_provider: description: - Configures the auth provider for to obtain authentication tokens from the remote device. - This option is really used when working with BIG-IQ devices. type: str no_f5_teem: default: false description: - If C(yes), TEEM telemetry data is not sent to F5. - You may omit this option by setting the environment variable C(F5_TELEMETRY_OFF). - Previously used variable C(F5_TEEM) is deprecated as its name was confusing. type: bool password: aliases: - pass - pwd description: - The password for the user account used to connect to the BIG-IP or the BIG-IQ. - You may omit this option by setting the environment variable C(F5_PASSWORD). required: true type: str server: description: - The BIG-IP host or the BIG-IQ host. - You may omit this option by setting the environment variable C(F5_SERVER). required: true type: str server_port: default: 443 description: - The BIG-IP server port. - You may omit this option by setting the environment variable C(F5_SERVER_PORT). type: int timeout: description: - Specifies the timeout in seconds for communicating with the network device for either connecting or sending commands. If the timeout is exceeded before the operation is completed, the module will error. type: int transport: choices: - rest default: rest description: - Configures the transport connection to use when connecting to the remote device. type: str user: description: - The username to connect to the BIG-IP or the BIG-IQ. This user must have administrative privileges on the device. - You may omit this option by setting the environment variable C(F5_USER). required: true type: str validate_certs: default: true description: - If C(no), SSL certificates are not validated. Use this only on personally controlled sites using self-signed certificates. - You may omit this option by setting the environment variable C(F5_VALIDATE_CERTS). type: bool type: dict version_added: 1.0.0 version_added_collection: f5networks.f5_modules partition: default: Common description: - Device partition to manage resources on. type: str datacenter: description: - Data center to which the server belongs. When creating a new GTM server, this value is required. type: str prober_pool: description: - Specifies the name of the prober pool to use to monitor this server's resources. - In C(TMOS) version C(13.x) and later, this parameter is mandatory when C(prober_preference) is set to C(pool). - The format of the name can be either be prepended by partition (C(/Common/foo)), or specified just as an object name (C(foo)). - In C(TMOS) version C(12.x), prober_pool can be set to an empty string to revert to default setting of C(inherit). type: str server_type: aliases: - product choices: - alteon-ace-director - cisco-css - cisco-server-load-balancer - generic-host - radware-wsd - windows-nt-4.0 - bigip - cisco-local-director-v2 - extreme - generic-load-balancer - sun-solaris - cacheflow - cisco-local-director-v3 - foundry-server-iron - netapp - windows-2000-server description: - Specifies the server type. The server type determines the metrics the system can collect from the server. When creating a new GTM server, the default value C(bigip) is used. type: str iquery_options: description: - Specifies whether the Global Traffic Manager uses this BIG-IP system to conduct a variety of probes before delegating traffic to it. suboptions: allow_path: description: - Specifies the system verifies the logical network route between a data center server and a local DNS server. type: bool allow_service_check: description: - Specifies the system verifies that an application on a server is running, by remotely running the application using an external service checker program. type: bool allow_snmp: description: - Specifies the system checks the performance of a server running an SNMP agent. type: bool type: dict link_discovery: choices: - enabled - disabled - enabled-no-delete description: - Specifies whether the system auto-discovers the links for this server. When creating a new GTM server, if this parameter is not specified, the default value C(disabled) is used. - If you set this parameter to C(enabled) or C(enabled-no-delete), you must also ensure the C(virtual_server_discovery) parameter is also set to C(enabled) or C(enabled-no-delete). type: str prober_fallback: choices: - any - inside-datacenter - outside-datacenter - inherit - pool - none description: - Specifies the type of prober to use to monitor this server's resources when the preferred prober is not available. - This option is ignored in C(TMOS) version C(12.x). - From C(TMOS) version C(13.x) and up, when prober_preference is set to C(pool) a C(prober_pool) parameter must be specified. - The choices are mutually exclusive with prober_preference parameter, with the exception of the C(any-available) or C(none) options. type: str prober_preference: choices: - inside-datacenter - outside-datacenter - inherit - pool description: - Specifies the type of prober to use to monitor this server's resources. - This option is ignored in C(TMOS) version C(12.x). - From C(TMOS) version C(13.x) and up, when prober_preference is set to C(pool) a C(prober_pool) parameter must be specified. type: str virtual_server_discovery: choices: - enabled - disabled - enabled-no-delete description: - Specifies whether the system auto-discovers the virtual servers for this server. When creating a new GTM server, if this parameter is not specified, the default value C(disabled) is used. type: str availability_requirements: description: - If you activate more than one health monitor, specifies the number of health monitors that must receive successful responses in order for the link to be considered available. suboptions: at_least: description: - Specifies the minimum number of active health monitors that must be successful before the link is considered up. - This parameter is only relevant when a C(type) of C(at_least) is used. - This parameter will be ignored if a type of either C(all) or C(require) is used. type: int number_of_probers: description: - Specifies the number of probers that should be used when running probes. - When creating a new virtual server, if this parameter is specified, the C(number_of_probes) parameter must also be specified. - The value of this parameter should always be B(higher) than, or B(equal to), the value of C(number_of_probers). - This parameter is only relevant when a C(type) of C(require) is used. - This parameter will be ignored if a type of either C(all) or C(at_least) is used. type: int number_of_probes: description: - Specifies the minimum number of probes that must succeed for this server to be declared up. - When creating a new virtual server, if this parameter is specified, then the C(number_of_probers) parameter must also be specified. - The value of this parameter should always be B(lower) than, or B(equal to), the value of C(number_of_probers). - This parameter is only relevant when a C(type) of C(require) is used. - This parameter will be ignored if a type of either C(all) or C(at_least) is used. type: int type: choices: - all - at_least - require description: - Monitor rule type when C(monitors) is specified. - When creating a new pool, if this value is not specified, the default of B(all) will be used. required: true type: str type: dict
bits_enabled: description: Whether the bits limit is enabled. returned: changed sample: true type: bool bits_limit: description: The new bits_enabled limit. returned: changed sample: 100 type: int connections_enabled: description: Whether the connections limit is enabled. returned: changed sample: true type: bool connections_limit: description: The new connections_limit limit. returned: changed sample: 100 type: int datacenter: description: The new C(datacenter) which the server is a part of. returned: changed sample: datacenter01 type: str link_discovery: description: The new C(link_discovery) configured on the remote device. returned: changed sample: enabled type: str monitors: description: The new list of monitors for the resource. returned: changed sample: - /Common/monitor1 - /Common/monitor2 type: list packets_enabled: description: Whether the packets limit is enabled. returned: changed sample: true type: bool packets_limit: description: The new packets_limit limit. returned: changed sample: 100 type: int server_type: description: The new type of the server. returned: changed sample: bigip type: str virtual_server_discovery: description: The new C(virtual_server_discovery) name for the trap destination. returned: changed sample: disabled type: str