使用 Elastic Beanstalk 配置 Amazon Virtual Private Cloud (Amazon VPC) - Amazon Elastic Beanstalk
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Elastic Beanstalk 配置 Amazon Virtual Private Cloud (Amazon VPC)

Amazon Virtual Private Cloud (Amazon VPC) 是网络服务,它将流量安全地路由到在 Elastic Beanstalk 中运行应用程序的 EC2 实例。如果在启动您的环境时未配置 VPC,Elastic Beanstalk 将使用默认 VPC。

您可以在自定义 VPC 中启动您的环境以自定义网络和安全设置。您可以在 Elastic Beanstalk 中选择用于您的资源的子网,以及如何为您的环境中的实例和负载均衡器配置 IP 地址。在创建环境时,它将锁定到一个 VPC,但您可以在运行的环境上更改子网和 IP 地址设置。

注意

如果您在 2013 年 12 月 4 日之前创建了 Amazon 账户,则环境可能在某些 Amazon 区域中使用 Amazon EC2-Classic 网络配置,而不是使用 Amazon VPC。有关将环境从 EC2-Classic 迁移到 VPC 网络配置的信息,请参阅将 Elastic Beanstalk 环境从 EC2-Classic 迁移到 VPC

在 Elastic Beanstalk 控制台中配置 VPC 设置

如果在创建环境时选择自定义 VPC,您可以在 Elastic Beanstalk 控制台中修改其 VPC 设置。

配置您的环境的 VPC 设置
  1. 打开 Elastic Beanstalk 控制台,然后在 Regions(区域)列表中选择您的 Amazon Web Services 区域。

  2. 在导航窗格中,选择 Environments(环境),然后从列表中选择环境的名称。

    注意

    如果您有多个环境,请使用搜索栏筛选环境列表。

  3. 在导航窗格中,选择 Configuration(配置)。

  4. Network(网络)配置类别中,选择 Edit(编辑)。

可供使用的设置如下。

VPC

为您的环境选择一个 VPC。您只能在创建环境期间更改该设置。


          Elastic Beanstalk 控制台上的 Modify network(修改网络)配置页面中的“VPC”部分

负载均衡器可见性

对于负载均衡的环境,请选择负载均衡器模式。默认情况下,负载均衡器是具有公有 IP 地址和域名的公有负载均衡器。如果您的应用程序仅处理来自您的 VPC 或连接的 VPN 的流量,请取消选择该选项,然后为您的负载均衡器选择私有子网以将负载均衡器指定为内部负载均衡器并禁止从 Internet 访问。

负载均衡器子网

对于负载均衡的环境,请选择负载均衡器用于处理流量的子网。对于公有应用程序,请选择公有子网。可以在多个可用区中使用子网以提供高可用性。对于内部应用程序,请选择私有子网并禁用负载均衡器可见性。


          Elastic Beanstalk 控制台上的 Modify network(修改网络)配置页面中的 Load balancer settings(负载均衡器设置)部分

实例公有 IP 地址

如果为您的应用程序实例选择公有子网,请启用公有 IP 地址以便从 Internet 路由这些地址。

实例子网

为您的应用程序实例选择子网。为您的负载均衡器使用的每个可用区选择至少一个子网。如果为您的实例选择私有子网,您的 VPC 必须在公有子网中具有实例可用于访问 Internet 的 NAT 网关。


          Elastic Beanstalk 控制台上的 Modify network(修改网络)配置页面中的 Instance settings(实例设置)部分

数据库子网

在运行附加到您的 Elastic Beanstalk 环境的 Amazon RDS 数据库时,请为数据库实例选择子网。为了获得高可用性,请将数据库指定为多可用区数据库,并为每个可用区选择一个子网。要确保您的应用程序可以连接到您的数据库,请在同一子网中运行应用程序和数据库。

aws:ec2:vpc 命名空间

您可以使用 aws:ec2:vpc 命名空间中的配置选项配置您的环境的网络设置。

以下配置文件使用该命名空间中的选项,为公有-私有配置设置环境的 VPC 和子网。要在配置文件中设置 VPC ID,必须在创建环境期间在应用程序源包中包含该文件。有关在创建环境期间配置这些设置的其他方法,请参阅在环境创建期间设置配置选项

例 .ebextensions/vpc.config – 公有-私有
option_settings: aws:ec2:vpc: VPCId: vpc-087a68c03b9c50c84 AssociatePublicIpAddress: 'false' ELBScheme: public ELBSubnets: subnet-0fe6b36bcb0ffc462,subnet-032fe3068297ac5b2 Subnets: subnet-026c6117b178a9c45,subnet-0839e902f656e8bd1

该示例显示一个公有-私有配置,其中,负载均衡器和 EC2 实例在同一公有子网中运行。

例 .ebextensions/vpc.config – 公有-公有
option_settings: aws:ec2:vpc: VPCId: vpc-087a68c03b9c50c84 AssociatePublicIpAddress: 'true' ELBScheme: public ELBSubnets: subnet-0fe6b36bcb0ffc462,subnet-032fe3068297ac5b2 Subnets: subnet-0fe6b36bcb0ffc462,subnet-032fe3068297ac5b2