就高可用性而言,使用弹性IP或弹性网络接口掩盖实例故障有什么区别?唯一的区别是因为ENI可以用于私有实例,而弹性IP不能用于私有实例吗?
我正在尝试解释两者的优点,因此,如果有人可以帮助我,我将不胜感激!
为了实现高可用性,您需要能够在实例失败的情况下重定向流量。有几种选择:
1.使用弹性负载平衡器
这是提供高可用性的首选方法。
运行多个Amazon EC2实例,最好在不同的可用区(AZ)中运行。用户连接到ELB(通过提供的DNS名称),该ELB将流量重定向到EC2实例。如果实例失败,则ELB会通过常规运行状况检查注意到这一点,并且只会将流量定向到运行状况良好的实例。
Auto Scaling可用于在多个可用区中创建这些多个实例,并且还可以在添加/删除实例时更新Load Balancing服务。
2.重定向弹性IP地址
运行多个实例(最好跨多个可用区)。将弹性IP地址指向所需的实例。用户通过弹性IP地址连接,并被定向到实例。如果实例失败,请将弹性IP地址重新关联到其他实例,然后实例将立即开始接收流量。
不建议使用此方法,因为只有一个实例正在接收所有流量,而其他实例则处于空闲状态。它还需要一种机制来检测故障并重新关联弹性IP(您必须自己执行)。
3.重新分配弹性网络接口(ENI)
所有EC2实例都有一个主ENI。他们可以选择具有其他ENI。
可以将流量定向到辅助ENI,然后将该辅助ENI移至另一个实例。这类似于重新分配弹性IP地址。
不建议使用此方法,原因与重新关联弹性IP地址(上面)的原因相同,而且因为只能在同一可用区内重新分配ENI。它不能用于将流量定向到其他AZ中的EC2实例。
底线:使用弹性负载平衡器。它提供了真正的高可用性,并且可以自动执行。
请参阅文档:什么是弹性负载平衡?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句