AWS ELB 零停机部署

AWS ELB zero downtime deploy

对于 ELB 设置,存在健康检查超时,例如如果某台服务器未通过 X 失败检查,则将其从 LB 中移除。

对于真正的零停机时间部署,我实际上希望能够避免这些额外的 4-5 秒停机时间。

是否有一种简单的方法可以在操作方面做到这一点,或者这是否需要在网络服务器本身的层面上进行?

如果您正在进行持续部署,您应该从 ELB 中注销您要部署到的实例(例如,aws elb deregister-instances-from-load-balancer),等待当前连接耗尽,部署您的应用程序,然后注册一个实例使用 ELB。

http://docs.aws.amazon.com/cli/latest/reference/elb/deregister-instances-from-load-balancer.html http://docs.aws.amazon.com/cli/latest/reference/elb/register-instances-with-load-balancer.html

部署到另一个AutoScaling Group也是一种常见的策略,然后在负载均衡器上切换ASG即可。