hands-on lab

Deploy a Highly Available Serverless Application Using AWS Services

Intermediate
2h
1,926
4.4/5
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.
Lab description

In this lab, you will learn how to deploy a highly available website using Amazon Web Services. The lab is built upon a scenario that draws upon real-world challenges facing many websites and web application deployments. LoungeBeer.com is based on a fictitious company that wants to run an advertising campaign during the half time of the Super Bowl. LoungeBeer.com faces many of the same challenges as other companies do, including time restrictions, cost limitations, high availability, and security concerns. The deployment leans heavily upon several Amazon Web Services. Services that you will configure from authentication all the way through long term storage. The AWS services include:

  • Cognito
  • Simple Storage Solution (S3)
  • Glacier
  • Athena
  • Kinesis Firehose
  • Identity and Access Management (IAM)
  • CloudFront
  • An example application that leverages the AWS JavaScript SDK is also used

Learning Objectives

Upon completion of this lab you will be able to:

  • Configure unauthenticated identities in Amazon Cognito
  • Create a delivery stream in Amazon Kinesis Firehose
  • Configure and navigate Amazon S3 for various storage and retrieval purposes
  • Monitor Amazon Firehose to S3 inbound and delivery metrics graphed by CloudWatch
  • Complete an AWS wizard that builds a static website using CloudFront and S3
  • Use developer tools in the browser to confirm several AWS services used in the Lab are functioning properly
  • Configure a lifecycle rule in S3 to automatically use Glacier for archival (long term storage) and expiration

Prerequisites

You should be familiar with:

  • Application development basics, particularly surrounding security topics such as identification, authentication, and security keys
  • Information Technology deployment considerations, such as Domain Name Service (DNS), Content Delivery Network (CDN), high availability, reporting and monitoring
  • JavaScript proficiency is not required but is helpful

Lab Environment

After completing the lab instructions the environment should look similar to:

 

Updates 

October 30th, 2023 - Updated the instructions and screenshots to reflect the latest UI

October 3rd, 2023 - Updated the instructions and screenshots to reflect the latest UI

October 3rd, 2022 - Updated the instructions and screenshots to reflect the latest UI and resolved issue regarding Athena Query

September 16th, 2022 - Updated CloudFront instructions to use origin access control (OAC)

March 21st, 2022 - Updated lab instructions and screenshots for accuracy

December 21st, 2021 - Updated instructions for fullscreen video viewing

September 16th, 2021 - Updated lab step instructions to convey new console UI

August 25th, 2020 - Updated instructions and screenshots to match the new UI

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

About the author
Avatar
Andrew Burchill
Labs Developer
Students
66,016
Labs
163
Courses
2
Learning paths
4

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 multiple AWS certifications including Solutions Architect Associate and Professional.

Covered topics
Lab steps
Logging In to the Amazon Web Services Console
Configuring Cognito for Unauthenticated access
Setting up Kinesis Firehose
Examining the LoungeBeer application
Hosting a Static Website
Creating a Lifecycle Rule for an S3 Bucket
Querying LoungeBeer content on S3 with Athena