AWS Academy Cloud Foundations ( AWS-CF) offers an introduction to Cloud Computing and AWS (Amazon Web Services). In this first course, we answer why organizations and individuals are adopting AWS and cloud services.
In this six-week course, we meet weekly to explore the fundamental characteristics of cloud computing, the issues users are seeking to solve, and some of the most important tools AWS provides that can meet these challenges. Later in our second twelve-week course, we build on this foundational understanding as we focus on using AWS cloud services to build and deploy highly available and fault tolerant solutions to meet some of their most common business needs.
The topics include an overview of cloud concepts, the core cloud services, security in the cloud, cloud architectures, cost and pricing, and AWS support. It provides a general understanding and creates a solid foundation upon which to build for associate and professional level careers in architecture, system operations, and development. It is also a wonderful basis for business, project management, or for gaining a firmer grip on this exploding field. The materials in this course are mapped to the AWS Certified Cloud Practitioner exam, which is intended for anyone who has basic knowledge of the AWS platform and six months experience.
This first course is for anybody who has at least some practical experience with computer and network administration, or an understanding of business processes, as well as a desire to learn more about how Cloud Computing is transforming the way we do business and communicate with each other. To learn more details about the concepts covered, take a look at the COMP 671 AWS Cloud Foundations course outline here.
Student Prerequisites: Although not required, as an entry-level course AWS Academy recommends that we should possess:
General IT technical knowledge
General IT business knowledge
• Be fully present • Check in regularly • Listen to each other • Maintain honesty, integrity, and respect
• Ask for help when needed • Own our actions and choices
Note - This course is presented entirely free of cost to participants.
AWS Academy: This is where we will find our e-learning resources, including pre-recorded video lessons and demonstrations, as well as our graded assignments. We will access this from a web browser (Chrome or Firefox) on a standard PC or laptop (Windows, Mac, or Linux - no tablets or smartphones). To log-in, we will be provided with a unique AWS Academy Canvas student account.
Canvas LMS: The AWS Academy is hosting their training materials on the Canvas LMS at https://awsacademy.instructure.com. This is not affiliated with SDCCD and your student account. Therefore, you will be provided with separate access to the AWS Academy LMS by your instructor. Expect to receive an email from Instructure at the start of the course inviting you to complete your AWS Academy student account and join the course.
AWS Management Console: This web application is comprised of a broad collection of service consoles for managing AWS resources. This, along with the AWS CLI and SDK's is one of the three primary methods AWS cloud practitioners use to plan, deploy and manage their cloud-based solutions. We will access this, free of charge, from a web browser on the AWS Academy in Canvas, to complete our curated set of hands-on labs.
Zoom Video Conferencing: To attend the weekly Live Sessions online, we will be using Zoom through our college at SDCCD. The meeting registration link is provided on the course home page in SDCCD Canvas. For the best experience, use a computer or tablet with a minimum screen size of 10 inches that includes a speaker and microphone. We also recommend a video camera. You can use a mobile phone in a pinch. If you are new to Zoom, check out these "What is Zoom Video Conferencing" or these short videos to learn about "Joining a Zoom Meeting" and "Basic In-Meeting Navigation". If you experience trouble joining a meeting, check out the Zoom Help Center.
WEEK ONE Introduction to Cloud Concepts and Amazon Web Services (AWS)
WEEK TWO Cloud Economics and Infrastructure (AWS Cost Calculator, AWS Organizations)
WEEK THREE Cloud Security and Network Services (Services: IAM, VPC, Route 53, CloudFront)
WEEK FOUR Cloud Compute Services (Services: EC2, ECS, Lambda, Elastic Beanstalk)
WEEK FIVE Cloud Storage and Database Services (Services: S3, Glacier, EBS, EFS, RDS, DynamoDB, Redshift, Aurora)
WEEK SIX Scalable Cloud Architectures (Services: Well Architected Framework, Trusted Advisor, ELB, EC2 Auto Scale)
The goal of this course is to introduce fundamental Cloud concepts and the characteristics that drive individuals and organizations to adopt these services while helping participants prepare for the AWS Certified Cloud Practitioner certification exam.
NOTE: Each one of the following course objectives is covered in single module. For a detailed description of each objective and their accompanying module objectives, see the TOPIC SCHEDULE.
After completing the ten modules in this course, you should be able to:
CO 1: Define the AWS Cloud.
CO 2: Explain the AWS pricing philosophy.
CO 3: Identify the global infrastructure components of AWS.
CO 4: Describe the security and compliance measures of the AWS Cloud, including AWS IAM.
CO 5: Create a virtual private cloud (VPC) by using Amazon VPC.
CO 6: Demonstrate when to use Amazon EC2, AWS Lambda, and AWS Elastic Beanstalk.
CO 7: Differentiate between the following storage services: Amazon S3, Amazon EBS, Amazon EFS, and Amazon S3 Glacier.
CO 8: Demonstrate when to use AWS database services, including Amazon RDS, Amazon DynamoDB, Amazon Redshift, and Amazon Aurora.
CO 9: Explain the architectural principles of the AWS Cloud.
CO 10: Explore key concepts related to Elastic Load Balancing, Amazon CloudWatch, and Amazon EC2 Auto Scaling.
Social Responsibility SDCCE students demonstrate interpersonal skills by learning and working cooperatively in a diverse environment.
Effective Communication SDCCE students demonstrate effective communication skills.
Critical Thinking SDCCE students critically process information, make decisions, and solve problems independently or cooperatively.
Personal and Professional Development SDCCE students pursue short term and life-long learning goals, mastering necessary skills and using resource management and self advocacy skills to cope with changing situations in their lives.
Diversity, Equity, Inclusion, Anti-racism and Access SDCCE students critically and ethically engage with local and global issues using principles of equity, civility, and compassion as they apply their knowledge and skills: exhibiting awareness, appreciation, respect, and advocacy for diverse individuals, groups, and cultures.
Mission Statement: The Business and Information Technology Program (BIT) provides adults open access to transformational career technical education programs. Through skill building, upskilling and reskilling, BIT provides the San Diego community the opportunity to transition to college and work by providing hands-on and project based training in current technology, foundational skills, and business practices with real-work simulations. Lead by industry experienced instructors; these programs build student confidence for future employment, promotion, and entrepreneurial opportunities.
BIT Department SLO's
Students completing a BIT software course will be able to demonstrate the use of the software tools to effectively communicate with others in person, with paper documents or online. (Relates to Institutional SLO #2 above)
BIT students work in teams with diverse individuals to apply Information Technology solutions to a problem. (Relates to Institutional SLO #1 above)
BIT students use Information Technology and software tools to support decision processes and critical thinking. (Relates to Institutional SLO #3 above)
BIT students pursue continued Information Technology education to complete short term goals such as website development, and also continue with long term programs that will keep them current in this rapidly changing field. (Relates to Institutional SLO #4 above)
Achieve a "C" grade or higher by accomplishing the following:
Accumulate a minimum of 1330 points total
A = 100.00 to 95.00% = 1,900 to 1,805 points
B = 94.99 to 85.00% = 1,804 to 1,615 points
C = 84.99 to 70.00% = 1,614 to 1,330 points
D = 69.99 to 60.00% = 1,329 to 1,140 points
F = 59.99 to 00.00% = 1,139 to 0 points
AWS Academy Course Assessment - 100 points, 70 points passing for the AWS Academy course badge
This end-of-course summative assessment is available in the AWS Academy, and includes twenty certification-style questions. Multiple attempts available, with last attempt score saved as final score. The assessment does not include a post-test review of question responses.
AWS Academy Knowledge Checks (KC) - 100 points each, ten total for up to 1000 points
Each AWS Academy module includes this ten question (multiple choice and T/F) formative assessment. This assignment is auto-graded and may be attempted multiple times, which allows us to gain greater confidence with the material and improve our score. Note that the grade book maintains your most recent score.
AWS Hands-on Labs (HOL) - 100 points each, eight total for up to 800 points
Hands-on labs are presented and auto-graded within the AWS Academy module, and are accessible using the Vocareum lab platform. These HOL's provide access to AWS services using the AWS Management Console, a web application accessible through a web browser (such as Chrome and Firefox) for managing AWS resources. This allows us to experience the AWS Cloud services first-hand using the same tools used by professionals. Upon completion of each lab, the Vocareum lab environment will test and score your work, providing immediate feedback. and the opportunity to remediate any errors or issues. Note that the grade book maintains your most recent score. Here is a list of our hands-on labs. For lab descriptions, see the Hands-on Labs section below.
Lab - 1 Introduction to AWS IAM
Lab - 2 Build your VPC and Launch a Web Server
Lab - 3 Introduction to Amazon EC2
Activity - AWS Lambda
Activity - AWS Elastic Beanstalk
Lab - 4 Working with EBS
Lab - 5 Build a Database Server
Lab - 6 Scale and Load Balance
AWS Cloud Quest - Cloud Practitioner Badge - No points, optional:
This free role-playing game helps you build your AWS Cloud skills by building real solutions using the AWS Console, while collecting gems and earning points answering challenging questions. To learn more and register>>
Complete assignments weekly according to the schedule. Minimum one graded assignment (KC or HOL) each week to meet minimum participation requirements.
Graded assignments are submitted directly within their assignment page in AWS Academy on Canvas.
Upon completing an assignment, you submit your work for automated grading
Your score will be immediately displayed in the course gradebook
Upon ending a lab session, all resources launched or deployed (either by Vocareum at the start of the lab or by you in the course of the session) will be terminated and removed.
Assignments may be attempted and submitted multiple times, with the most recent score displayed in the course gradebook
All assignments are due by the last day of the course. After that date, they will not be included in the calculation of your final grade
I want to help you achieve your goals in this course - if you are struggling to meet the schedule, contact me as soon as possible so we can discuss this and create a plan that will help you succeed!
The hands-on labs in this course provide a feature that we can use to submit the work we complete. When you choose the Submit link in the lab session to record your lab progress, a script runs to assess your completion of the defined tasks. The script checks for the existence of particular AWS resources (or resource configurations) that you were instructed to create or configure in the AWS account.
Specific checks are customized for each lab. For example, we might be instructed to create an Amazon Elastic Compute Cloud (Amazon EC2) instance that hosts a web server, which should be accessible from the internet. The script might check to see that an EC2 instance was created in both the virtual private cloud (VPC) and subnet that were specified in the instructions. It might also check that the instance is running. The script might further check the settings in the security group that’s associated with the instance to verify that TCP port 80 is open to inbound traffic. Finally, the script might verify that the HTTP endpoint of the web server returns an HTTP status code of 200, which indicates that the webpage responds successfully to requests.
Each item that the script checks is worth a certain number of points. We must choose Submit while the lab session is still active to receive points for our work. Some labs also include multiple choice questions that we answer while we work on the lab. When these questions exist, the answers are evaluated (and points are awarded) as part of the same submit process.
For each lab, we can submit our work as many times as we want. The score that displays for the educator is the score the student achieved for their latest submission.
Each lab includes a Grade button. If we click this button, the number of points we achieved from our last submission displays. The number of possible points varies by lab. The script also generates a submission report that includes more detailed output. For some labs, the submission report includes information we might find helpful in explaining the assessment.
Completing this course along with its companion, provides eligibility for several useful badges, vouchers, and certificates.
The minimum AWS Academy requirement is completion of the course assessment and all ten required module knowledge checks with the minimum required score of 70 points each. We will receive an email within 24 hours from Amazon Web Services Training and Certification via Credly to claim our digital badge and downloadable certificate. We can then share our badge on our LinkedIn or other social media profile to let peers and potential employers know about our accomplishment. Instructions for receiving the course badge may be found in the AWS Academy on Canvas modules page.
This course helps us to prepare for the AWS Certified Cloud Practitioner exam.
Completing this badge-eligible course qualifies us for a discount voucher (50%) through the AWS Emerging Talent Community (ETC) which we can use towards certification. The ETC is the place to connect with others from around the globe who have committed to learning AWS cloud skills. Upon completion of the course we receive an invitation to join AWS Educate, where we also learn how to secure a voucher and complete our certification. The badge we earn from this certification can also be posted to our LinkedIn profile and social media.
Upon successfully completing the two courses in the certificate program, we earn the SDCCD program certificate. We can view our program certificate within our student transcript, available at myportal.sdccd.edu.
I want and know that you can succeed in this course, and I have found that regular weekly participation is one of the most effective ways to learn and grow your Cloud skills. To help make that happen, this course is offered online and synchronous, which means that we will have regular weekly online meetings and activities.
Regular participation means check into the course at minimum three times a week:
Completing two assignments each week, should include at least one hands-on-lab and a second graded assignment
Attending Weekly Live Sessions
Viewing module videos and reading
Practicing demos with the sandbox
Responding to messages from the instructor within 48 hours, or sooner if urgent
Note: If you miss a Live Session or I do not hear from you and you do not participate in the course for over a week, I will send you a Canvas message. If I do not hear back from you within 24 to 48 hours, and you still have not accessed the course, I may assume you have dropped, and will remove your name from the course roster.
I have designed the course to provide us with a mix of both concept and practical hands-on experience, which together helps us to grow our understanding of cloud computing. It is to everyone’s benefit that we do our best to complete assignments weekly. However, I also recognize that situations can occur that may prevent you from meeting this schedule. In general, do your best to stay current with the weekly material. If you cannot participate regularly or know that you may have to miss a week in Canvas for an unavoidable circumstance, let me know right way. Stay in contact and respond to any messages within 48 hours.
Meeting Registration: Link is available from the course home page in Canvas
Purpose: Interact with the instructor & classmates in discussions, group activities, and ask and answer questions
Activities: Combination of case studies and scenarios, includes calculating the hosting cost of a common web application, selecting the appropriate set of services for a solution, designing a virtual private cloud, improving a solution.
Sample exam questions: Learn how to analyze and answer certification exam questions
Live demonstrations: Using the AWS management console and AWS CLI
If you miss a Live Session:
Contact the instructor the same day, or in advance.
View the meeting recording (available from the course home page in SDCCD Canvas only
Check announcements and email to ensure you are up-to-date on any changes or important messages
I value your success and I know your ability to communicate with me is an important ingredient in that recipe.
Contact me Monday through Friday by Canvas Inbox, and I will respond within 24 to 48 Hours.
Meet with me in Zoom before or after the weekly Live Session.
Meet with me in Zoom during Student Virtual Office Hours.
If you are seeking help with a lab, consider scheduling time in Zoom to work on it together!
Canvas Inbox: It is important to stay in contact, and this is one of the best ways to do so. I will respond to your message within 48 hours (but usually sooner), Monday – Friday before 5:30 PM. You can either check your messages in the CANVAS system or set your notifications to your preferred method of contact. If you send me a message over the weekend or during the holiday, expect a response by Monday or Tuesday afternoon.
Canvas Announcements: You will receive one each week on Sunday when the weekly module opens. These appear at the top of the class homepage when you log in and will be sent to you directly through your preferred method of notification from CANVAS. Check them regularly, as they contain important information about upcoming assignments or class concerns.
If I do not hear from you, and your course participation drops, I will reach out through Canvas Inbox, to make sure everything is alright. It is important that you respond as soon as you receive the message. Remaining in communication with myself (and your classmates) is one of the best ways to ensure success in the course.
Help with Lab Assignments: If you are seeking help with an assignment, include the assignment name and number, the specific step number, and any error messages and relevant information, including the expected outcome. The more accurate and specific, the better. Sometimes a screen shot or two can explain things that words cannot, especially when properly annotated. You might also consider dropping by the weekly office hours in Zoom or during the Live Session, or we can schedule a one-to-one Zoom session.
Student services provides If you need help with a personal problem or advice about your studies, you can make an appointment with a counselor. For example, a counselor can help you make a plan to reach your goals: improving your English, getting your GED, enrolling in a job training class or attending college. If you need help finding a job, you can contact the Career Development Services Counselor
Course Counselor: Joyce Almario-Greno, jalmario@sdccd.edu
Job Developer: Jennifer Kennedy, 619-800-3093, jkennedy@sdccd.edu
Contact Career Services
If you have a disability or think you might have a disability, you can contact the counselor in the Disability Support Programs and Services (DSPS) at your campus. DSPS can provide services and special equipment that will make it easier for you to study in our classes. An example of special equipment is a machine that enlarges the print for people who have a vision disability. Since it takes time to provide services, we recommend that you contact the counselor at least two weeks in advance. DSPS services are confidential and voluntary.
For assistance with your SDCCD student password or student records: Use the secure mySDCCD Support Desk. Complete the top portion, and at the bottom of the web page, select from the Help Topic "I forgot my password". You will then be required to submit a digital copy of your government issued ID for proof of identity.
To Speak with Live Staff: Sign up for our Virtual Student Support Center (Links to an external site.)
For all other matters: email the campus at sdcenorthcity@sdccd.edu or sdcemesa@sdccd.edu. All of the staff are waiting to help students.
PARTICIPATION REQUIREMENTS
To maintain active status in the course, regular attendance is expected:
Submit at least one AWS assignment each week
Regularly attend our Live Sessions
Respond to messages within 48 hours
Be proactive and contact the instructor if you are not able to meet these expectations
Plan to check into the course at minimum 3 times a week. Any student frequently absent from the course may, at the discretion of the instructor, be dropped from the course. Those students receiving Veteran’s Benefits or CalWORKS must comply with the attendance requirements specific to these programs.
BP 5500 - Student Rights, Responsibilities, Campus Safety & Administrative Due Process - This policy enumerates the rights and responsibilities of all District students. It also outlines the District’s commitment to a safe learning environment for all students.
Students should actively participate in course activities.
Our college has rules about academic dishonesty:
Students are not permitted to cheat on course assignments or tests.
Students are not permitted to use false information.
Students may not copy the language or ideas of another person and use them as their own ideas.
An instructor will take the following steps if he/she thinks a student has been dishonest in completing a course assignment or test:
Discuss the situation with the student. Make sure that the student understands why his/her action is dishonest.
If the student did not understand that his action was dishonest, the instructor can give the student a warning.
If the student knew that his action was dishonest, the instructor can give him/her a failing grade.
Note that live sessions fall on the day of the week and at the times provided to you before the term start and proceed in a weekly manner. Live sessions will not be held on SDCCE holidays. If a live session for this course falls on an SDCCE holiday, the live session will be rescheduled, and your instructor will inform you as to when the Live Session will be rescheduled or how the content will be covered
This first week provides an introduction to the course and tools, as well as cloud concepts that include deployment and use patterns.
AWS Module - Introduction begins with a short Pre-Course Survey that helps AWS to understand more about who is participating in the course. It is followed by a short video introducing our Technical Program Managers, Jorge Negron, Chris Jones, and Matt Hefron. Following that, you will find a student guide for the module and a how-to guide for accessing the hands-on labs in Vocareum.
AWS Module 1 Cloud Concepts Overview introduces us to cloud computing, Amazon Web Services (AWS), and what AWS offers. Cloud computing is based on some easily recognizable deployment and use patterns, which can make it very flexible and customizable.
Suggested Participation Total: 5.0 Hours
Includes meetings, learning resources in the AWS Academy, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 1 hour
AWS Module Introduction (15 min)
AWS Pre-Course Survey (5 min)
AWS Module 1: Cloud Concepts Overview Video Lessons (25 min)
AWS Knowledge Check 1 (10 min)
At the end of this module, you should be able to:
CO1. Define the AWS Cloud.
MO1. Define different types of cloud computing models.
MO2. Describe six advantages of cloud computing.
MO3. Recognize the main AWS service categories and core services.
MO4. Review the AWS Cloud Adoption Framework (AWS CAF).
This week, we begin by introducing the economic business case for cloud services. We then look at how AWS organizes its data centers and services globally to ensure availability. We are also introduced to the AWS management console in our first hands-on lab activity.
AWS Module 2 Cloud Economics and Billing introduces us to the business advantages for moving to the cloud. The module begins by explaining the pricing philosophy of AWS and the overall concept of Total Cost of Ownership. These concepts are important for us to understand because we will need to rely on them in our careers as cloud practitioners. After providing this conceptual foundation, the module describes several tools available for understanding and explaining the costs for running AWS services.
AWS Module 3 AWS Global Infrastructure Overview introduces the Amazon Web Services (AWS) Global Infrastructure, covering how regions, availability zones, and edge locations are used and combined to ensure services highly available
Suggested Participation Total: 6.0 Hours
Includes meetings, learning resources in the AWS Academy, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 1.5 hours
AWS Module 2: Cloud Economics and Billing Video lessons (45 min)
AWS Knowledge Check 2 (10 min)
AWS Module 3 Video Lessons (25 min)
AWS Knowledge Check 3 (10 min)
At the end of these modules, you should be able to:
CO2. Explain the AWS pricing philosophy.
MO1. Explain the AWS pricing philosophy.
MO2. Recognize fundamental pricing characteristics.
MO3. Indicate the elements of the Total Cost of Ownership.
MO4. Discuss the results of the AWS Pricing Calculator.
MO5. Identify how to set up an organizational structure that simplifies billing and account visibility.
MO6. Identify the functionality in the AWS Billing Dashboard.
MO7. Describe how to use AWS Billing, AWS Cost Explorer, AWS Budgets, and AWS Cost and Usage Reports.
MO8. Identify the various AWS technical support plans and their costs.
CO3. Identify the global infrastructure components of AWS
MO1. Identify the difference between AWS Regions, Availability Zones, and edge locations.
MO2. Identify AWS services and service categories.
This week we begin by examining AWS’s approach to securing its environment and its customer’s resources. We then introduce fundamental AWS networking and content delivery services.
AWS Module 4 Cloud Security provides an introduction to the AWS approach to security. This module includes the controls in the AWS environment, and some of the AWS products and features that customers can use to meet their security objectives. We begin by introducing the AWS shared responsibility model in the context of AWS Cloud deployments, and specifies which responsibilities belong to the customer and which responsibilities belong to AWS. Next, we are introduced to the key concepts of AWS Identity and Access Management (AWS IAM), including users, groups, policies, and roles. This includes a hands-on-lab to provide practical experience with this foundational service
AWS Module 5 Networking and Content Delivery introduces three fundamental AWS networking and content delivery services: Amazon Virtual Private Cloud (Amazon VPC), Amazon Route 53, and Amazon CloudFront. This week, we will have the opportunity to label a virtual private cloud (VPC) network architecture diagram, design a VPC, watch how a VPC is built, and finally build a VPC yourself. The first section provides an overview of some general networking concepts that will be referenced throughout the rest of the module: network, subnet, IPv4 and IPv6 addresses, and Classless Inter-Domain Routing (CIDR) notation. This is followed by an overview of key terminology and features of Amazon VPC with which we must be familiar with when we design and build our own virtual private clouds (VPCs). Next, we learn about several important VPC networking options: internet gateway, network address translation (NAT) gateway, VPC endpoints, VPC sharing, VPC peering, AWS Site-to-Site VPN, AWS Direct Connect, and AWS Transit Gateway. In the section covering VPC security, we learn about how to secure our VPCs with network access control lists (network ACLs) and security groups. This is followed by our second hands-on lab this week, Hands-on Lab 2 Build your VPC and Launch a Web Server. We then turn our attention to the Amazon Route 53 service, covering Domain Name System (DNS) resolution and supported routing, and DNS failover, which introduces the topic of high availability that we will learn about later in Module 10. We wrap up our topic with the features and benefits of Amazon CloudFront.
Suggested Participation Total: 8.5 Hours
Includes meetings, learning resources in the AWS Academy including hands-on labs, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 1.5 hours
AWS Module 4 Cloud Security Video Lessons (45 min)
Hands-on Lab 1 - Introduction to AWS IAM (40 min)
AWS Knowledge Check 4 (10 min)
AWS Module 5 Networking and Content Delivery Video Lessons (50 min)
Hands-on Lab 2 - Build your VPC and Launch a Web Server (30 min)
AWS Knowledge Check 5 (10 min)
At the end of these modules, you should be able to:
CO4. Describe the security and compliance measures of the AWS Cloud, including AWS IAM.
MO1. Recognize the shared responsibility model.
MO2. Identify the responsibility of the customer and AWS.
MO3. Recognize IAM users, groups, and roles.
MO4. Describe different types of security credentials in IAM.
MO5. Identify the steps to securing a new AWS account.
MO6. Explore IAM users and groups.
MO7. Recognize how to secure AWS data.
MO8. Recognize AWS compliance programs.
CO5. Create a virtual private cloud (VPC) by using Amazon VPC.
MO1. Recognize the basics of networking.
MO2. Describe virtual networking in the cloud with Amazon VPC.
MO3. Label a network diagram.
MO4. Design a basic VPC architecture.
MO5. Indicate the steps to build a VPC.
MO6. Identify security groups.
MO7. Create their own VPC and add additional components to it to produce a customized network.
MO8. Identify the fundamentals of Amazon Route 53.
MO9. Recognize the benefits of Amazon CloudFront.
This week we look at one of the most important service categories offered by AWS, compute. In general terms, compute provides the processing power required by an application. Compute comes bundled as a set of resources that include CPU, memory, storage, and networking, and comes in many different packages and form factors, from personal devices like smartwatches and smartphones to datacenter servers and supercomputers and compute clusters.
AWS Module 6 Compute begins by introducing many of the compute services that Amazon Web Services (AWS) offers. These services include Amazon Elastic Compute Cloud (Amazon EC2), AWS Lambda, AWS Elastic Beanstalk, Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Container Registry (Amazon ECR), and Amazon Elastic Kubernetes Service (Amazon EKS). These include infrastructure-as-a-service EC2 virtual machines hosted on a virtual private cloud (VPC) as well as serverless Lambda functions running in AWS managed compute containers. The next section introduces us to the key concepts of Amazon EC2, including Amazon Machine Images (AMIs), instance types, network settings, user data scripts, storage options, security group settings, key pairs, instance lifecycle phases, Elastic IP addresses, instance metadata, and Amazon CloudWatch for monitoring. This includes a demonstration in e AWS management console as well as a hands-on lab, and ends with the four pillars of cost optimization, with an emphasis on cost optimization as it relates to Amazon EC2. The next section, container services, introduces Docker, Kubernetes, the differences between virtual machines and containers, and compares Amazon container services (ECS, Fargate, EKS, ECR). This is followed by an introduction to serverless computing with AWS Lambda. Event sources and the basics of Lambda function configuration are covered. The section ends with examples of a schedule-based Lambda function and an event-based Lambda function, and includes a second hands-on-lab. The final section describes the advantages of using Elastic Beanstalk service for deploying web applications.
Suggested Participation Total: 8.5 Hours
Includes meetings, learning resources in the AWS Academy including hands-on labs, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 3 hours
AWS Module 6 Compute Video Lessons (1 hr 10 min)
Hands-on Lab 3 - Intro to EC2 (35 min)
Hands-on Lab Activity - AWS Lambda (30 min)
Hands-on Lab Activity - AWS Elastic Beanstalk (30 min)
AWS Knowledge Check 6 (10 min)
At the end of this module, you should be able to:
CO6. Demonstrate when to use Amazon EC2, AWS Lambda, and AWS Elastic Beanstalk.
MO1. Provide an overview of different AWS compute services in the cloud.
MO2. Demonstrate why to use Amazon Elastic Compute Cloud (Amazon EC2).
MO3. Identify the functionality in the Amazon EC2 console.
MO4. Perform basic functions in Amazon EC2 to build a virtual computing environment.
MO5. Identify Amazon EC2 cost-optimization elements.
MO6. Identify how to run containerized applications in a cluster of managed servers.
MO7. Demonstrate when to use AWS Lambda.
MO8. Demonstrate when to use AWS Elastic Beanstalk.
This week, we cover two more fundamental service categories for retaining your data in the cloud - storage and databases.
AWS Module 7 Storage introduces us to four different storage technologies available in AWS: Amazon S3 (Simple Storage Service), S3 Glacier, EBS (Elastic Block Store), and EFS (Elastic File System). Storage is one of the core AWS service areas, and it is important for us to understand the advantages and disadvantages of each technology. The module focuses on these storage services so that we can decide which one to use for various use cases.
AWS Module 8 Databases introduces four of the most commonly used AWS database services: Amazon RDS (Relational Database Service), Amazon DynamoDB, Amazon Redshift, and Amazon Aurora. Databases are one of the core AWS service categories, and it is important to understand the advantages and disadvantages of each so we can select the appropriate database service to use for various use cases.
Suggested Participation Total: 8.5 Hours
Includes meetings, learning resources in the AWS Academy including hans-on labs, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 3.75 hours
AWS Module 7 Storage Video Lessons (1 hr 25 min)
Hands-on Lab 4 - Working with EBS (30 min)
AWS Knowledge Check 7 (20 min)
AWS Module 8 Databases Video Lessons (35 min)
Hands-on Lab 5 - Build a Database Server (30 min)
AWS Knowledge Check 8 (20 min)
At the end of these modules, you should be able to:
CO7. Differentiate between the following storage services: Amazon S3, Amazon EBS, Amazon EFS, and Amazon S3 Glacier.
MO1. Identify the different types of storage.
MO2. Explain Amazon Simple Storage Service (Amazon S3).
MO3. Identify the functionality in Amazon S3.
MO4. Explain Amazon Elastic Block Store (Amazon EBS).
MO5. Identify the functionality in Amazon EBS.
MO6. Perform functions in Amazon EBS to build an EC2 storage solution.
MO7. Explain Amazon Elastic File System (Amazon EFS).
MO8. Identify the functionality in Amazon EFS.
MO9. Explain Amazon Simple Storage Service Glacier.
MO10. Identify the functionality in Amazon S3 Glacier.
MO11. Differentiate between Amazon EBS, Amazon S3, Amazon EFS, and Amazon S3 Glacier.
CO8. Demonstrate when to use AWS database services, including Amazon RDS, Amazon DynamoDB, Amazon Redshift, and Amazon Aurora.
MO1: Explain Amazon Relational Database Service (Amazon RDS).
MO2: Identify the functionality in Amazon RDS.
MO3: Perform tasks in an Amazon RDS database such as launching, configuring, and interacting.
MO4: Explain Amazon DynamoDB.
MO5: Identify the functionality in Amazon DynamoDB.
MO6: Explain Amazon Redshift.
MO7: Explain Amazon Aurora.
This final week we wrap things up with designing and building resilient cloud architectures according to AWS best practices.
AWS Module 9 Cloud Architecture introduces two tools for designing and building resilient solutions in the cloud. By using the AWS Well-Architected Framework, you can design solutions that are optimized, reliable, and highly available. Understanding what AWS services and tools that you can rely, including AWS Trusted Advisor, will be important in this task.
AWS Module 10 Auto Scaling and Monitoring introduces you to three fundamental AWS services – Elastic Load Balancing (ELB), Amazon EC2 Auto Scaling, and Amazon CloudWatch – which can be used together to build dynamic, scalable architectures.
Suggested Participation Total: 8.5 Hours
Includes meetings, learning resources in the AWS Academy including hans-on labs, study and topic research based on suggested web resources listed in the course modules
Online Live Session: 3 hours
AWS Academy Minimum Content Time: 2.5 hours
AWS Module 9 Cloud Architecture Video Lessons (30 min)
AWS Knowledge Check 9 (10 min)
AWS Module 10 Auto Scaling and Monitoring Video Lessons (25 min)
Hands-on Lab 6 - Scale and Load Balance (30 min)
AWS Knowledge Check 10 (10 min)
Course Survey (5 min)
Course Assessment - Comprehensive/20 Questions/Repeatable/No Time Limit - Required (30 min)
At the end of these modules, you should be able to:
CO9. Explain the architectural principles of the AWS Cloud.
MO1: Describe the AWS Well-Architected Framework, including the six pillars.
MO2: Identify the design principles of the AWS Well-Architected Framework.
MO3: Explain the importance of reliability and high availability.
MO4: Identify how AWS Trusted Advisor helps customers.
MO5: Interpret AWS Trusted Advisor recommendations.
CO10. Explore key concepts related to Elastic Load Balancing, Amazon CloudWatch, and Amazon EC2 Auto Scaling.
MO1: Indicate how to distribute traffic across Amazon EC2 instances by using Elastic Load Balancing.
MO2: Identify how Amazon CloudWatch enables you to monitor AWS resources and applications in real time.
MO3: Explain how Amazon EC2 Auto Scaling launches and releases servers in response to workload changes.
MO4: Perform scaling and load balancing tasks to improve an architecture.
Free-of-cost: Access within AWS Academy using our AWS Academy student account. No need to create a personal AWS account.
No additional software requirements: Uses the same web browser as Canvas.
AWS Management Console: Provides experience with the web application used by professionals.
Curated Experience: Leverages Vocareum and AWS CloudFormation ensuring each session launches only the required resources
Guided Instructions: Complete set of step-by-step instructions show you how to perform the most common tasks.
Auto-graded: Immediate feedback is provided by the automated testing feature within the lab session.
Repeatable: Multiple attempts are encouraged for repeated practice and to improve our score.
Duration: 40 minutes
In this lab , you will explore the effects of applying permissions to users using AWS Identity and Access Management (AWS IAM). Your company is growing its use of Amazon Web Services (AWS), and is using many Amazon EC2 instances and a great deal of Amazon S3 storage. You wish to give access to new staff depending upon their job function. For this lab, you will work with several Users and Groups to enable permissions supporting the business scenario.
AWS IAM is a web service that enables AWS customers to manage users and user permissions in AWS. With IAM, you can centrally manage users, security credentials such as access keys, and permissions that control which AWS resources users can access.
Task 1: Explore the Users and Groups In this task, you will explore the Users and Groups that have already been created for you in IAM.
Task 2: Add Users to Groups You have recently hired a user into a role where they will provide support for Amazon S3. You will add them to the S3-Support group so that they inherit the necessary permissions via the attached AmazonS3ReadOnlyAccess policy.
Task 3: Sign-In and Test Users In this task, you will test the permissions of each IAM User by locating the IAM sign-in URL and experimenting with the effects of policies on service access.
Duration: 30 minutes
In this lab, you will use Amazon Virtual Private Cloud (VPC) to create your own VPC and add additional components to produce a customized network. You will also create a security group. You will then configure and customize an EC2 instance to run a web server and you will launch the EC2 instance to run in a subnet in the VPC.
Amazon VPC enables you to launch AWS resources into a virtual network that you defined. This virtual network closely resembles a traditional network that you would operate in your own data center, with the benefits of using the scalable infrastructure of AWS. You can create a VPC that spans multiple Availability Zones.
Task 1: Create Your VPC Use the VPC and more option in the VPC console to create multiple resources, including a VPC, an Internet Gateway, a public subnet and a private subnet in a single Availability Zone, two route tables, and a NAT Gateway.
Task 2: Create Additional Subnets Create two additional subnets for the VPC in a second Availability Zone. Having subnets in multiple Availability Zones within a VPC is useful for deploying solutions that provide High Availability. After creating a VPC as you have already done, you can still configure it further, for example, by adding more subnets. Each subnet you create resides entirely within one Availability Zone.
Task 3: Create a VPC Security Group Create a VPC security group, which acts as a virtual firewall. When you launch an instance, you associate one or more security groups with the instance. You can add rules to each security group that allow traffic to or from its associated instances.
Task 4: Launch a Web Server Instance In this task, you will launch an Amazon EC2 instance into the new VPC. You will configure the instance to act as a web server.
Duration: 35 minutes
This lab provides you with a basic overview of launching, resizing, managing, and monitoring an Amazon Elastic Compute Cloud (Amazon EC2) instance.
Amazon EC2 is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers. It's simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon's proven computing environment. EC2 reduces the time required to obtain and boot new server instances to minutes, allowing you to quickly scale capacity, both up and down, as your computing requirements change. It also changes the economics of computing by allowing you to pay only for capacity that you actually use. Amazon EC2 provides developers the tools to build failure resilient applications and isolate themselves from common failure scenarios.
Task 1: Launch Your Amazon EC2 Instance Launch an Amazon EC2 instance with termination protection and stop protection. Termination protection prevents you from accidentally terminating the EC2 instance and stop protection prevents you from accidentally stopping the EC2 instance. You will also specify a User Data script when you launch the instance that will deploy a simple web server.
Task 2: Monitor Your Instance Monitoring is an important part of maintaining the reliability, availability, and performance of your Amazon Elastic Compute Cloud (Amazon EC2) instances and your AWS solutions.
Task 3: Update Your Security Group and Access the Web Server When you launched the EC2 instance, you provided a script that installed a web server and created a simple web page. In this task, you will access content from the web server. This requires a the addition of a new rule to the security group to allow HTTP traffic.
Task 4: Resize Your Instance: Instance Type and EBS Volume As your needs change, you might find that your instance is over-utilized (too small) or under-utilized (too large). If so, you can change the instance type. For example, if a t2.micro instance is too small for its workload, you can change it to an m5.medium instance. Similarly, you can change the size of a disk.
Task 5: Explore EC2 Limits Amazon EC2 provides different resources that you can use. These resources include images, instances, volumes, and snapshots. When you create an AWS account, there are default limits on these resources on a per-region basis.
Task 6: Test Stop Protection You can stop your instance when you do not need to access but you would still like to retain it. In this task, you will learn how to use stop protection.
Duration: 60 minutes
In this hands-on activity, we will create an AWS Lambda function. We will also create an Amazon EventBridge event to trigger the function every minute. The function uses an AWS Identity and Access Management (IAM) role. This IAM role allows the function to stop an Amazon Elastic Compute Cloud (Amazon EC2) instance that is running in the AWS account. With this capability and only a small modification, the function could also be used to stop test EC2 instances at the end of the day or week to help reduce costs.
Task 1: Create a Lambda function Deploy a new Lambda function from scratch, configured to use the Python 3.11 runtime and an existing IAM role. Lambda supports multiple languages through the use of runtimes, including Node.js, Python, Ruby, Java, Go, and C#. A runtime provides a language-specific environment that relays invocation events, context information, and responses between Lambda and the function.
Task 2: Configure the trigger Configure a scheduled event to trigger the Lambda function by setting an Amazon EventBridge event as the event source (or trigger). The Lambda function can be configured to operate much like a cron job on a Linux server, or a scheduled task on a Microsoft Windows server. However, you do not need to have a server running to host it.
Task 3: Configure the Lambda function Paste the provided code, and replace a few lines to update two values in the function code. For this course, all required code is provided.
Task 4: Verify that the Lambda function worked Return to the Amazon EC2 console browser tab and see if your instance was stopped.
Duration: 30 minutes
This activity provides you with an Amazon Web Services (AWS) account where an AWS Elastic Beanstalk environment has been pre-created for you. You will deploy code to it and observe the AWS resources that make up the Elastic Beanstalk environment.
AWS Elastic Beanstalk is the fastest way to get web applications up and running on AWS. You can simply upload your application code, and the service automatically handles details such as resource provisioning, load balancing, auto scaling, and monitoring. Elastic Beanstalk is ideal if you have a PHP, Java, Python, Ruby, Node.js, .NET, Go, or Docker web application. Elastic Beanstalk uses core AWS services such as Amazon Elastic Compute Cloud (EC2), Amazon Elastic Container Service (ECS), AWS Auto Scaling, and Elastic Load Balancing (ELB) to easily support applications that need to scale to serve millions of users.
Task 1: Access the Elastic Beanstalk environment Examine the pre-created environment. The Elastic Beanstalk console provides the capabilities for creating, managing, and updating your environment, including it's health status.
Task 2: Deploy a sample application to Elastic Beanstalk Use the provided code package to upload and deploy a sample static web application.
Task 3: Explore the AWS resources that support your application The sample application includes several AWS EC2 resources that were deployed by Elastic Beanstalk to support the application environment, including multiple, EC2 instances, an Auto Scaling group, load balancer, and security group,
Duration: 30 minutes
This lab focuses on Amazon Elastic Block Store (Amazon EBS), a key underlying storage mechanism for Amazon EC2 instances. In this lab, you will learn how to create an Amazon EBS volume, attach it to an instance, apply a file system to the volume, and then take a snapshot backup.
Amazon EBS offers persistent storage for Amazon EC2 instances. EBS volumes are network-attached and persist independently from the life of an instance. This results in highly available, highly reliable volumes that can be leveraged as an EC2 instance boot partition or attached to a running instance as a standard block device. And when used as a boot partition, instances can be stopped and restarted, enabling you to pay only for the storage resources used while maintaining your instance's state. EBS volumes offer greatly improved durability because they are automatically replicated on the backend (in a single Availability Zone), and for greater durability you can create point-in-time snapshots that are stored in Amazon S3 and automatically replicated across multiple Availability Zones.
Task 1: Create a New EBS Volume When you create an EBS volume, you specify the type, size, and Availability Zone. EBS offers several types of storage divided into two major categories: SSD-backed storage (gp2, gp3, io1, io2) for transactional workloads, such as databases, virtual desktops and boot volumes, and HDD-backed storage (st1, sc1) for throughput intensive workloads, such as MapReduce and log processing.
Task 2: Attach the Volume to an Instance EBS volumes are network attached storage, allowing you to attach and detach volumes to your EC2 instances.
Task 3: Connect to Your Amazon EC2 Instance Connect to the EC2 instance using EC2 Instance Connect which provides access to a terminal in the browser. There are several methods available to connect to an EC2 instance. Some vary depending on the operating system of the local machine that you connect from. Others, like EC2 Instance Connect or AWS Systems Manager Session Manager, don't vary.
Task 4: Create and Configure Your File System Add the new volume to a Linux instance as an ext3 file system under the /mnt/data-store mount point.
Task 5: Create an Amazon EBS Snapshot You can create any number of point-in-time, consistent snapshots from Amazon EBS volumes at any time. Amazon EBS snapshots are stored in Amazon S3 with high durability. New Amazon EBS volumes can be created out of snapshots for cloning or restoring backups. Amazon EBS snapshots can also be easily shared among AWS users or copied over AWS regions.
Task 6: Restore the Amazon EBS Snapshot If you ever wish to retrieve data stored in a snapshot, you can Restore the snapshot to a new EBS volume.
Duration: 30 minutes
This lab is designed to reinforce the concept of leveraging an AWS-managed database instance for solving relational database needs.
Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database administration tasks, which allows you to focus on your applications and business. Amazon RDS provides you with six familiar database engines to choose from: Amazon Aurora, Oracle, Microsoft SQL Server, PostgreSQL, MySQL and MariaDB.
Task 1: Create a Security Group for the RDS DB Instance Create a security group to allow your web server to access your RDS DB instance. The security group will be used when you launch the database instance.
Task 2: Create a DB Subnet Group Create a DB subnet group that is used to tell RDS which subnets can be used for the database. Each DB subnet group requires subnets in at least two Availability Zones.
Task 3: Create an Amazon RDS DB Instance Configure and launch a Multi-AZ Amazon RDS deployment of a MySQL database instance. Amazon RDS Multi-AZ deployments provide enhanced availability and durability for Database (DB) instances, making them a natural fit for production database workloads. When you provision a Multi-AZ DB instance, Amazon RDS automatically creates a primary DB instance and synchronously replicates the data to a standby instance in a different Availability Zone (AZ).
Task 4: Interact with Your Database Open a web application running on a web server that has been created for you. You will configure it to use the database that you just created. You will then add several new address book records using the connected web application.
Duration: 30 minutes
This lab walks you through using the Elastic Load Balancing (ELB) and Auto Scaling services to load balance and automatically scale your infrastructure.
Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances. It enables you to achieve fault tolerance in your applications by seamlessly providing the required amount of load balancing capacity needed to route application traffic.
Amazon EC2 Auto Scaling helps you maintain application availability and allows you to scale your Amazon EC2 capacity out or in automatically according to conditions you define. You can use Auto Scaling to help ensure that you are running your desired number of Amazon EC2 instances. Auto Scaling can also automatically increase the number of Amazon EC2 instances during demand spikes to maintain performance and decrease capacity during lulls to reduce costs. Auto Scaling is well suited to applications that have stable demand patterns or that experience hourly, daily, or weekly variability in usage.
Task 1: Create an AMI for Auto Scaling Create an AMI from the existing Web Server 1. This will save the contents of the boot disk so that new instances can be launched with identical content.
Task 2: Create a Load Balancer Create a target group and then you will create a load balancer that can balance traffic across multiple EC2 instances and Availability Zones. Target groups route requests to individual registered targets, such as EC2 instances, using the protocol and port number that you specify.
Task 3: Create a Launch Template and an Auto Scaling Group Create a launch template for your Auto Scaling group. A launch template is a template that an Auto Scaling group uses to launch EC2 instances. When you create a launch template, you specify information for the instances such as the AMI, the instance type, a key pair, and security group.
Task 4: Verify that Load Balancing is Working Use the DNS name of the load balancer to connect to the web application in a new browser tab. The application should appear in the browser. This indicates that the Load Balancer received the request, sent it to one of the EC2 instances, then passed back the result.
Task 5: Test Auto Scaling You created an Auto Scaling group with a minimum of two instances and a maximum of six instances. Currently two instances are running because the minimum size is two and the group is currently not under any load. You will now increase the load to cause Auto Scaling to add additional instances.
Task 6: Terminate Web Server 1 Terminate Web Server 1. This instance was used to create the AMI used by your Auto Scaling group, but it is no longer needed.