Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Deploy a VPX high-availability pair with elastic IP addresses across different AWS zones

This folder contains the terraform configuration scripts needed to deploy a Citrix ADC VPX pair on two different Availability Zones in AWS.

The configuration follows closely the process documented HERE.

At the end of a successful deployment, inter alia, the following resources will be deployed.

  • 1 VPC
  • 6 Subnets
  • 2 CitrixADC VPXs - primary and secondary, configured in High Availability mode
  • 6 ENIs - 3 ENIs for each CitrixADC VPXs
  • 3 EIPs
    • 2 for accessing CitrixADC VPX management interface
    • 1 for client traffic
  • Required security groups, IAM Role etc

Folder Structure

Refer HERE.

Usage

Refer HERE.## Inputs

Inputs

Name Description Type Default Required
aws_availability_zones List of 2 availability zones to create resources in. list(string) n/a yes
aws_region The AWS region to create things in string n/a yes
aws_ssh_keypair_name SSH key name stored on AWS EC2 to access EC2 instances string n/a yes
citrixadc_instance_type CitrixADC VPX EC2 instance type. string "m5.xlarge" no
citrixadc_management_access_cidr The CIDR block of the machines that will SSH into the NSIPs of the VPX HA pair. string n/a yes
citrixadc_management_password The new ADC password that will replace the default one on both ADC instances. string n/a yes
citrixadc_product_name CitrixADC Product Name: Select the product name from the list of available products.
Options:
Citrix ADC VPX - Customer Licensed
string "Citrix ADC VPX - Customer Licensed" no
citrixadc_product_version Citrix ADC product version string "13.1" no
citrixadc_rpc_node_password The new ADC RPC node password that will replace the default one on both ADC instances. Learn More about RPCNode string n/a yes
client_subnet_cidr_list List of 2 CIDR blocks that will be used for the client subnets. Must be contained inside the VPC cidr block. list(string) n/a yes
ipset_name Name for the ipset for HA configuration. string "ipset_tf" no
lbvserver_name Name for the LB vserver. string "vserver1" no
management_subnet_cidr_list List of 2 CIDR blocks that will be used for the management subnets. Must be contained inside the VPC cidr block. list(string) n/a yes
new_keypair_required if true (default), terraform creates a new EC2 keypair and associates it to Citrix ADC VPXs. If false terraform expects an existing keypair name via var.aws_ssh_keypair_name variable bool true no
server_subnet_cidr_list List of 2 CIDR blocks that will be used for the server subnets. Must be contained inside the VPC cidr block. list(string) n/a yes
server_subnet_masks List of 2 subnet masks for the server networks. list(string) n/a yes
ssh_public_key_filename The public part of the SSH key you will use to access EC2 instances string n/a yes
vpc_cidr The CIDR block that will be used for all needed subnets string n/a yes

Outputs

Name Description
citrixadc_client_public_ip IP address which clients on the data plain will use to access backend services.
citrixadc_instance_ids List of the CitrixADC VPX instances ids.
citrixadc_management_public_ips List of the public IP addresses assigned to Primary and Secondary CitrixADC management interfaces.