AWS CloudFormation gives developers and systems administrators an easy way to create and manage a collection of related AWS resources, provisioning and updating them in an orderly and predictable fashion. You can use AWS CloudFormation’s sample templates or create your own templates to describe the AWS resources, and any associated dependencies or runtime parameters, required to run your application. You don’t need to figure out the order for provisioning AWS services or the subtleties of making those dependencies work. CloudFormation takes care of this for you. After the AWS resources are deployed, you can modify and update them in a controlled and predictable way, in effect applying version control to your AWS infrastructure the same way you do with your software.

Extensibility

Using the AWS CloudFormation Registry, you can model, provision, and manage third party application resources alongside AWS resources with AWS CloudFormation. Examples of third party resources are monitoring, team productivity, incident management, and version control tools.

You can build your own resource providers using the AWS CloudFormation CLI, which is an open source tool that streamlines the development process and includes local testing and code generation capabilities.

Authoring with JSON/YAML

AWS CloudFormation allows you to model your entire infrastructure in a text file. You can use JSON or YAML to describe what AWS resources you want to create and configure. If you want to design visually, you can use AWS CloudFormation Designer to help you get started with AWS CloudFormation templates.

Authoring with familiar programming languages

With the AWS Cloud Development Kit (AWS CDK) you can define your application using TypeScript, Python, Java (developer preview), and .NET (developer preview). AWS CDK is an open source software development framework that helps you model your cloud application resources using familiar programming languages, and then provision your infrastructure using AWS CloudFormation directly from your IDE. CDK provides you with high-level components that preconfigure cloud resources with proven defaults, so you can build cloud applications without needing to be an expert. To learn more about AWS CDK please visit the homepage.

Safety controls

AWS CloudFormation automates the provisioning and updating of your infrastructure in a safe and controlled manner. There are no manual steps or controls that can lead to errors. You can use Rollback Triggers to specify the CloudWatch alarm that CloudFormation should monitor during the stack creation and update process. If any of the alarms are breached, CloudFormation rolls back the entire stack operation to a previous deployed state.

Preview changes to your environment

AWS CloudFormation Change Sets allow you to preview how proposed changes to a stack might impact your running resources. For example, whether your changes will delete or replace any critical resources. AWS CloudFormation makes the changes to your stack only after you decide to execute the Change Set.

Dependency management

AWS CloudFormation automatically manages dependencies between your resources during stack management actions. You do not need to worry about specifying the order in which resource are created, updated, or deleted. CloudFormation determines the correct sequence of actions to use for each resource when performing stack operations.

Cross account & cross-region management

AWS StackSets that lets you provision a common set of AWS resources across multiple accounts and regions with a single CloudFormation template. StackSets takes care of automatically and safely provisioning, updating, or deleting stacks in multiple accounts and across multiple regions. This provides the same level of automation, repeatability, and reliability to stack management operations across regions and accounts.

Learn more about AWS CloudFormation Pricing

Learn more about AWS CloudFormation Pricing
Ready to build?
Get started with AWS CloudFormation
Have more questions?
Contact us