Amazon EC2 Elastic Load Balancing - strategy for zero downtime server restart
- by Yoga
I have 5 web servers (Apache/mod_perl) behind Amazon EC2 Elastic Load Balancing, when I deploy codes to the web servers, I am doing this..
For each machine, shutdown the Apache
Update the code
Start over the server and proceed to the next server
I think when my server is shutdown, ELB will not distribute request to my server, but how about the request still serving?
I think a better approach is
Stop accepting new request from ELB
Sleep for sometimes, shutdown web server only if all requests are responded
Update the codes
Start the server again
But how to perform (1) and (2) from my local sever? Do I need to use AWS API? or other easy way to do it?
Thanks.