I’m wondering why tutor choose ELB over Route53? In my opinion, question doesn’t say anything about if ELB is used or not. If we just add another instance and simply add its IP to Route Route 53, we’ll get scalability without taking application down.
However, if we setup ELB and configure ELB with EC2 instances, our application will be down for sometime. Since site is hosting an e-commerce application, no one can afford to go offline especially when it’s prime time.
2 Reasons – Route53 is DNS service, adding more servers as demand surge, you can update Route53 records immediately but there is always inherent DNS propagation Delay (usually 30min+), another reason would be manual updation of Route53 Records everytime a server is added to the fleet. I would rather argue why not ELB Network LB – it does support sticky session, supports SSL , does load balancing too and question talks about 10x increase in traffic volume which hints at need of High thoughput which is supported Network LB
DNS multivalue does not ensure the IP’s that it sends are indeed working when the client tries to access the IP address. R53 does follow health checks before it builds the random list of IP’s, but that does not guarantee that the IP’s it sent are working when the client accesses them (too many possible dns caches between the client and R53 is one issue).
The NLB can work, of course, but in typical AWS style, their questions will give you clues on what they are looking for. In this case, it’s a web server, so that leads us to an ALB over an NLB.
The scenario doesn’t describe that the sever is already in an ASG or behind an ELB. The SSL termination can happen at the web server. The simplest, not most optimal though, is Route 53 multivalue. The question doesn’t require that adding servers needs to be automatically.
ALB with health checks
The question was ask what the reasonable ways are, not what the best way is. Therefore I think the answer should be NLB and ALB.