avi_pool - Module for setup of Pool Avi RESTful Object
New in version 2.3.
Synopsis
- This module is used to configure Pool object
- more examples at https://github.com/avinetworks/devops
Requirements (on host that executes module)
- avisdk
Options
parameter | required | default | choices | comments |
---|---|---|---|---|
a_pool | no | Name of container cloud application that constitutes a pool in a a-b pool configuration, if different from vs app. | ||
ab_pool | no | A/b pool configuration. | ||
ab_priority | no | Priority of this pool in a a-b pool pair. Internally used. | ||
api_version | no | Avi API version of to use for Avi API and objects. | ||
apic_epg_name | no | Synchronize cisco apic epg members with pool servers. | ||
application_persistence_profile_ref | no | Persistence will ensure the same user sticks to the same server for a desired duration of time. It is a reference to an object of type applicationpersistenceprofile. | ||
autoscale_launch_config_ref | no | If configured then avi will trigger orchestration of pool server creation and deletion. It is only supported for container clouds like mesos, opensift, kubernates, docker etc. It is a reference to an object of type autoscalelaunchconfig. | ||
autoscale_networks | no | Network ids for the launch configuration. | ||
autoscale_policy_ref | no | Reference to server autoscale policy. It is a reference to an object of type serverautoscalepolicy. | ||
capacity_estimation | no | Inline estimation of capacity of servers. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
capacity_estimation_ttfb_thresh | no | The maximum time-to-first-byte of a server. Allowed values are 1-5000. Special values are 0 - 'automatic'. Default value when not specified in API or module is interpreted by Avi Controller as 0. | ||
cloud_config_cksum | no | Checksum of cloud configuration for pool. Internally set by cloud connector. | ||
cloud_ref | no | It is a reference to an object of type cloud. | ||
connection_ramp_duration | no | Duration for which new connections will be gradually ramped up to a server recently brought online. Useful for lb algorithms that are least connection based. Allowed values are 1-300. Special values are 0 - 'immediate'. Default value when not specified in API or module is interpreted by Avi Controller as 10. | ||
controller | no | IP address or hostname of the controller. The default value is the environment variable AVI_CONTROLLER . | ||
created_by | no | Creator name. | ||
default_server_port | no | Traffic sent to servers will use this destination server port unless overridden by the server's specific port attribute. The ssl checkbox enables avi to server encryption. Allowed values are 1-65535. Default value when not specified in API or module is interpreted by Avi Controller as 80. | ||
description | no | A description of the pool. | ||
domain_name | no | Comma separated list of domain names which will be used to verify the common names or subject alternative names presented by server certificates. It is performed only when common name check host_check_enabled is enabled. | ||
east_west | no | Inherited config from virtualservice. | ||
enabled | no | Enable or disable the pool. Disabling will terminate all open connections and pause health monitors. Default value when not specified in API or module is interpreted by Avi Controller as True. | ||
external_autoscale_groups | no | Names of external auto-scale groups for pool servers. Currently available only for aws. Field introduced in 17.1.2. | ||
fail_action | no | Enable an action - close connection, http redirect or local http response - when a pool failure happens. By default, a connection will be closed, in case the pool experiences a failure. | ||
fewest_tasks_feedback_delay | no | Periodicity of feedback for fewest tasks server selection algorithm. Allowed values are 1-300. Default value when not specified in API or module is interpreted by Avi Controller as 10. | ||
graceful_disable_timeout | no | Used to gracefully disable a server. Virtual service waits for the specified time before terminating the existing connections to the servers that are disabled. Allowed values are 1-60. Special values are 0 - 'immediate', -1 - 'infinite'. Default value when not specified in API or module is interpreted by Avi Controller as 1. | ||
health_monitor_refs | no | Verify server health by applying one or more health monitors. Active monitors generate synthetic traffic from each service engine and mark a server up or down based on the response. The passive monitor listens only to client to server communication. It raises or lowers the ratio of traffic destined to a server based on successful responses. It is a reference to an object of type healthmonitor. | ||
host_check_enabled | no | Enable common name check for server certificate. If enabled and no explicit domain name is specified, avi will use the incoming host header to do the match. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
inline_health_monitor | no | The passive monitor will monitor client to server connections and requests and adjust traffic load to servers based on successful responses. This may alter the expected behavior of the lb method, such as round robin. Default value when not specified in API or module is interpreted by Avi Controller as True. | ||
ipaddrgroup_ref | no | Use list of servers from ip address group. It is a reference to an object of type ipaddrgroup. | ||
lb_algorithm | no | The load balancing algorithm will pick a server within the pool's list of available servers. Enum options - LB_ALGORITHM_LEAST_CONNECTIONS, LB_ALGORITHM_ROUND_ROBIN, LB_ALGORITHM_FASTEST_RESPONSE, LB_ALGORITHM_CONSISTENT_HASH, LB_ALGORITHM_LEAST_LOAD, LB_ALGORITHM_FEWEST_SERVERS, LB_ALGORITHM_RANDOM, LB_ALGORITHM_FEWEST_TASKS, LB_ALGORITHM_NEAREST_SERVER, LB_ALGORITHM_CORE_AFFINITY. Default value when not specified in API or module is interpreted by Avi Controller as LB_ALGORITHM_LEAST_CONNECTIONS. | ||
lb_algorithm_consistent_hash_hdr | no | Http header name to be used for the hash key. | ||
lb_algorithm_core_nonaffinity (added in 2.4)
| no | Degree of non-affinity for core afffinity based server selection. Allowed values are 1-65535. Field introduced in 17.1.3. Default value when not specified in API or module is interpreted by Avi Controller as 2. | ||
lb_algorithm_hash | no | Criteria used as a key for determining the hash between the client and server. Enum options - LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS, LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT, LB_ALGORITHM_CONSISTENT_HASH_URI, LB_ALGORITHM_CONSISTENT_HASH_CUSTOM_HEADER. Default value when not specified in API or module is interpreted by Avi Controller as LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS. | ||
max_concurrent_connections_per_server | no | The maximum number of concurrent connections allowed to each server within the pool. Note applied value will be no less than the number of service engines that the pool is placed on. If set to 0, no limit is applied. Default value when not specified in API or module is interpreted by Avi Controller as 0. | ||
max_conn_rate_per_server | no | Rate limit connections to each server. | ||
name | yes | The name of the pool. | ||
networks | no | (internal-use) networks designated as containing servers for this pool. The servers may be further narrowed down by a filter. This field is used internally by avi, not editable by the user. | ||
nsx_securitygroup | no | A list of nsx service groups where the servers for the pool are created. Field introduced in 17.1.1. | ||
password | no | Password of Avi user in Avi controller. The default value is the environment variable AVI_PASSWORD . | ||
pki_profile_ref | no | Avi will validate the ssl certificate present by a server against the selected pki profile. It is a reference to an object of type pkiprofile. | ||
placement_networks | no | Manually select the networks and subnets used to provide reachability to the pool's servers. Specify the subnet using the following syntax 10-1-1-0/24. Use static routes in vrf configuration when pool servers are not directly connected butroutable from the service engine. | ||
prst_hdr_name | no | Header name for custom header persistence. | ||
request_queue_depth | no | Minimum number of requests to be queued when pool is full. Default value when not specified in API or module is interpreted by Avi Controller as 128. | ||
request_queue_enabled | no | Enable request queue when pool is full. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
rewrite_host_header_to_server_name | no | Rewrite incoming host header to server name of the server to which the request is proxied. Enabling this feature rewrites host header for requests to all servers in the pool. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
rewrite_host_header_to_sni | no | If sni server name is specified, rewrite incoming host header to the sni server name. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
server_auto_scale | no | Server autoscale. Not used anymore. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
server_count | no | Number of server_count. Default value when not specified in API or module is interpreted by Avi Controller as 0. | ||
server_name | no | Fully qualified dns hostname which will be used in the tls sni extension in server connections if sni is enabled. If no value is specified, avi will use the incoming host header instead. | ||
server_reselect | no | Server reselect configuration for http requests. | ||
servers | no | The pool directs load balanced traffic to this list of destination servers. The servers can be configured by ip address, name, network or via ip address group. | ||
sni_enabled | no | Enable tls sni for server connections. If disabled, avi will not send the sni extension as part of the handshake. Default value when not specified in API or module is interpreted by Avi Controller as True. | ||
ssl_key_and_certificate_ref | no | Service engines will present a client ssl certificate to the server. It is a reference to an object of type sslkeyandcertificate. | ||
ssl_profile_ref | no | When enabled, avi re-encrypts traffic to the backend servers. The specific ssl profile defines which ciphers and ssl versions will be supported. It is a reference to an object of type sslprofile. | ||
state | no | present |
| The state that should be applied on the entity. |
tenant | no | admin | Name of tenant used for all Avi API calls and context of object. | |
tenant_ref | no | It is a reference to an object of type tenant. | ||
tenant_uuid | no | UUID of tenant used for all Avi API calls and context of object. | ||
url | no | Avi controller URL of the object. | ||
use_service_port | no | Do not translate the client's destination port when sending the connection to the server. The pool or servers specified service port will still be used for health monitoring. Default value when not specified in API or module is interpreted by Avi Controller as False. | ||
username | no | Username used for accessing Avi controller. The default value is the environment variable AVI_USERNAME . | ||
uuid | no | Uuid of the pool. | ||
vrf_ref | no | Virtual routing context that the pool is bound to. This is used to provide the isolation of the set of networks the pool is attached to. The pool inherits the virtual routing conext of the virtual service, and this field is used only internally, and is set by pb-transform. It is a reference to an object of type vrfcontext. |
Examples
- name: Create a Pool with two servers and HTTP monitor avi_pool: controller: 10.10.1.20 username: avi_user password: avi_password name: testpool1 description: testpool1 state: present health_monitor_refs: - '/api/healthmonitor?name=System-HTTP' servers: - ip: addr: 10.10.2.20 type: V4 - ip: addr: 10.10.2.21 type: V4
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
obj | Pool (api/pool) object | success, changed | dict |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
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/avi_pool_module.html