What is high availability in the cloud?
High availability means designing a system so it stays up and running even when parts of it fail. Instead of one server that becomes a single point of failure, you run multiple copies across different zones, with a load balancer sending traffic to the healthy ones. The goal is little to no downtime, even during failures.
- High availability means a system stays up with minimal downtime.
- It is achieved with redundancy, so no single failure takes the system down.
- Availability is often measured in nines, such as 99.99 percent uptime.
How you achieve it
- Redundancy: run more than one copy of each component.
- Multiple zones: spread copies across availability zones.
- Load balancing: route traffic away from failed servers.
- No single point of failure: avoid any one part that can take everything down.
If one server or even a whole data centre goes down, requests are simply served by the others. Users may not even notice, which is the point of high availability.
The phrase to use is avoid a single point of failure. Explaining that you remove any one component whose failure would break the whole system is the heart of a good high availability answer.
Frequently asked questions
How do you design for high availability?
Remove single points of failure using redundant servers across availability zones, load balancing, health checks, and automatic failover.
What is the difference between high availability and fault tolerance?
High availability minimises downtime and recovers quickly, while fault tolerance aims for zero interruption by fully duplicating components.
Common follow up questions
Related interview questions
Want the full Cloud guide?
Read every Cloud concept with notes, diagrams, and code in one place. Track your progress as you go.
Open the Cloud guide All Cloud questions