You can check out a recording of this demo
README.md
within brownfield-approach
subfolder.README.md
within nia
subfolder.There is a Lab Guide that is designed to work within F5's Unified Demo Framework. The lab walks through options 1 and 3.
You can generate the HTML version of the guide by running the following commands.
cd docs
pip install -r requirements.txt
make html
The generated docs will be in the docs/_build/html
directory.
The terraform
directory has tf files for creating instances for consul, f5, iam policy, nginx servers with autoscale group.
main.tf
refers to what region is used on aws.ssh.tf
is used to create the key pairs.vpc.tf
is used to create a new vpc and also to define the aws security groups.outputs.tf
is used to output and display F5 BIG-IP management IP and F5 BIG-IP dynamic PasswordThis demo has been developed on Ubuntu 18.04 and Mac OS.
git clone https://github.com/hashicorp/f5-terraform-consul-sd-webinar
cd f5-terraform-consul-sd-webinar/terraform/
For Mac Users
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
terraform.tfvars.example
and add a prefix to identify your resourcesterraform.tfvars.example
specify the source IP address you will be connecting from i.e. 192.0.2.10/32terraform.tfvars.example
to terraform.tfvars
terraform init
terraform plan
terraform apply
The following steps will occur:
terraform-aws-bigip-module
), consul, NGINX web server instances on AWSterraform.tfvars
file in the as3
directory for use in the next stepf5-bigip-runtime-init
It may take up to 5 minutes or after the run is complete for the environment to become ready. The URL for the BIG-IP UI is provided as part of the output. Verify you can reach the UI before proceeding.
Next we need to deploy the AS3 declaration using the bigip terraform provider.
terraform init
terraform plan
terraform apply
main.tf
file. You can review the terraform.tfvars
file that was generated in the previous step or rename and edit terraform.tfvars.example
file in that directory to pass the necessary variables to terraform, or enter them manually via the CLI, copying the format of the values in the file.Folder as3 has three files, main.tf
, nginx.json
and variables.tf
. main.tf
is used to provision nginx.json
template to BIG-IP once its ready.
consul.sh
is used to install consul
f5.tpl
is used to change the admin password.
nginx.sh
is used to install consul agent on nginx servers