This repo builds Aviatrix Transit in OCI, spokes attached each with an OEL Flexible shape test vm in each. The test VMs will use a public ssh key you define in the terraform.tfvars have port 22 open and be provided public IPs. The test vm object(s) will be generated per spoke review output for public ip's.
- 1 Aviatrix Transit in OCI with N Aviatrix spokes defined in terraform.tfvars, i.e.
oci_spokes
that will be attached to Aviatrix Transit Gateway.
Terraform version | Controller version | Terraform provider version |
---|---|---|
0.13 | 6.3 | 2.18 |
Module Name | Version | Description |
---|---|---|
terraform-aviatrix-modules/oci-transit/aviatrix | 3.0.1 | This module deploys a VCN with Aviatrix transit gateways. |
terraform-aviatrix-modules/oci-spoke/aviatrix | 3.0.0 | This module deploys a VCN and an Aviatrix spoke gateway in OCI and attaches it to an Aviatrix Transit Gateway |
oci-flex-vm | N/A | Local OCI module to deploy Flex virtual machines |
network-security-groups | N/A | Local OCI module to create NSGs |
The variables are defined in terraform.tfvars
.
Note: ha_enabled = false
controls whether ha is built for spokes.
instance_size
controls the size of all the transit spokes and gateways. Default is StandardVM2.2
Flexible Shapes used for the Test VMs are defined in detail here. In this repo they are defaulted to 1 OCPU / 1 GB memory.
The Flexible shapes are only available in us-ashburn-1, us-phoenix-1, eu-frankfurt-1, uk-london-1
- Software version requirements met
- Aviatrix Controller with Access Account in OCI
- Sufficient limits in place for OCI region(s) in scope (Compute quotas, etc.)
- terraform .13 in the user environment
terraform -v
or use hashicorp/terraform docker image Instructions below. - OCI Terraform provider requirements met on your workstation
- Modify
terraform.tfvars
(i.e. access account name, regions, cidrs, etc.) and save the file. terraform init
terraform plan
terraform apply --auto-approve
Replace with the private IP of one of the created test vms - check OCI console for the value. Run the client on one test vm and the server on another test vm.
iperf3 -c 10.21.3.20 -i 2 -t 30 -M 1400 -P 1 -p 5201
iperf3 -s -p 5201
docker pull hashicorp/terraform:0.13.6
docker run -i -t -v $PWD:$PWD -w $PWD \
--env TF_VAR_username=$TF_VAR_username \
--env TF_VAR_password=$TF_VAR_password \
--env TF_VAR_controller_ip=$TF_VAR_controller_ip \
hashicorp/terraform:0.13.6 init
docker run -i -t -v $PWD:$PWD -w $PWD \
--env TF_VAR_username=$TF_VAR_username \
--env TF_VAR_password=$TF_VAR_password \
--env TF_VAR_controller_ip=$TF_VAR_controller_ip \
hashicorp/terraform:0.13.6 plan
docker run -i -t -v $PWD:$PWD -w $PWD \
--env TF_VAR_username=$TF_VAR_username \
--env TF_VAR_password=$TF_VAR_password \
--env TF_VAR_controller_ip=$TF_VAR_controller_ip \
hashicorp/terraform:0.13.6 apply --auto-approve