AWS Platform Guide: A complete guide on how to build your infrastructure on AWS

At thoughtbot, we’ve built many infrastructures on AWS and are experts in migrations. We’ve designed this guide to help anyone going through the same process to build a complete platform on AWS from scratch following the recommendations from AWS prescriptive guidance.

Check out thoughtbot’s AWS Platform Guide!

How can I use this guide?

The guide is presented in the same order you should follow to build your infrastructure. Starting from the introduction, you can use the Next and Previous links to navigate through the guide.

To use the guide, you must at least understand the basics of AWS, Terraform, Kubernetes and CloudFormation.

The guide is built to help you use Flightdeck, thoughtbot’s open-source set of processes and Infrastructure as Code modules that walk you through setting up the components necessary for rapidly building out a mature, stable, production platform. We’ll also use our Landing Zone template, which will help you set up your AWS accounts and configure Single Sign-On (SSO) for your organization.

What does it cover?

  • Conventions on AWS accounts, repositories and Terraform
  • Landing Zone setup, including instructions on how to enroll legacy accounts and how to configure Single Sign-On (SSO)
  • Provisioning of the Platform resources, including Networks, Ingress stack, and Flightdeck
  • How to maintain the Platform
  • Provisioning of the Applications resources, including your EKS cluster, RDS, Secrets, and DNS
  • How to deploy your applications to your new Platform, including how to set up your CI/CD pipeline using GitHub Actions or AWS CodePipeline, how to manage secrets, and how to deploy to Kubernetes
  • Scaling and Capacity details
  • How to troubleshoot common issues
  • Security and Compliance details
  • Modules and templates used for the Platform (under the References chapter)
  • A section with additional, optional add-ons

We’re continually updating this guide with improved information we learn and additional features we build. Make sure to bookmark it and check back often!

You can also check our other Open Source resources for your infrastructure and development on our Open Source page.

If you have any questions or need our help building your AWS infrastructure, contact us here! We’ll be happy to collaborate with you to launch your project on AWS.