默认路由策略是Round-Robin,具有一些基于IP /会话的粘性。还有其他策略吗? (Route53有加权循环,但ELB似乎没有)
循环法是否意味着您绝对应该为ELB背后的所有服务器使用完全相同大小的EC2实例? (使用一些大的和一些小的意味着小的可能会超载而大的那些有资源可用)
是否几乎可以将EC2实例逐个切换到更大的尺寸而无需停机?
答案 0 :(得分:2)
ELB仅支持基于会话(cookie)的粘性,而不支持IP。创建ELB时,DNS使用Round-Robin路由到特定的ELB实例。 ELB本身使用最不完整的请求路由算法将请求路由到单个实例。这在此处记录:http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/how-elb-works.html
循环法是否意味着你绝对应该使用完全相同的东西 ELB背后所有服务器的EC2实例大小?
是
实际上是否可以将EC2实例逐个切换为a 更大的尺寸没有停机时间?
是。将一个或多个较大的实例添加到池中。一旦ELB将新实例显示为在服务中,从池中删除相同数量的较小实例,使用connection draining允许任何未完成的请求完成。重复,直到更换所有较小的实例。
请注意,每当从负载均衡器中删除实例时,该实例上的HTTP会话都将被销毁,可能导致任何“卡住”该服务器的用户从您的网站注销。为了防止这种情况,你必须使用某种共享会话机制。