在自动扩展组中获取EC2实例的公共IP的要求是什么?

我的目标是启动一些应由自动缩放组pipe理的EC2实例。 所有的实例都应该有公有的IP。

在我的testing中,我发现取决于AWS账户的configuration,这并不总是可能的。 在我可以使用的testing帐户中,某些地区有默认的VPC。 在那个地区,我能够获得公共知识产权。

在其他地区,我们没有configuration默认的VPC。 在这种情况下,我的理解是不可能获得公共IP。 那是对的吗?

另外,AWS文档提到了ClassicLink这个术语。 根据我的理解,这个概念只适用于旧账户。 它也允许有公共IP,但是只有在设置了“ClassicLink”标志的VPCconfiguration的情况下。 (在我的帐户,情况并非如此,所以我无法testing它。)

总之,我想问我的理解是否正确。 如果至less有一个条件成立,那么您是否可以在自动缩放组中只有EC2实例的公有IP?

  1. 在该地区,存在一个默认的VPC
  2. 您有一个旧帐户(支持EC2-Classic),并且在该地区至less有一个启用了ClassicLink的VPC

(请注意,我不能使用ELB,因为实例不相同,如果ELB洗牌请求,会混淆系统,因为发件人需要控制哪个实例处理请求。)

通常,自动调节组位于负载平衡器AWS ELB的后面。 为每个新的实例提供一个公有IP通常不是很有用,因为这样你就必须将IP地址传递给DNS或客户端。

但是,如果您有一个有用的边界情况,则只需将启动configuration分配给一个公有IP即可。 Auto Scaling组中的公共IP

另外,在默认的VPC中,我相信一个公共IP被默认分配给新的实例,而在任何VPC中,你创build的默认是不分配一个公共IP。

您当然可以随时将弹性IP与EC2实例相关联。

ClassicLink仅在VPC以外的实例中使用。 我对VPC以外的AWS了解不多,因为它在传统的AWStesting中没有经过testing。 您可能最好将所有内容迁移到VPC。