← Back to Skills Library

AWS CloudFormation

Information Technology > Infrastructure as code (IaC)

Description

AWS CloudFormation is a service that simplifies the process of setting up and managing AWS resources by allowing users to define their infrastructure as code. With CloudFormation, you can create, update, and delete a collection of related AWS resources in an orderly and predictable fashion. By using templates written in JSON or YAML, you can automate the provisioning and configuration of your entire cloud environment. This not only reduces manual effort but also ensures consistency and repeatability across deployments. Whether you're managing a single application or a complex multi-region architecture, CloudFormation helps streamline operations and enhances scalability, making it an essential tool for efficient cloud management.

Expected Behaviors

✎
LEVEL 1

Fundamental Awareness

At the fundamental awareness level, individuals are expected to understand the basic concepts and benefits of AWS CloudFormation, navigate the AWS Management Console, and identify the primary components of a CloudFormation template.

🌱
LEVEL 2

Novice

Novices can create simple CloudFormation stacks using predefined templates, modify basic parameters, and perform basic stack operations such as deployment and deletion. They have a foundational understanding of how CloudFormation works.

🌍
LEVEL 3

Intermediate

Intermediate users are capable of writing custom CloudFormation templates in JSON or YAML, implementing intrinsic functions, and managing stack updates and changesets. They can handle more complex scenarios and troubleshoot common issues.

⭐
LEVEL 4

Advanced

Advanced practitioners utilize CloudFormation StackSets for multi-region deployments, integrate CloudFormation with other AWS services, and implement nested stacks for modular templates. They are adept at managing large-scale infrastructure deployments.

🏆
LEVEL 5

Expert

Experts design complex CloudFormation templates for extensive infrastructure, automate deployments using CI/CD pipelines, and optimize stack performance. They possess deep troubleshooting skills and can handle the most challenging CloudFormation tasks.

Micro Skills

✎
LEVEL 1

Fundamental Awareness

Defining Infrastructure as Code (IaC)
Explaining the advantages of using CloudFormation over manual provisioning
Identifying use cases for CloudFormation in different environments
Describing the cost management benefits of using CloudFormation
Locating the CloudFormation service in the AWS Management Console
Understanding the CloudFormation dashboard layout
Accessing CloudFormation stack details and events
Using the CloudFormation console to view template details
Recognizing the structure of a CloudFormation template
Understanding the purpose of the 'Resources' section
Identifying the 'Parameters' section and its usage
Explaining the 'Outputs' section and its significance
🌱
LEVEL 2

Novice

Selecting a predefined CloudFormation template from the AWS Management Console
Configuring stack name and parameters in the CloudFormation console
Reviewing and acknowledging IAM resource creation
Launching the stack and monitoring its progress
Verifying the successful creation of AWS resources
Identifying modifiable parameters in a CloudFormation template
Editing parameter values in the AWS Management Console
Saving changes and updating the CloudFormation stack
Monitoring the stack update process
Validating the changes in the deployed AWS resources
Initiating the deployment of a new CloudFormation stack
Specifying stack settings and options during deployment
Monitoring stack creation events and resolving issues
Deleting a CloudFormation stack from the AWS Management Console
Handling dependencies and cleanup of associated resources
🌍
LEVEL 3

Intermediate

Understanding the structure of JSON and YAML formats
Defining resources in a CloudFormation template
Specifying parameters and outputs in a template
Using mappings to create conditional values
Validating CloudFormation templates for syntax errors
Using Fn::Join to concatenate strings
Applying Fn::Sub for string substitution
Utilizing Fn::GetAtt to retrieve resource attributes
Implementing Fn::If for conditional statements
Leveraging Fn::ImportValue to import values from other stacks
Creating and applying changesets to update stacks
Previewing changesets before execution
Handling stack rollback scenarios
Monitoring stack events during updates
Resolving conflicts and errors in changesets
⭐
LEVEL 4

Advanced

Understanding the concept and benefits of StackSets
Creating a StackSet using the AWS Management Console
Configuring StackSet parameters and deployment options
Deploying StackSets across multiple AWS accounts and regions
Monitoring and managing StackSet operations
Updating and deleting StackSets
Defining IAM roles and policies in CloudFormation templates
Creating and managing S3 buckets using CloudFormation
Provisioning EC2 instances with CloudFormation
Configuring VPCs, subnets, and security groups in CloudFormation
Integrating CloudFormation with AWS Lambda functions
Using CloudFormation to manage RDS instances
Understanding the concept and benefits of nested stacks
Creating parent and child templates for nested stacks
Referencing child stacks in the parent template
Passing parameters between parent and child stacks
Managing dependencies between nested stacks
Updating and deleting nested stacks
🏆
LEVEL 5

Expert

Identifying and defining resource dependencies
Utilizing conditions and mappings for dynamic resource creation
Implementing custom resources using AWS Lambda
Applying best practices for template organization and readability
Leveraging AWS CloudFormation Designer for visual template design
Integrating CloudFormation with AWS CodePipeline
Configuring AWS CodeBuild for CloudFormation template validation
Setting up automated testing for CloudFormation stacks
Implementing rollback strategies for failed deployments
Using AWS CodeDeploy for blue/green and canary deployments
Analyzing CloudFormation stack events and logs
Identifying and resolving common stack errors
Optimizing resource creation times and dependencies
Implementing stack policies for resource protection
Monitoring stack performance using AWS CloudWatch

Skill Overview

  • Expert2 years experience
  • Micro-skills75
  • Roles requiring skill0

Sign up to prepare yourself or your team for a role that requires AWS CloudFormation.

LoginSign Up