
Meet the course instructor, Emre Yilmaz, and briefly learn what will be covered in each course section.
Learn what AWS CloudFormation is and why to use it, along with an introduction to its concepts like templates, stacks, and change sets.
Let's start making hands-on examples! We will create our first AWS CloudFormation stack. You will learn how to create a stack from an existing template using AWS Management Console.
You will learn the sections of the stack details page on the AWS CloudFormation Console.
Learn how to delete your stacks using AWS CloudFormation Console. We will delete the stack we created in the previous lecture.
Learn which AWS region you should use while doing the examples.
The first section activity lecture. You will be given an assignment about the topics you learned in this section with the steps to finish it successfully. You will do this activity on your own but have a chance to see the instructor's solution in the following lecture.
See how the course instructor solves the section activity assigned in the previous lecture.
Learn what will be covered in Section 2.
You will learn about the AWS CloudFormation template structure and its sections before starting to write templates.
You will write your first AWS CloudFormation template with YAML.
You will learn to use the AWS resource and property types reference to get information for the definition of your AWS resources.
We will define an Amazon EC2 instance as an example.
You will learn how to edit your AWS CloudFormation template and update your stack by replacing its template with the edited one.
We will define a security group as an example.
You will learn about the first intrinsic function covered in the course, the Ref function.
You will learn to use the Ref function to reference a resource from another. Besides, you will understand the values returned by your AWS resources.
We will make an example by attaching the security group to the EC2 instance we defined in the previous lectures.
You will learn about the resource replacements caused by some stack updates. You will learn to notice them on the AWS resource and property types reference and while updating your stack.
We will make an example by updating the EC2 instance's subnet.
You will understand how AWS CloudFormation orders resource creations and deletions. You will also learn how to define explicit dependencies between resources using the DependsOn attribute.
You will be given an assignment about the topics you learned in Section 2. You will create a template for a VPC with a public subnet. You will do this activity on your own, but have a chance to see the instructor's solution in the next lecture.
Watch how the instructor solves the Section 2 activity.
Learn what will be covered in Section 3.
Learn what AWS CloudFormation template parameters and parameter types are in this theory lecture.
Learn how to define your first parameter in the CloudFormation template provided and use them while creating a stack from it.
Learn how to add parameters to your CloudFormation templates and update your stacks.
You will start learning to define constraints for our parameters in your CloudFormation templates with the MinLength and MaxLength constraints in string-type parameters.
Learn how to define and use MinValue and MaxValue constraints for your Number type parameters in your AWS CloudFormation templates.
Learn how to define and use AllowedValues constraints for your parameters in your AWS CloudFormation templates and restrict the values they can have during the stack creation.
Learn how to define default values for your template parameters.
Learn how to define Pattern constraints for your CloudFormation template parameters to validate them whether they match the regular expressions provided for them during the stack creation.
Learn how to update only the parameter values of your AWS CloudFormation stacks without changing their templates on AWS Management Console.
Learn how to hide sensitive parameter values like user passwords on AWS Management Console during the stack creation by defining NoEcho attributes.
Learn how to define Number<List> type parameters and how to use the intrinsic Fn::Select ( !Select ) function to reference the values of their members from your resources.
Learn how to define CommaDelimitedList type parameters and how to use them in your CloudFormation templates.
Learn what AWS-specific parameter types are and how to use them in your CloudFormation templates to validate your parameter values according to the resources in your AWS account dynamically during the stack creation.
Learn the pseudo-parameters provided by AWS CloudFormation and how to use them in your templates and stacks.
You will be given an assignment about the topics you learned in Section 3. You will do this activity on your own, but have a chance to see the instructor's solution in the next lecture.
Watch how the instructor solves the Section 3 activity.
Learn which AWS CloudFormation topics will be covered in Section 4.
Learn what the Metadata section is used for in an AWS CloudFormation template.
Learn how to group, order and label your parameters on AWS CloudFormation Console by defining a Metadata section in your template and special keys used for this purpose.
Learn what Mappings section is used for in an AWS CloudFormation template as well as the intrinsic Fn::FindInMap ( !FindInMap ) function and its syntax in this theory lecture.
Learn how to increase the re-usability of your templates with the help of Mappings with hands-on examples. Define a Mappings section in your AWS CloudFormation template and reference its values using the intrinsic Fn::FindInMap function from your resources.
You will be given an assignment about the topics you learned in Section 4. You will do this activity on your own but have a chance to see the instructor's solution in the following lecture.
Watch how the instructor solves the Section 4 activity.
Learn what will be covered in Section 5.
Learn what template conditions and the Conditions section are and their use cases in this theory lecture.
Learn how to define a condition in your template to define a resource conditionally.
Learn how to define a condition in your template to configure a resource property conditionally.
Let's talk about what the Outputs section is used for. You will learn how to define Outputs in your templates.
Learn how to use the intrinsic Fn::GetAtt ( !GetAtt ) function to reference resource attributes.
Learn how to define a condition in your template to define outputs conditionally.
You will be given an assignment about the topics you learned in Section 5. You will do this activity on your own, but have a chance to see the instructor's solution in the next lecture.
Watch how the instructor solves the Section 5 activity.
Learn what will be covered in Section 6.
An intermediate level AWS CloudFormation topic. Learn what Change Sets are and why to use them to update your stacks in this theory lecture.
Learn how to create a change set to update the parameter values of your stack.
Learn how to edit your template and create a change set on your stack to replace its template with the new version.
Learn how to execute a change set on AWS CloudFormation Console.
Learn how to delete your change sets without executing them on AWS CloudFormation Console.
You will be given an assignment about the topics you learned in Section 6. You will do this activity on your own, but have a chance to see the instructor's solution in the next lecture.
Watch how the instructor solves the Section 6 activity.
Learn what will be covered in Section 7.
You will learn to install AWS Command Line Interface (CLI) and configure it using your IAM credentials.
Learn how to create stacks using AWS CLI, view its details, and poll the stack status automatically until the stack creation completes using the wait command.
Learn how to update your stacks using AWS CLI as well as viewing the stack resources and polling the stack status automatically until the stack update completes using the wait command.
Learn how to delete your stacks using AWS CLI as well as viewing the details of your deleted stacks and how to poll the stack status automatically until the stack deletion completes using the wait command.
Learn how to create a change set using AWS CLI to create a stack from your template and execute it using AWS CLI .
Learn how to create a change set using AWS CLI to update your stack and delete it using AWS CLI .
Learn how to use the aws cloudformation deploy command of AWS CLI to create a stack from your template.
Learn how to update your stacks using the deploy command.
You will be given an assignment about the topics you learned in Section 7. You will do this activity on your own, but have a chance to see the instructor's solution in the next lecture.
Watch how the instructor solves the Section 7 activity.
Congratulations for finishing the course!
Learn more about my other courses and get special discounts for them.
Would you like to start learning AWS CloudFormation with well-organized courses?
Welcome to learn AWS CloudFormation step by step from a senior AWS architect with hands-on examples and detailed explanations! I designed AWS CloudFormation topics into two courses to teach you efficiently according to your knowledge level. Now, you are on the first step!
This course is for beginners to AWS CloudFormation. You will learn most of the Associate-level topics, excel at the basics, and learn some intermediate-level features like change sets. Ultimately, you will start using Cloud Formation for your daily needs on AWS.
This course also serves as a basis for my AWS CloudFormation Step by Step: Intermediate to Advanced course, which teaches more advanced, Professional-level AWS CloudFormation concepts. Thus, you can continue your Cloud Formation journey with it afterward.
Why learn from me?
✓ AWS verified my knowledge and experience at the top level. I am a senior AWS consultant holding AWS Certified Solutions Architect - Professional and AWS Certified DevOps Engineer - Professional certifications in addition to all 3 Associate certificates.
✓ I have a software engineering background, a BS degree in Computer Engineering, and more than 15 years of professional experience as a developer and cloud architect in corporates and startups.
✓ I have been using AWS since 2013. I have also been using AWS CloudFormation since the early days. So you will benefit from my experience as well as my knowledge.
✓ I learned by doing. I teach both theory and practice according to the AWS best practices. I explain the features with hands-on examples and why to use them with advantages and disadvantages.
What is the course structure?
Section 1: Understand what AWS CloudFormation is and learn to create and delete stacks from existing templates.
Section 2: Start writing your own templates with YAML and define resources in them. You will also learn to update your stacks by editing your templates.
Section 3: Increase the reusability of your templates with parameters. You will make many examples with different parameter types, constraints, etc.
Section 4: Define the Metadata and Mappings sections in your templates to enhance them more.
Section 5: Create resources and configure their attributes conditionally using the Conditions section. You will also learn how to define outputs for your stacks.
Section 6: Create and execute AWS CloudFormation change sets to update your stacks safely.
Section 7: Learn to manage your stacks and change sets using the cloudformation commands of AWS CLI as an alternative to AWS CloudFormation Console.
Section 8: Conclusion. Now you are ready to learn advanced-level CloudFormation with AWS CloudFormation Step by Step: Intermediate to Advanced.
As a result,
✓ You will be able to use AWS CloudFormation daily.
✓ You will be able to write your Cloud Formation templates using YAML.
✓ We will use the AWS Ireland region (eu-west-1) during the course. But you will also learn to create re-usable, region-independent CloudFormation templates as you progress!
✓ You will gain a solid basis on AWS CloudFormation and be ready to learn more advanced features with my AWS CloudFormation Step by Step: Intermediate to Advanced course.
So, is this course for you?
As a beginner, it will be best to concentrate on the Cloud Formation features that you will need most at the beginning. I designed this course for beginners to AWS CloudFormation. So, I assume that you have no or little experience in it.
You need to have intermediate-level AWS knowledge that will be enough to use core AWS services in our examples. This course focuses on AWS CloudFormation.
This is NOT for intermediate-level AWS CloudFormation users looking for more advanced features. I teach them in my AWS CloudFormation Step by Step: Intermediate to Advanced course, which continues from this one.
Are you unsure of your Cloud Formation knowledge level? Then, start with this Beginner to Intermediate course and continue with the advanced course.
If you want to start using AWS CloudFormation to manage your AWS infrastructure as code and automate the provisioning of your AWS resources, then you are in the right place.
Join me in this course to start learning AWS CloudFormation step by step!
Best wishes,
Emre Yilmaz
Senior AWS Architect & DevOps Engineer
⭑ AWS Certified Solutions Architect - Professional
⭑ AWS Certified DevOps Engineer - Professional
⭒ AWS Certified Solutions Architect - Associate
⭒ AWS Certified SysOps Administrator - Associate
⭒ AWS Certified Developer - Associate