AWS: High Availability
4h 46mIntermediate2021-05-25
Authors

Sharif Nijim
Assistant Teaching Professor at the University of Notre Dame
Course details
Building out a resilient application takes knowledge, effort, and the right toolset. Businesses increasingly turn to cloud-based platforms like Amazon Web Services for access to modern, scalable solutions, including compute, database, and storage options. This course covers basic high availability (HA) concepts as well as practical techniques for setting up a strong and highly available environment for your real-world applications in AWS. Follow along with instructor Sharif Nijim as he explains how to create highly available DNS routes in Route 53; distribute workloads across resources with Amazon Machine Images, the Application and Network Load Balancers, and AWS Auto Scaling; and build out a highly available database with Dynamic DB, RDS, Neptune, and ElastiCache. Plus, learn about the high availability storage options such as S3, Elastic Block Storage (EBS), Elastic File System, and FSx.
Learning objectives
What is high availability?
Designing for failure
Routing with Route 53
Working with Amazon Machine Images
Setting up load balancing
Combining Auto Scaling and load balancing
Creating an RDS database
Creating a highly available graph database
Exploring ElastiCache for Redis and Amazon Keyspaces
Setting up Elastic File System for HA storage
Learning objectives
What is high availability?
Designing for failure
Routing with Route 53
Working with Amazon Machine Images
Setting up load balancing
Combining Auto Scaling and load balancing
Creating an RDS database
Creating a highly available graph database
Exploring ElastiCache for Redis and Amazon Keyspaces
Setting up Elastic File System for HA storage
Skills covered
Amazon Web Services (AWS)AmazonCloud ServicesCloud PlatformsCloud ComputingDeep Dive (X:Y)
Concepts
0. Introduction
- 01 - AWS and high availability
- 02 - What you should know
- 03 - Command Line Interface (CLI) for Mac
- 04 - Command Line Interface (CLI) for Windows
1. Foundations of High Availability
- 05 - Reviewing high-availability concepts
- 06 - Designing for failure
- 07 - Understanding fault-tolerant components
- 08 - Exploring high availability in Route 53
- 09 - Creating a health check in Route 53
- 10 - Understanding advanced HA options in Route 53
- 11 - Understanding Elastic IP addresses
2. Compute Tools for High Availability
- 12 - Understanding EBS snapshots
- 13 - Understanding Amazon Machine Images (AMI)
- 14 - Exploring Amazon Machine Images
- 15 - Understanding load balancing options
- 16 - Understanding load balancing features
- 17 - Creating a target group
- 18 - Creating an application load balancer
- 19 - Testing an application load balancer
- 20 - Understanding Auto Scaling
- 21 - Creating a launch configuration
- 22 - Creating a launch template
- 23 - Creating an Auto Scaling group
- 24 - Staying alive with Auto Scaling
- 25 - Understanding scaling policies
- 26 - Implementing step scaling
- 27 - Challenge - Scale-in policy
- 28 - Solution - Scale-in policy
- 29 - Combining autoscaling and load balancing
- 30 - Testing autoscaling with load balancing
- 31 - Decoupling tools
3. Highly Available Database Options
- 32 - Understanding DynamoDB
- 33 - Creating a global DynamoDB table
- 34 - Improving relational database availability
- 35 - Creating an RDS subnet group
- 36 - Creating an RDS database
- 37 - Adding high availability to RDS
- 38 - Simulating RDS failover
- 39 - Understanding Amazon Neptune
- 40 - Creating a highly available graph database
- 41 - Understanding ElastiCache for Memcached
- 42 - Challenge - Create ElastiCache subnet
- 43 - Solution - Create ElastiCache subnet
- 44 - Creating an ElastiCache Memcached cluster
- 45 - Explore ElastiCache Memcached
- 46 - Understanding ElastiCache for Redis
- 47 - Creating an ElastiCache for Redis cluster
- 48 - Exploring ElastiCache for Redis
- 49 - Exploring Amazon Keyspaces
4. Highly Available Storage Options
- 50 - Understanding S3
- 51 - Understanding EBS
- 52 - Understanding Elastic File System
- 53 - Creating Elastic File System
- 54 - Exploring Elastic File System
- 55 - Understanding Amazon FSx
5. Data Protection
- 56 - Understanding snapshots
- 57 - Understanding Data Lifecycle Manager
- 58 - Exploring Data Lifecycle Manager
- 59 - Exploring Lifecycle Manager artifacts
- 60 - Cleaning up after Lifecycle Manager
- 61 - Understanding AWS Backup
- 62 - Implementing backup vaults
- 63 - Creating a backup plan
- 64 - Implementing cross-account protection
- 65 - Restoring from AWS Backup
- 66 - Removing Backup artifacts
Conclusion
- 67 - Next steps
Related courses
- AWS for DevOps: High Availability and Elasticity
- AWS for Architects: High Availability and Continuous Deployment
- AWS Certified Advanced Networking – Specialty (ANS-C01) Cert Prep: 3 Network Management and Operation
- AWS Certified Security - Specialty (SCS-C02) Cert Prep: 1 Threat Detection and Incident Response
- AWS Essential Training for Architects
- AWS Certified DevOps Engineer Professional (DOP-C02) Cert Prep
- AWS Certified Database – Specialty (DBS-C01) Cert Prep: 2 Design and Deployment
- AWS Certified Solutions Architect - Associate (SAA-C02) Cert Prep: 8 Databases
Related learn paths
- Prepare for the AWS SysOps Administrator - Associate (SOA-C02) Exam
- Prepare for the AWS Solutions Architect - Professional (SAP-C01) Exam
- Prepare for the AWS DevOps Engineer - Professional (DOP-C01) Exam
- Become an AWS Data and DevOps Specialist
- Prepare for the AWS Certified Advanced Networking - Specialty (ANS-C01) Certification
- Prepare for the AWS Certified Security - Specialty (SCS-C02) Certification
- Prepare for the AWS Certified Database - Specialty (DBS-C01) Exam
- Prepare for the AWS Certified Solutions Architect - Associate Exam (SAA-C02)