This repository is the code base for the AWS Workshop Manage your Network using Infrastructure as Code.
When you add applications to your AWS environment, with tens or hundreds of VPCs, management (traffic inspection, access to shared services, DNS resolution, or simply connectivity) can become complex. In the workshop, you will use Terraform to explore how to manage applications within one AWS Region. We will discuss the benefits of centralizing services using AWS Transit Gateway, and how you can create a global network between AWS Regions and on-premises environments using code.
Several public modules (created and maintained by AWS) are used:
Note: The final versions of the main.tf and outputs.tf files at the end of each lab can be found in the final_code folder.
- An AWS account with an IAM user with the appropriate permissions.
- Terraform installed.
- Writing DRY (Do No Repeat Yourself) code using a modular design pattern.
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.
Name | Version |
---|---|
terraform | >= 1.3.0 |
aws | >= 4.28.0 |
awscc | >= 0.30.0 |
Name | Version |
---|---|
aws.awsoregon | 4.33.0 |
aws.awsstockholm | 4.33.0 |
No modules.
Name | Description | Type | Default | Required |
---|---|---|---|---|
aws_regions | AWS regions to spin up resources. | map(string) |
{ |
no |
identifier | Project Identifier. | string |
"manage-network-iac" |
no |
oregon_spoke_vpcs | Information about the VPCs to create in us-west-2. | any |
{ |
no |
stockholm_spoke_vpcs | Information about the VPCs to create in eu-north-1. | any |
{ |
no |
supernet | AWS Region Supernet CIDR blocks. | map(string) |
{ |
no |
transit_gateway_asn | Amazon Side ASNs to apply in the Transit Gateways. | map(string) |
{ |
no |
No outputs.