High-Availability Architectures


Home » Courses » Networking in Public Cloud Deployments » High-Availability Architectures

You have to be registered for this online course, or have this course selected as part of an active Expert Subscription to access all course materials.

High-Availability Architectures

Public clouds providers usually design their infrastructure to be highly resilient, but they don't offer any high-availability assurances apart from availability and durability SLA - they expect you to design your applications to survive failures, and deploy them across multiple availability zones or regions.

This module describes the principles of building cloud-ready application architectures and lessons learned in traditional high-availability environments that apply equally well to public cloud deployments.

1:29:24 Resilient Cloud Design

Justin Warren started his Resilient Cloud Design presentation with the differences between hardware- and software resiliency, explained how to prepare for inevitable failure (including the consequences of CAP theorem), and concluded with a number of resiliency patterns you could use when designing your public cloud deployment.

History of Resiliency 14:43 2020-05-08
Understanding Failure 9:03 2020-05-08
CAP Theorem 12:55 2020-05-08
Preparing for Failures 20:25 2020-05-08
Resiliency Patterns 22:18 2020-05-08
Questions and Answers 10:00 2020-05-08
Resilient Cloud Design Slide Deck 68M 2020-05-08

1:03:42 Free items High-Availability Requirements

Migrating to public cloud does not change the high-availability principles - you still have to understand what you want to do... and we'll cover some of the definitions, scenarios, and use cases in this section.

Introduction and Definitions 13:57 2017-03-28
Disaster Recovery 6:50 2017-03-28
Disaster Avoidance 29:46 2019-10-12
Data Center Migration 2:47 2017-03-28
Load Balancing Across Data Centers and Cloudbursting 10:22 2017-03-28

28:17 Limitations and Considerations

Laws of physics don't change just because you deploy your workload in someone else's data center (aka Public Cloud). You still have to consider the impact of latency, limited bandwidth, and data gravity.

Latency 8:09 2017-03-28
Limited Bandwidth 10:55 2017-03-28
Storage considerations 9:13 2017-03-28

16:12 Sample Scalable Application Architecture: Swimlanes

Well-designed active-active applications used "swimlanes" - a concept where multiple copies of an application stack reside in different locations.

Parallel Application Stacks (Swimlanes) 16:12 2017-03-28
Describing Fault Domains

A great introduction to fault domains, fault levels, cascading failures, and fault hierarchy.

More Information

This section contains external resources you might find helpful when designing high-availability public cloud solutions.

AWS Well-Architected Framework: Reliability Pillar

An excellent document starting with reliability and high-availability basics, and explaining how you can use AWS features to build reliable application stacks.

AWS Fault Injection Simulator

Breaking your infrastructure, now offered as a service. Only from AWS.

2:51:34 Lessons Learned Operating Active-Active Data Centers

If you want to have a highly-available application, there's simply no substitute for good design including global and local load balancing. In his presentation, Ethan Banks described the architecture he used when running multiple data centers for a large credit card payment processor, and lessons learned while operating them.

While Ethan focused on workloads deployed in on-premises data centers, the same lessons apply to public cloud deployments.

Lessons Learned Operating Active-Active DCs (Ethan Banks) 411K 2016-10-09
Lessons Learned Operating Active-Active Data Centers 96:04 2016-10-12

1:15:30 Q&A session

After Ethan's presentation we had a lively Q&A session focused on application- and infrastructure high-availability.

High-Availability Concerns 75:30 2016-10-12
You started this section on %started% Mark completed