Account Management
This chapter presents how DevOps Accelerator designs and manages AWS Account architectures. We will explain how DevOps Accelerator provisions and manages AWS Accounts using Semaphore and Terraform, the reasoning behind our decisions, and how this architecture will better align your organization with the AWS Well-Architected Framework.
You will learn
- Why to leverage multiple AWS accounts within an AWS Organization
- How we organize accounts into organizational units (OUs) to manage access and apply Service Control Policies (SCPs) to provide guard rails
- The set of components we use to provision, configure, and manage AWS accounts, including account-level settings, service control policies, and Terraform state backends, using native Terraform with Semaphore
The Problem
The AWS Well-Architected Framework defines AWS architectural best practices and presents a set of foundational questions to enable you to understand how a specific architecture aligns with cloud best practices.
The AWS Well-Architected Framework provides several foundational recommendations, one of which is to distribute workloads across multiple AWS accounts. However, the framework does not prescribe how this should be achieved. AWS offers resources such as Control Tower or Account Factory for provisioning accounts, but these resources have some limitations. The primary issue is that they cannot be managed sufficiently with Terraform, which means manual effort is required to use them.