AWS CloudFormation
User Guide (API Version 2010-05-15)
« PreviousNext »
View the PDF for this guide.Go to the AWS Discussion Forum for this product.Go to the Kindle Store to download this guide in Kindle format.Did this page help you?  Yes | No |  Tell us about it...

Document History

The following table describes the important changes to the documentation since the last release of AWS CloudFormation.

  • API Version: 2010-05-15

ChangeDescriptionRelease Date

API logging with AWS CloudTrail

You can use AWS CloudTrail to log AWS CloudFormation requests. With AWS CloudTrail you can get a history of AWS CloudFormation API calls for your account. For more information, see Logging AWS CloudFormation API Calls in AWS CloudTrail.

April 02, 2014

Elastic Load Balancing update

You can specify an access logging policy to capture information about requests made to your load balancer. You can also specify a connection draining policy that describes how to handle in-flight requests when instances are deregistered or become unhealthy. For more information, see AWS::ElasticLoadBalancing::LoadBalancer.

March 20, 2014

AWS OpsWorks support

You can use AWS CloudFormation to provision and manage AWS OpsWorks stacks. For more information, see AWS::OpsWorks::Stack or AWS OpsWorks Snippets.

March 03, 2014

Limit increase

You can specify template sizes up to 460,800 bytes in Amazon S3.

February 18, 2014

Amazon Redshift support

You can use AWS CloudFormation to provision and manage Amazon Redshift clusters. For more information, see Amazon Redshift Snippets or AWS::Redshift::Cluster.

February 10, 2014

Amazon S3 buckets and bucket policies update

You can update some properties of the Amazon S3 bucket and bucket policy resources. For more information, see AWS::S3::Bucket or AWS::S3::BucketPolicy.

February 10, 2014

AWS Elastic Beanstalk environments and application versions update

You can update AWS Elastic Beanstalk environment configurations and application versions. For more information, see AWS::ElasticBeanstalk::Environment, AWS::ElasticBeanstalk::ConfigurationTemplate, or AWS::ElasticBeanstalk::ApplicationVersion.

February 10, 2014

Amazon SQS update

You can specify a dead letter queue for an Amazon SQS queue. For more information, see AWS::SQS::Queue.

January 29, 2014

Auto Scaling scheduled actions

You can scale the number of Amazon EC2 instances in an Auto Scaling group based on a schedule. By using a schedule, you can scale applications in response to predictable load changes. For more information, see AWS::AutoScaling::ScheduledAction.

January 27, 2014

DynamoDB secondary indexes

You can create local and global secondary indexes for DynamoDB databases. By using secondary indexes, you can efficiently access data with attributes other than the primary key. For more information, see AWS::DynamoDB::Table.

January 27, 2014

Auto Scaling update

You can specify an instance ID for an Auto Scaling group or launch configuration. You can also specify additional Auto Scaling block device properties. For more information, see AWS::AutoScaling::AutoScalingGroup or AWS::AutoScaling::LaunchConfiguration.

January 02, 2014

Amazon SQS update

You can update Amazon SQS queues and specify additional properties. For more information, see AWS::SQS::Queue.

January 02, 2014

Limit increases

You can specify up to 60 parameters and 60 outputs in your AWS CloudFormation templates

January 02, 2014

New console

The new AWS CloudFormation console adds features like auto-refreshing stack events and alphabetical ordering of stack parameters.

December 19, 2013

Cross-zone load balancing

With cross-zone load balancing, you can route traffic to back-end instances across all Avalibility Zones. For more information, see AWS::ElasticLoadBalancing::LoadBalancer.

December 19, 2013

AWS Elastic Beanstalk environment tiers

You can specify whether AWS Elastic Beanstalk provisions resources to support a web server or to handle background-processing tasks. For more information, see AWS::ElasticBeanstalk::Environment.

December 19, 2013

Resource names

You can assign names (physical IDs) to the following resources:

  • ElastiCache Clusters

  • Elastic Load Balancing load balancers

  • Amazon Relational Database Service DB instances

For more information, see Name Type.

December 19, 2013

VPN support

You can enable a virtual private gateway (VGW) to propagate routes to the routing tables of a VPC. For more information, see AWS::EC2::VPNGatewayRoutePropagation.

November 22, 2013

Conditionally create resources and assign properties

Using input parameters, you can control the creation and settings of designated stack resources by defining conditions in your AWS CloudFormation templates. For example, you can use conditions to create stack resources for a production environment. Using the same template, you can create similar stack resources with lower capacity for a test environment. For more information, see Condition Functions.

November 08, 2013

Prevent accidental updates to stack resources

You can prevent stack updates that might result in unintentional changes to stack resources. For example, if you have a stack with a database layer that should rarely be updated, you can set a stack policy that prevents most users from updating that database layer. For more information, see Prevent Updates to Stack Resources.

