AWS最近推出了NLB(网络负载均衡器),其中EIP(弹性IP)可以链接到AZ(可用区)。建议在多个AZ上使用NLB,因此每个都有多个EIP链接。
但是当其中一个AZ发生故障时会发生什么情况,链接的EIP是否会链接到其他AZ,直到原来的AZ再次出现?如果您使用单个EIP(即使用一个AZ用于NLB),即使您在多个AZ上运行的服务器已启动并运行,此类故障也可能导致流量故障,这一点非常重要。
答案 0 :(得分:1)
为那些在类似问题上挣扎的人回答我的问题。这是AWS支持回答我的问题
可用区(AZ)是不同的地理位置,旨在与其他AZ中的故障隔离。但是,不幸的是,当AZ失败时,该服务在该AZ上被中断。没有IP自动转移到另一个AZ [1]。
尽管AZ故障很少见,而且AWS需要付出巨大努力才能避免这种故障,但这些类型的故障可能并且确实会发生。出于这个原因,我们通常会要求用户在多个AZ中放置资源(NLB)。这样可以保护应用程序免于在单个位置发生故障。如果一个区域失败,则另一个区域中的应用程序可以继续运行[2]。
[1] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-regions-availability-zones [2] https://media.amazonwebservices.com/architecturecenter/AWS_ac_ra_ftha_04.pdf
答案 1 :(得分:0)
如果AZ中没有健康的实例,则EIP停止工作,并且NLB从负载均衡器中删除其条目' DNS记录。当AZ再次变得健康时,它会重新加入。
如果一个或多个目标组在启用的可用区中没有健康目标,我们会从DNS中删除相应子网的IP地址,以便无法将请求路由到该可用区中的目标。
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-health-checks.html
因此,您的呼叫者应尊重DNS TTL。