hands-on lab

Initializing Amazon EC2 Instances with AWS CloudFormation Init

Up to 45m
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.


With AWS CloudFormation, developers can spend less time managing resources and more time developing their applications. The reusable nature of CloudFormation templates allows developers to configure resources that can be deployed to different AWS regions or accounts.

AWS CloudFormation helper scripts can be called to initialize services on Amazon EC2 instances that are created as part of a stack.

In this lab, you will inspect and deploy an AWS CloudFormation template that utilizes the cfn-init and cfn-signal helper scripts to initialize an Apache server on an Amazon EC2 instance.

Learning Objectives

Upon completion of this intermediate-level lab, you will be able to:

  • Configure an Apache server on an Amazon EC2 instance using cfn-init
  • Signal to AWS CloudFormation when the instance configuration process has been completed using cfn-signal

Intended Audience

  • Candidates for the AWS Certified DevOps Engineer - Professional exam
  • Candidates for the AWS Certified Solutions Architect - Professional exam
  • Cloud Architects
  • Software Engineers


Familiarity with the following will be beneficial but is not required:

  • AWS CloudFormation
  • Amazon EC2

The following content can be used to fulfill the prerequisite:

Environment before

Environment after

About the author

Jun Fritz, opens in a new tab
Cloud Labs Developer
Learning paths

Jun is a Cloud Labs Developer with previous experience as a Software Engineer and Cloud Developer. He holds the AWS Certified Solutions Architect and DevOps Engineer Professional certifications. He also holds the AWS Certified Solutions Architect, Developer, and SysOps Administrator Associate certifications. 

Jun is focused on giving back to the growing cloud community by sharing his knowledge and experience with students and creating engaging content. 

Covered topics

Lab steps

Logging In to the Amazon Web Services Console
Comparing CloudFormation Init and EC2 User Data
Establishing Desired EC2 Instance State with AWS CloudFormation Init