November 08, 2013

Name resources

Instead of using AWS CloudFormation-generated physical IDs, you can assign names to certain resources. The following AWS CloudFormation resources support naming:

  • Amazon CloudWatch alarms

  • Amazon DynamoDB tables

  • AWS Elastic Beanstalk applications and environments

  • Amazon S3 buckets

  • Amazon SNS topics

  • Amazon SQS queues

For more information, see Name Type.

November 08, 2013

Assign custom resource types

In your templates, you can specify your own resource type for AWS CloudFormation custom resources (AWS::CloudFormation::CustomResource). By using your own custom resource type name, you can quickly identify the type of custom resources that you have in your stack. For example, you can specify "Type": "Custom::MyCustomResource". For more information, see AWS::CloudFormation::CustomResource.

November 08, 2013

Add pseudo parameter

You can now refer to the AWS AccountID inside AWS CloudFormation templates by referring to the AWS::AccountID pseudo parameter. For more information, see Pseudo Parameters Reference.

November 08, 2013

Specify stacks in IAM policies

You can allow or deny IAM users, groups, or roles to operate on specific AWS CloudFormation stacks. For example, you can deny the delete stack action on a specific stack ID. For more information, see Controlling Access with AWS Identity and Access Management.

November 08, 2013

Federation support

AWS CloudFormation supports temporary security credentials from IAM roles, which enable scenarios such as federation and single sign-on to the AWS Management Console. You can also make calls to AWS CloudFormation from Amazon EC2 instances without embedding long-term security credentials by using IAM roles. For more information about AWS CloudFormation and IAM, see Controlling Access with AWS Identity and Access Management.

October 14, 2013

Amazon RDS read replica support

You can now create Amazon RDS read replicas from a source DB instance. For more information, see the SourceDBInstanceIdentifier property in the AWS::RDS::DBInstance resource.

September 24, 2013

Associate public IP address with instances in Auto Scaling group.

You can now associate public IP addresses with instances in an Auto Scaling group. For more information, see AWS::AutoScaling::LaunchConfiguration.

September 19, 2013

Additional VPC support.

AWS CloudFormation added several enhancements to support VPC and VPN functionality:

  • You can associate a public IP address and multiple private IP addresses to Amazon EC2 network interfaces. For more information, see AWS::EC2::NetworkInterface. You can also associate a primary private IP address to an elastic IP address (EIP).

  • You can enable DNS support and specify DNS host names. For more information, see AWS::EC2::VPC.

  • You can specify a static route between a virtual private gateway to your VPN gateway. For more information, see AWS::EC2::VPNConnectionRoute.

September 17, 2013

Redis and VPC security groups support for Amazon ElastiCache.

You can now specify Redis as the cache engine for an ElastiCache cluster. You can also now assign VPC security groups to ElastiCache clusters. For more information, see AWS::ElastiCache::CacheCluster.

September 3, 2013

Parallel stack creation, update and deletion, and nested stack updates.

CloudFormation now creates, updates, and deletes resources in parallel, improving the operations' performance. If you update a top-level template, CloudFormation automatically updates any nested stacks that have changed. For more information, see AWS CloudFormation Stacks Updates.

August 12, 2013

VPC security groups can now be set in AWS RDS instances

You can now assign VPC security groups to an Amazon RDS instance with AWS CloudFormation. For more information, see the VPCSecurityGroups property in AWS::RDS::DBInstance.

February 28, 2013

Rolling Deployments for Auto Scaling Groups

AWS CloudFormation now supports update policies on autoscaling groups, which describe how instances in the autoscaling group are replaced or modified when the auto scaling group adds or removes instances. You can modify these settings at stack creation or during a stack update.

For more information and an example, see UpdatePolicy.

February 20, 2013

Cancel and Rollback Action for Stack Updates

AWS CloudFormation supports the ability to cancel a stack update. The stack must be in the UPDATE_IN_PROGRESS state when the update request is made. More information is available in the following topics:

February 20, 2013

EBS-Optimized Instances for Auto Scaling Groups

You can now provision EBS-optimized instances in auto scaling groups for dedicated throughput to Amazon EBS in autoscaled instances. The implementation is similar to that of the previously released support for optimized EBS EC2 instances.

For more information, see the new EbsOptimized property in AWS::AutoScaling::LaunchConfiguration.

February 20, 2013

New Documentation

AWS::EC2::Instance now provides a BlockDeviceMappings property to allow you to set block device mappings for your EC2 instance.

With this change, two new types have been added:

December 21, 2012

New Documentation

New sections have been added to describe the procedures for creating and viewing stacks using the recently redesigned AWS Management Console. You can find them here:

December 21, 2012

New Documentation

Custom resources are special AWS CloudFormation resources that provide a way for a template developer to include non-AWS resources in an AWS CloudFormation stack. The custom resource provider can be either a template developer or a separate third-party resource provider.

