I designing an application with HA, that will be deployed across multiple AZs in a single region of AWS. Its come to my attention that (even after purchasing a reserved instance), AWS cannot provide a guarantee that an EC2 can be launched in 2nd AZ when primary (AZ1) goes down.
This is unlikely since AWS will have enough capacity provisioned to allow its customers use AZ2 when AZ1 is out of service but nevertheless this is probable (in the event where all customers move from AZ1 to AZ2 and there is a genuine resource constraint in AWS datacenter AZ2).
The only alternative seems to be run an EC2 (or keep it up) in the 2nd AZ (even if not being used) with the aim of using it when AZ1 goes down.
This means we will incur the cost of keeping these EC2s up all the time in AZ2.
Wondering if anyone else has this problem? And overcome this?
Â " Amazon EC2 Auto Scaling attempts to launch the instances in another Availability Zone until it succeeds". In my use-case – I want to guarantee that AWS can provision EC2 in AZ2 when AZ1 goes down and the only way to do this it appears is to forcefully keep it up (manually) and not rely on Auto scaling group.