This lab covers how to use AWS CloudFormation to provision a web application with a number of supporting AWS products and services, including Auto Scaling Groups, Amazon EC2 Instances, Elastic Load Balancers, and more. It also covers how to use AWS CloudFormation to manage infrastructure and reconfigure Auto Scaling Groups.
This is part one of a three-part lab which teaches you how to create a "serverless" web app with an Amazon DynamoDB backend data store. In this first part of the lab, you will build the infrastructure you will need in subsequent labs. You will create a DynamoDB table and add data, then build the necessary IAM roles and polices. To successfully complete this lab, you should be familiar with DynamoDB and IAM through taking those introductory labs at qwiklabs.com.
This lab provides the basic hands-on experience of Amazon EC2 Auto Scaling -- setting up Auto Scaling to automatically launch compute instances in response to conditions that you specify. You will use Auto Scaling via the AWS console to create the basic infrastructure of a Launch Configuration and an Auto Scaling group. You will test the configuration by terminating a running instance and viewing the results as Auto Scaling responds by scaling up and starting another instance. For the lab to function as written, please DO NOT change the auto assigned region.
In this lab you will learn how to use AWS CloudWatch events with a Lambda function to detect changes to the ingress permissions of an EC2 security group. In an different lab, Monitoring Security Groups with AWS Config, you will do something similar but with different services. Both of these labs illustrate techniques that could be used to provide additional layers of protection to infrastructure controls. Prerequisites: To successfully complete this lab, you should be familiar with EC2 security groups. Python programming skills are helpful, although full solution code is provided. It would be helpful to have taken the Introduction to AWS Lambda lab.
This is part two of a three-part lab which teaches you how to create a "serverless" web app with an Amazon DynamoDB backend data store. In this second part of the lab, you will build upon the infrastructure created in part one. You will go on to create Lambda functions that interact with the DynamoDB table and add data, then build the necessary IAM roles and polices to support access to the functions and database via API Gateway. To successfully complete this lab, you should be familiar with DynamoDB, API Gateway, and IAM.
AWS Elastic Beanstalk provides a quick and easy way to deploy your web applications to the AWS cloud without requiring knowledge of the individual pieces that make up the infrastructure. This lab demonstrates the common steps of developing a web application and deploying it to production on AWS, using the EB command line interface. In this lab you will learn how to deploy a simple web application continuously using the Elastic Beanstalk Command Line Interface (EB CLI) in two ways, Rolling Deployment and Blue/Green Deployment. The lab also demonstrates many interesting command line tools to interact with, monitor, scale, and ssh into your running Elastic Beanstalk deployment completely from the command line. Prerequisites: for success with this lab, you should be familiar with systems administration of Linux servers, have comfort with Unix/Linux text editors, and should have at least taken the lab "Introduction to AWS Elastic Beanstalk".