Hands-On CloudFormation for Deploy Scalability

Lab Steps

lock
Logging in to the Amazon Web Services Console
lock
Planning Your CloudFormation VPC
lock
Authoring Networking Resource Automation In CloudFormation
lock
Authoring Compute & Database Resource Automation
lock
Authoring Access Resource Automation
lock
Finishing the Template
lock
Creating a CloudFormation Stack from your Template

Ready for the real environment experience?

DifficultyIntermediate
Time Limit2h
Students2317
Ratings
4.5/5
starstarstarstarstar-half

Description

AWS CloudFormation is an Infrastructure as Code tool from Amazon Web Services that enables automating the deployment of infrastructure and applications. Benefits of automating infrastructure deployments include:

  • Parity and consistency between development, test, and production environments
  • Rapid and repeatable deployments
  • Improved audibility

In this hands-on lab, you will translate business requirements into an AWS CloudFormation template and use it to deploy a fully-functional application with the following infrastructure components:

  • A VPC and public and private subnets
  • A NAT instance for access to the internet from a private subnet
  • Route tables and Network ACLs for the VPC
  • An Elastic Load Balancer (ELB) and Auto Scaling Group
  • Code deployment automation
  • Security Groups for the EC2 Instances and ELB
  • DynamoDB Table to persist data, and IAM Roles to allow EC2 Instance access

Learning Objectives

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

  • Author an AWS CloudFormation template
  • Use your template to create an AWS CloudFormation stack
  • Understand how to deploy into multiple AWS Regions

Intended Audience

  • DevOps Engineers
  • Solution Architects
  • SysOps Administrators
  • Cloud Engineers

Prerequisites

You will need a text editor available to author an AWS CloudFormation JSON template. Visual Studio Code is a free text editor you can use.

Knowledge and experience with the following will be beneficial but is not required:

  • JSON (JavaScript Object Notation)
  • AWS CloudFormation
  • Elastic Load Balancing and EC2 Auto Scaling
  • Using Subnets and Routes in Amazon Virtual Private Cloud

The following courses can be used to fulfill the requirements:

Updates

February 12th. 2021 - Updated the lab to resolve a permission issue

October 22nd, 2020 - Updated all instructions and screenshots

May 29th, 2020 - Fixed an issue related to npm and dependencies

December 2nd, 2019 - Add availability zone constraint to avoid deploying in us-west-2d which fails because of an unsupported instance type is that zone

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

September 18th, 2018 - Fixed an issue related to node's package manager (npm) failing to install some dependencies and causing the load balancer's URL to not display the app.

About the Author
Students32364
Labs78
Courses2
Learning paths2

Andrew is a Labs Developer with previous experience in the Internet Service Provider, Audio Streaming, and CryptoCurrency industries. He has also been a DevOps Engineer and enjoys working with CI/CD and Kubernetes.

He holds the Developer - Associate, Sysops Administrator - Associate, and Solutions Architect – Associate AWS certifications.