

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

# 使用 Amazon VPC 为 Auto Scaling 实例提供网络连接
<a name="asg-in-vpc"></a>

Amazon Virtual Private Cloud（亚马逊 VPC）是一项服务，可让您在您定义的逻辑隔离的虚拟网络中启动 Auto Scaling 组等 AWS 资源。

Amazon VPC 中的子网是可用区的一个部分，由 VPC 的 IP 地址范围段定义。您可以根据您的安全和运行需求，使用子网对您的实例进行分组。子网完全位于其最初创建时所在的可用区内。在子网中启动 Auto Scaling 实例。

要支持 Internet 与您的子网中的实例之间的通信，您必须创建一个 Internet 网关并将其附加到您的 VPC。通过使用互联网网关，您的子网中的资源可以通过 Amazon EC2 网络边界连接到互联网。如果一个子网的流量被路由到 Internet 网关，这个子网便是*公有子网*。如果子网的流量不路由到 Internet 网关，则子网称为*私有* 子网。请将公有子网用于必须连接到 Internet 的资源，并将私有子网用于不需要连接到 Internet 的资源。有关向 VPC 中的实例授予互联网访问的更多信息，请参阅 *Amazon VPC 用户指南*中的[访问互联网](https://docs.aws.amazon.com/vpc/latest/userguide/how-it-works.html#what-is-connectivity)。

**Topics**
+ [默认 VPC](#as-defaultVPC)
+ [非默认 VPC](#as-nondefaultVPC)
+ [选择 VPC 子网时的注意事项](#as-vpc-considerations)
+ [VPC 中的 IP 寻址](#as-vpc-ipaddress)
+ [VPC 中的网络接口](#as-vpc-network-interfaces)
+ [实例部署租期](#as-vpc-tenancy)
+ [AWS Outposts](#auto-scaling-outposts)
+ [更多可供学习的资源 VPCs](#auto-scaling-resources-about-vpcs)

## 默认 VPC
<a name="as-defaultVPC"></a>

如果您是在 2013 年 12 月 4 日 AWS 账户 之后创建的，或者您要在新的中创建 Auto Scaling 组 AWS 区域，我们会为您创建一个默认 VPC。默认 VPC 随每个可用区中的默认子网提供。如果您有默认 VPC，则在默认情况下，将在默认 VPC 中创建 Auto Scaling 组。

您可以 VPCs 在 Amazon VPC 控制台的我的[ VPCs 页面上查看您](https://console.aws.amazon.com/vpc/home?/#vpcs)的。

有关默认 VPC 的更多信息，请参阅 *Amazon VPC 用户指南 VPCs*中的[默认](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html)。

## 非默认 VPC
<a name="as-nondefaultVPC"></a>

您可以前往[中的 VPC 控制面板页面 AWS 管理控制台 并选择创建 VPC](https://console.aws.amazon.com/vpc/home?/#vpcs)，选择**创建更多 VPC**。 VPCs 

有关更多信息，请参阅*[《Amazon VPC 用户指南》](https://docs.aws.amazon.com/vpc/latest/userguide/)*。

**注意**  
VPC 跨越其 AWS 区域中的所有可用区。向 VPC 添加子网时，请选择多个可用区以确保在这些子网中托管的资源具有高可用性。可用区是 AWS 区域中一个或多个具有冗余电源、网络和连接的离散数据中心。可用区可为生产级应用程序提供高可用性、容错能力和可扩展性。

## 选择 VPC 子网时的注意事项
<a name="as-vpc-considerations"></a>

在为自动扩缩组选择 VPC 子网时，请注意以下事项：
+ 如果您要将 Elastic Load Balancing 负载均衡器附加到 Auto Scaling 组，则可以在公有或私有子网中启动实例。但是，只能在公有子网中创建负载均衡器。
+ 如果您直接通过 SSH 访问 Auto Scaling 实例，则只能在公有子网中启动实例。
+ 如果您使用 AWS Systems Manager 会话管理器访问无入口 Auto Scaling 实例，则这些实例可以在公有或私有子网中启动。
+ 如果您使用的是私有子网，则可以使用公有 NAT 网关允许 Auto Scaling 实例访问互联网。
+ 预设情况下，默认 VPC 中的默认子网为公有子网。

## VPC 中的 IP 寻址
<a name="as-vpc-ipaddress"></a>

在 VPC 中启动 Auto Scaling 实例时，您的实例将从分配启动实例的子网 CIDR 范围自动分配私有 IP 地址。这样，这些实例就能够与 VPC 中的其他实例通信。

您可以配置启动模板或启动配置，为您的实例分配公有 IPv4地址。为您的实例分配公有 IP 地址使它们能够与互联网或其他 AWS 服务进行通信。

当您在配置为自动分配 IPv6 地址的子网中启动实例时，它们会同时接收 IPv4 和 IPv6 地址。否则，他们只会收到 IPv4 地址。有关更多信息，请参阅 *Amazon EC2 用户指南*中的[IPv6地址](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html#ipv6-addressing)。

有关为您的 VPC 或子网指定 CIDR 范围的更多信息，请参阅 [Amazon VPC 用户指南](https://docs.aws.amazon.com/vpc/latest/userguide/)。

当您使用指定了其他网络接口的启动模板时，Amazon EC2 Auto Scaling 可以在实例启动时自动分配其他私有 IP 地址。每个网络接口都将从启动实例的子网的 CIDR 范围中获得单个私有 IP 地址。在这种情况下，系统无法再为主网络接口自动分配公共 IPv4 地址。除非您将可用的弹性 IP IPv4 地址关联到 Auto Scaling 实例，否则您将无法通过公共地址连接到您的实例。

## VPC 中的网络接口
<a name="as-vpc-network-interfaces"></a>

VPC 中的每个实例具有一个默认网络接口（主网络接口）。您无法从实例断开主网络接口。您可以创建其他网络接口并将其挂载至您的 VPC 中的任何实例。您可以挂载的网络接口数因实例类型而有所差异。

使用启动模板启动实例时，您可以指定其他网络接口。但是，启动具有多个网络接口的 Auto Scaling 实例会自动在与实例相同的子网中创建每个接口。这是因为 Amazon EC2 Auto Scaling 会忽略启动模板中定义的子网，而不是 Auto Scaling 组中指定的子网。有关更多信息，请参阅[为自动扩缩组创建启动模板](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html)。

如果创建来自同一子网的两个或多个网络接口或将其连接到一个实例，可能会遇到非对称路由等联网问题，尤其是使用非 Amazon Linux 变体的实例。如果需要此类配置，则必须在操作系统中配置辅助网络接口。有关示例，请参阅[如何使我的辅助网络接口在我的 Ubuntu EC2 实例中运行？](https://repost.aws/knowledge-center/ec2-ubuntu-secondary-network-interface) 在 AWS 知识中心中。

## 实例部署租期
<a name="as-vpc-tenancy"></a>

预设情况下，VPC 中的所有实例将作为共享租期实例运行。Amazon EC2 Auto Scaling 还支持专用实例和专用主机。有关更多信息，请参阅 [使用高级设置创建启动模板](advanced-settings-for-your-launch-template.md)。

## AWS Outposts
<a name="auto-scaling-outposts"></a>

AWS Outposts 使用可在 AWS 该区域访问的 VPC 组件（包括互联网网关、虚拟私有网关、Amazon VPC 传输网关和 VPC 终端节点）将 Amazon VPC 从一个区域扩展到前哨站。Outpost 位于该区域内的一个可用区中，是该可用区的延伸，让您可以用来实现弹性。

有关更多信息，请参阅 [AWS Outposts 《用户指南》](https://docs.aws.amazon.com/outposts/latest/userguide/)。

有关如何部署自动扩缩组来服务从 Outpost 中的应用程序负载均衡器发出的流量的示例，请参阅以下博客文章[在 AWS Outposts上配置应用程序负载均衡器](https://aws.amazon.com/blogs/networking-and-content-delivery/configuring-an-application-load-balancer-on-aws-outposts/)。

## 更多可供学习的资源 VPCs
<a name="auto-scaling-resources-about-vpcs"></a>

使用以下主题了解有关 VPCs 和子网的更多信息。
+ VPC 中的私有子网
  + [示例：在私有子网中部署服务器并且具有 NAT 中的 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-example-private-subnets-nat.html)
  + [NAT 网关](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)
+ VPC 中的公有子网
  + [示例：用于测试环境的 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-example-dev-test.html)
  + [示例：用于 Web 和数据库服务器的 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-example-web-database-servers.html)
+ Application Load Balancer 的子网
  + [您的负载均衡器的子网](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html#subnets-load-balancer)
+ 一般 VPC 信息
  + [Amazon VPC User Guide](https://docs.aws.amazon.com/vpc/latest/userguide/)
  + [ VPCs 使用 VPC 对等互连进行连接](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-peering.html)
  + [弹性网络接口](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)
  + [使用 VPC 终端节点建立私有连接](ec2-auto-scaling-vpc-endpoints.md)