CS4740 Cloud Computing

Neal Magee, Ph.D.
Solution Architect, Research Computing
University of Virginia, Fall 2022

Course Schedule

# Date Topics(s) Read / Watch / Do
00 Student Survey Take the Survey
01 8/23 Course introduction, Concepts & Requirements A Visit to the "Cloud"
Cloud Foundations
02 8/25 Abstraction & Virtualization Virtualization
Hypervisors
03 8/30 Managed Services & Cost Management AWS Managed Services
Lab 0: Cost Control Lab (In class)
04 9/1 Building Blocks I: VPCs & Networking VPCs and Subnets
VPC Evolution
Lab 1: Virtual Private Cloud (Submit by 9/8)
05 9/6 Building Blocks II: Security Groups & Ingress/Egress VPC Security Groups
06 9/8 Building Blocks III: IAM & Tagging IAM Overview
Tagging Best Practices
Lab 2: Identity and Access Management (Submit by 9/15)
07 9/13 Building Blocks IV: Block vs. Object Storage AWS Storage
Storage Compared
Object Storage
Lab 3: Introduction to S3 (Submit by 9/22)
08 9/15 Building Blocks V: CDNs, Caching & Network Storage Introduction to AWS CloudFront
Google Cloud CDN
09 9/20 Building Blocks VI: EC2 & Virtual Machines Amazon EC2
Create an EC2 Instance
Lab 4: Introduction to EC2 (Submit by 9/27)
GCP: Create a Virtual Machine
10 9/22 Building Blocks VII: Machine Images Dynamic AMIs
9/26 Programming Assignment #1 Due @ 5:00pm PA #1
11 9/27 Building Blocks VIII: Bootstrapping Deployment Strategies
Lab 5: EC2 Bootstrapping (Submit by 10/14)
12 9/29 Infrastructure as Code: CloudFormation AWS CloudFormation
Lab 6: Introduction to CloudFormation (Submit by 10/14)
10/4 No Class - Fall Reading Day
13 10/6 Infrastructure as Code: CLI / boto3 / SDKs CI/CD in 100 Seconds
Continuous Integration
DevOps in Practice
14 10/11 CLI / boto3 / SDKs Continued AWS CLI v2 Introduction
CI/CD at Instragram
Lab 7: boto3 SDK (Submit by 10/20)
15 10/13 Scaling / Right-sizing / Chaos Engineering Netflix Chaos Engineering
Right-Sizing
Lab 8: EC2 Auto-scaling
10/14 Programming Assignment #2 Due @ 5:00pm PA #2
16 10/18 Designing Apps for the Cloud Cloud Design Patterns
Well-architected Framework
17 10/20 Running Microservices Martin Fowler
Microservice Patterns
AWS Lightsail
10/24 Mid-Term Exam Due @ 11:59pm EDT
(Covers material through 10/13)
18 10/25 Serverless I: AWS Lambda AWS Lambda Overview
Serverless Architectures
19 10/27 Serverless II: Lambda + Events Martin Fowler: EDA
GCP: Event-Driven Architecture
AWS Serverless Multi-tier
AWS Step Functions
20 11/1 Serverless III: Chalice (online lecture, no in-class meeting) AWS Chalice
Walkthrough: AWS Chalice
Event-driven Pipeline
Lab 9: Audit your AWS Environment
21 11/3 Serverless IV: API Gateway 1 Introduction to API Gateway
Serverless Analytics for Games
11/8 No Class - Election Day
22 11/10 Serverless V: API Gateway 2 Lecture: API Fundamentals
11/15 Classes Canceled
23 11/17 Relational & NoSQL Databases in the Cloud Lecture: Cloud Databases
Cloud Database Intro
Martin Fowler
Lab 10: CRUD Activities with DynamodB
24 11/22 ML/AI & Big Data Services (online lecture, no in-class meeting) Lecture: ML/AI In the Cloud
Google Bigtable
GitHub / Google BigQuery
11/24 No Class - Thanksgiving Break
25 11/29 Cloud Security AWS re:Inforce: Security Fundamentals
AWS Shared Responsibility Model
Secrets Management
26 12/1 Certification Prep AWS Certification
GCP Certification
Azure Certification
12/2 Programming Assignment #3 Due @ 11:59pm PA #3
27 12/6 Wrap-up / Deadline for Lab Verifications
12/09 Final Exam Due @ 12:00pm EST
(Covers all course material)