This role is used to configure applications load balancing on F5 bigip appliances. The idea of this role is to have an inventory host per application.
For each application, the role will proceed to the following configuration :
Here are the requirements to use this role :
You'll find below available variables with their default values :
The following variables needs to be defined as they defined the bigip to access and the credentials to use to proceed to the configuration :
bigip_hostname: ""
bigip_user: ""
bigip_passwd: ""
bigip_validate_certs: false
The following variable is used to defined disable arp response for created virtual address; this is useful for example when you are working on a f5 bigip migration :
readdressed: true
This first variable is the name of the application. It's used to define some ltm objects names like the virtual server, the pool, the profiles, ...
application: "my-super-app"
This env
variable is used to define the environment of the virtual server (prod, qa, staging, ...). It's used to define some ltm objects names like the virtual server, the pool, the profiles, ...
env: "prod"
The following variable is the name of the team in charge of the concerned app. It's used to define some ltm objects names like the virtual server, the pool, the profiles, ...
team: "my-super-team"
The following variable is the route domain id for the application :
rd: "5"
monitorprefix: "m"
Should be tcp, udp or http :
monitor: "tcp"
tcp_monitor_settings:
interval: 10
timeout: 31
udp_monitor_settings:
interval: 10
timeout: 31
http_monitor_settings:
interval: 10
timeout: 31
receive: ""
send: ""
nodeprefix: "n"
poolprefix: "g"
pool:
id: "00"
lb_method: "round-robin"
priority_group_activation: 0
members:
- { "id": "00", "name": "node-1", "ip": "1.1.1.1", "port": 80, "priority_group": 1, "ratio": 1 }
- { "id": "01", "name": "node-2", "ip": "1.1.1.2", "port": 80, "priority_group": 1, "ratio": 1 }
profileprefix: "p"
Enabling default http profile creation for the application :
enable_http_profile: false
Enabling default tcp profile creation for the application :
enable_tcp_profile: true
Enabling default udp profile creation for the application :
enable_udp_profile: false
Enabling default ssl client profile creation for the application :
enable_clientssl_profile: false ssl_ca_chain: "ca-acknowledge" ssl_ca_chain_filename: "ca.crt"
snatprefix: "snat"
Used to enable or disable snat if you want to have snat pool or snat translation :
snat: false
Should be pool or translation :
snat_type: "pool"
Used to define snat pool members :
snat_pool_members: [ "10.123.2.106", "10.123.2.107" ]
Used for snat translation address :
snat_translation: "10.123.2.106"
vsprefix: "v"
vs:
address: "10.123.4.35"
port: 80
type: "standard"
N/A
- hosts: all
connection: local
roles:
- ansible-bigip-ltm
BSD