F5 LTM Terraform Template
A Terraform module to provide a BIG-IQ licensed F5 BIG-IP device provisioned in a multi-arm configuration.
Name |
Version |
terraform |
>= 0.12.25 |
aws |
>= 2.68 |
random |
>= 2.3 |
template |
>= 2.1 |
Name |
Version |
random |
>= 2.3 |
template |
>= 2.1 |
aws |
>= 2.68 |
Name |
Description |
Type |
Default |
vpc_id |
ID of the VPC where the F5 BIG-IP will reside. |
string |
n/a |
key_pair |
Name of key pair to SSH into the F5 BIG-IP. |
string |
"" |
instance_type |
Size of F5 BIG-IP's EC2 instance. |
string |
"t2.large" |
management_subnet_id |
ID of F5 BIG-IP's management subnet. |
string |
n/a |
external_subnet_id |
ID of F5 BIG-IP's external subnet. |
string |
n/a |
internal_subnet_id |
ID of F5 BIG-IP's internal subnet. |
string |
n/a |
management_ip |
Private IP Address of F5 BIG-IP's management interface. |
string |
n/a |
external_ips |
List of private IP addresses used by F5 BIG-IP's external interface. |
list(string) |
n/a |
internal_ips |
List of private IP addresses used by F5 BIG-IP's internal interface. |
list(string) |
n/a |
hostname |
Hostname of F5 BIG-IP. |
string |
"demo-f5.example.com" |
admin_password |
Admin password for F5 management console and SSH server. |
string |
"" |
default_tags |
n/a |
map(any) |
{} |
name_prefix |
n/a |
string |
"" |
provisioned_modules |
List of provisioned BIG-IP modules configured on the F5 BIG-IP. |
list(string) |
[ ""ltm": "nominal"" ] |
mgmt_sg_ports |
List of allowed ingress ports for management interface. |
list |
[ { "cidr_blocks": [ "0.0.0.0/0" ], "port": 22, "protocol": "tcp" }, { "cidr_blocks": [ "0.0.0.0/0" ], "port": 443, "protocol": "tcp" }, { "cidr_blocks": [ "0.0.0.0/0" ], "port": 8443, "protocol": "tcp" } ] |
external_sg_ports |
List of allowed ingress ports for external interface. |
list |
[ { "cidr_blocks": [ "0.0.0.0/0" ], "port": 80, "protocol": "tcp" }, { "cidr_blocks": [ "0.0.0.0/0" ], "port": 443, "protocol": "tcp" } ] |
include_public_ip |
Adds an EIP to the F5 BIG-IP management interface. true or false. |
bool |
false |
Name |
Description |
f5_management_ip |
Public IP of F5 BIG-IP's management interface. |
f5_management_private_ips |
Private IPs of F5 BIG-IP's management interface. |
f5_internal_private_ips |
Private IPs of F5 BIG-IP's internal interface. |
f5_external_private_ips |
Private IPs of F5 BIG-IP's external interface. |
f5_admin_password |
Password for F5 BIG-IP admin account. |
f5_mgmt_mac_address |
MAC address for F5 management interface. Used for licensing purposes |
module "f5_ltm_a" {
source = "git@github.com:wwt/f5-ltm-tf-template/"
key_pair = "test-key"
name_prefix = "${terraform.workspace}-"
vpc_id = "vpc-09072e62ba8e0dfc0"
management_subnet_id = subnet-0c1c74a9b2a25646a
external_subnet_id = subnet-0c1c74a9b2a25646b
internal_subnet_id = subnet-0c1c74a9b2a25646c
external_ips = ["10.128.10.101"]
internal_ips = ["10.128.20.101"]
management_ip = "10.128.30.101"
include_public_ip = true
bigiq_server = "license.wwtlab.net"
bigiq_username = "admin"
bigiq_password = "admin"
license_pool = "license_server"
provisioned_modules = ["\"ltm\": \"nominal\"", "\"gtm\": \"nominal\""]
}
tyler.hatton@wwt.com