Introduction
A reference architecture is a pre-designed set of integrated cloud resource components used to create a standard web application environment. Starting your project with a reference architecture will accelerate the infrastructure provisioning process while ensuring security and industry best practices. The reference architecture serves as the foundation of your project and can be customized to meet your specific needs from the beginning or as new requirements arise.
Key benefits of using the reference architectures as follows.
- Accelerates infrastructure provisioning process
- Incorporates security and industry best practices
- Provides a standard web application environment
- Serves as a foundation for your project
- Can be customized to meet your specific project needs
Infrastructure Components Layers
Reference architecture is built on parameterized Terraform modules as building blocks, these modules are catagorized into three layers as in below table.
Layer | Description | AWS Account | Change Frequency |
---|---|---|---|
Shared | Resources that are referenced by multiple environments of a particular project, such as AWS ECR (Elastic Container Registry) | Shared | Rare |
Base | Resources that are common to a specific environment, such as VPC or RDS Database Server | Project account | Medium |
Service | Resources that are coupled with a partifical service, such as an API service running on AWS ECS (Elastic Container Service) | Project account | High |
When deploying the architecture for an environment, we will start in above order from top to bottom as resources are depending on top layers.