You are designing a system which needs, at minumum, 8 m4.large instances operating to service traffic. When designing
a system for high availability in the us-east-1 region, which has 6 Availability Zones, you company needs to be able to
handle death of a full availability zone. How should you distribute the servers, to save as much cost as possible, assuming
all of the EC2 nodes are properly linked to an ELB? Your VPC account can utilize us-east-1’s AZ’s a through f, inclusive.
A.
3 servers in each of AZ’s a through d, inclusive.
B.
8 servers in each of AZ’s a and b.
C.
2 servers in each of AZ’s a through e, inclusive.
D.
4 servers in each of AZ’s a through c, inclusive.
Explanation:
You need to design for N+1 redundancy on Availability Zones. ZONE_COUNT = (REQUIRED_INSTANCES /
INSTANCE_COUNT_PER_ZONE) + 1. To minimize cost, spread the instances across as many possible zones as you
can. By using a though e, you are allocating 5 zones. Using 2 instances, you have 10 total instances. If a single zone
fails, you have 4 zones left, with 2 instances each, for a total of 8 instances. By spreading out as much as possible, you
have increased cost by only 25% and significantly de-risked an availability zone failure.
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-regionsavailability-zones
A
A is the best options here that covers 5 AZ’s using 10 instances , and if a complete AZ fails we still have 8 instances (covering 4 AZ’s) (i.e the requirement)
C – 10 servers/5AZs – optimal solutions
C is most optimal.