Apps, Stacks & Constructs
Overview
The diagram above illustrates a high level overview of the AWS CDK.
At its core is the App.
App
-
An application written in TypeScript, JavaScript, Python, Java, or C# that uses the AWS CDK to define AWS infrastructure
-
It defines 1 or more Stacks
Stacks
-
Unit of deployment within the AWS CDK
-
Any number of stacks can be defined for an App
-
Stacks contain Constructs
Constructs
-
Represents a reusable AWS cloud resource .e.g. S3 Bucket, EC2 Instance, IAM Role, DynamoDB Table..
-
A Stack can contain 1 or more Constructs
-
Encapsulates everything AWS CloudFormtion requires to create cloud infrastructure
CloudFormation
You will notice the use of CloudFormation here.
The AWS CDK is a development framework for defining
AWS cloud infrastructure in code.
CloudFormation provides the mechanism for provisioning
the cloud infrastructure.
Further reading
AWS Solutions Constructs – A Library of Architecture Patterns for the AWS CDK