Pre-requisites
Let’s now walk through the step-by-step process of how to create a production-grade AWS account structure using the Gruntwork AWS Landing Zone solution.
This walkthrough has the following pre-requisites:
Gruntwork Infrastructure as Code Library
This guide uses code from the Gruntwork Infrastructure as Code Library, as it implements most of the production-grade design for you out of the box. Make sure to read our Introduction to Gruntwork.
caution
You must be a Gruntwork subscriber to access the Gruntwork Infrastructure as Code Library.
Terraform
This guide uses Terraform to define and manage all the infrastructure as code. If you’re not familiar with Terraform, check out A Comprehensive Guide to Terraform, A Crash Course on Terraform, and our Introduction to Gruntwork.
Terragrunt
This guide uses Terragrunt to configure the infrastructure as code. To get familiar with Terragrunt, explore the features, read the guides, or dive into the documentation.
Code repository
You will need to initialize an infrastructure-live
repository to contain all of the Terragrunt configuration code for your
infrastructure. You may use the for-production
example code to start with.
Keybase (optional)
As part of this guide, you will create IAM users, including, optionally, credentials for those IAM users. If you choose to create credentials, those credentials will be encrypted with a PGP key. You could provide the PGP keys manually, but a more manageable option may be to have your team members to sign up for Keybase, create PGP keys for themselves, and then you can provide their Keybase usernames, and the PGP keys will be retrieved automatically.