Information about custom resources is provided in the following topics:

November 15, 2012

Updated Documentation

AWS CloudFormation now supports specifying provisioned I/O operations per second (IOPS) for Amazon RDS instances. You can set this value from 1000–10,000 in 1000 IOPS increments by using the new Iops property in AWS::RDS::DBInstance.

For more information about specifying IOPS for RDS instances, see Provisioned IOPS in the Amazon Relational Database Service User Guide.

November 15, 2012

New and Updated Documentation

Reorganization of topics to more clearly provide specific information about using the AWS Management Console and using the AWS CloudFormation command-line interface (CLI).

Information about tagging AWS CloudFormation stacks has been added to the documentation, including new guides and updated reference topics:

New information about working with Windows Stacks:

New topic: Using Regular Expressions in AWS CloudFormation Templates.

August 27, 2012

New Feature

AWS CloudFormation now provides full support for Virtual Private Cloud (VPC) security with Amazon EC2. You can now create and populate an entire VPC with every type of VPC resource (subnets, gateways, network ACLs, route tables, and so forth) using a single AWS CloudFormation template.

Templates can be downloaded that demonstrate new VPC features:

Single instance in a single subnet
Multiple subnets with Elastic Load Balancing (ELB) and an auto scaling group

Documentation for the following resource types has been updated:

AWS::EC2::SecurityGroup
AWS::EC2::SecurityGroupIngress
AWS::EC2::SecurityGroupEgress
AWS::EC2::Instance
AWS::AutoScaling::AutoScalingGroup
AWS::EC2::EIP
AWS::EC2::EIPAssociation
AWS::ElasticLoadBalancing::LoadBalancer

New resource types have been added to the documentation:

AWS::EC2::VPC
AWS::EC2::InternetGateway
AWS::EC2::DHCPOptions
AWS::EC2::DHCPOptions
AWS::EC2::RouteTable
AWS::EC2::NetworkAcl
AWS::EC2::NetworkAclEntry
AWS::EC2::Subnet
AWS::EC2::VPNGateway
AWS::EC2::CustomerGateway

April 25, 2012

New Feature

AWS CloudFormation now allows you to add or remove elements from a stack when updating it. AWS CloudFormation Stacks Updates has been updated, and a new section has been added to the walkthrough: Change the Stack's Resources, which describes how to add and remove resources when updating the stack.

April 13, 2012

New Feature

AWS CloudFormation now provides support for resources in an existing Amazon Virtual Private Cloud (VPC). With this release, you can:

  • Launch an EC2 Dedicated Instance into an existing VPC. For more information, see AWS::EC2::Instance.

  • Set the SourceDestCheck attribute of an Amazon EC2 instance that resides in an existing VPC. For more information, see AWS::EC2::Instance

  • Create Amazon Elastic IP Addresses in an existing VPC. For more information, see AWS::EC2::EIP

  • Use CloudFormation to create VPC security groups and ingress/egress rules in an existing VPC. For more information, see AWS::EC2::SecurityGroup.

  • Associate an Auto Scaling Group with an existing Amazon VPC by setting the VPCZoneIdentifier property of your AWS::AutoScaling::AutoScalingGroup resource. For more information, see AWS::AutoScaling::AutoScalingGroup.

  • Attach an Elastic Load Balancing LoadBalancer to a VPC subnet and create security groups for the LoadBalancer. For more information, see AWS::ElasticLoadBalancing::LoadBalancer.

  • Create an RDS instance in an existing VPC. For more information, see AWS::RDS::DBInstance.

February 2, 2012

New Feature

You can now update properties for the following resources in an existing stack:

For the full list of updateable resources and details about things to consider when updating a stack, see AWS CloudFormation Stacks Updates.

February 2, 2012

Restructured Guide

Reorganized existing sections into new sections: Working with AWS CloudFormation Templates and Managing Stacks. Moved Template Reference to the top level of the Table of Contents. Moved Estimating the Cost of Your AWS CloudFormation Stack to the Getting Started section.

February 2, 2012

New Content

Added three new sections:

February 2, 2012

New Feature

AWS CloudFormation now provides the aws cloudformation list-stacks command, which enables you to list stacks filtered by stack status. Deleted stacks can be listed for up to 90 days after they have been deleted. For more information, see Describing and Listing Your Stacks.

May 26, 2011

New Features

The aws cloudformation describe-stack-resources and aws cloudformation get-template commands now enable you to get information from stacks which have been deleted for 90 days after they have been deleted. For more information, see Listing Resources and Retrieving a Template.

May 26, 2011

New Link

AWS CloudFormation endpoint information is now located in the Amazon Web Services General Reference. For more information, go to Regions and Endpoints in Amazon Web Services General Reference.

March 1, 2011

Initial Release

This is the initial public release of AWS CloudFormation.

February 25, 2011