

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

# AWS Device Farm 中跨 AWS 区域的 Amazon VPC
<a name="amazon-vpc-cross-region"></a>

Device Farm 服务仅位于美国西部（俄勒冈州）(`us-west-2`) 区域。您可以使用亚马逊虚拟私有云（亚马逊 VPC）通过 Device Farm 访问其他 AWS 区域的亚马逊虚拟私有云中的服务。如果 Device Farm 和您的服务位于同一区域，请参阅 [将 Amazon VPC 端点服务与 Device Farm 结合使用 – 传统做法（不建议）](amazon-vpc-endpoints.md)。

有两种方法可以访问您位于其他区域的私有服务。如果您的服务位于另一个非 `us-west-2` 的区域，则您可以使用 VPC 对等连接将该区域的 VPC 对等连接到与 `us-west-2` 中的 Device Farm 连接的另一个 VPC。但是，如果您在多个区域提供服务，Transit Gateway 将允许您通过更简单的网络配置访问这些服务。

有关更多信息，请参阅《Amazon VPC 对等连接指南》**中的 [VPC 对等方案](https://docs.aws.amazon.com/vpc/latest/peering/peering-scenarios.html)。

## AWS Device Farm VPCs 中不同区域的 VPC 对等互连概述
<a name="device-farm-vpce-configuration-cross-region-vpc-overview"></a>

只要不同区域 VPCs 中的任意两个区域具有不同的、不重叠的 CIDR 块，您就可以对其进行对等。这可确保所有私有 IP 地址都是唯一的，并且允许中的所有资源互相寻址，而无需进行任何形式的网络地址转换 (NAT)。 VPCs有关 CIDR 表示法的更多信息，请参阅 [RFC 4632](https://tools.ietf.org/html/rfc4632)。

本主题包含一个跨区域示例场景，其中，Device Farm（称作 *VPC-1*）位于美国西部（俄勒冈州） (`us-west-2`) 区域。本示例中的第二个 VPC（称作 *VPC-2*）位于另一个区域。


**Device Farm VPC 跨区域示例**  

| VPC 组件 | VPC-1 | VPC-2 | 
| --- | --- | --- | 
| CIDR | 10.0.0.0/16 | 172.16.0.0/16 | 

**重要**  
在两者之间建立对等连接 VPCs 可以改变的安全状态。 VPCs此外，向其路由表中添加新条目可能会更改路由表中资源的安全状况 VPCs。您有责任以满足组织安全要求的方式实施这些配置。有关更多信息，请参阅[责任共担模式](https://aws.amazon.com/compliance/shared-responsibility-model/)。

下图显示了示例中的组件以及这些组件之间的交互。

![\[跨 AWS 区域使用私有设备。\]](http://docs.aws.amazon.com/zh_cn/devicefarm/latest/developerguide/images/device-farm-vpc-across-region-vpn.png)


**Topics**
+ [AWS Device Farm VPCs 中不同区域的 VPC 对等互连概述](#device-farm-vpce-configuration-cross-region-vpc-overview)
+ [在 AWS Device Farm 中使用 Amazon VPC 的先决条件](#device-farm-vpce-configuration-cross-region-prerequisites)
+ [步骤 1：在 VPC-1 和 VPC-2 之间建立对等连接](#device-farm-vpce-configuration-cross-region-step1)
+ [步骤 2：更新 VPC-1 和 VPC-2 中的路由表](#device-farm-vpce-configuration-cross-region-step2)
+ [步骤 3：创建目标组](#device-farm-vpce-configuration-cross-region-step3)
+ [步骤 4：创建 Network Load Balancer](#device-farm-vpce-configuration-cross-region-step4)
+ [步骤 5：创建 VPC 端点服务以将您的 VPC 连接到 Device Farm](#device-farm-vpce-configuration-cross-region-step5)
+ [步骤 6：在 VPC 与 Device Farm 之间创建 VPC 端点配置](#device-farm-vpce-configuration-cross-region-step6)
+ [步骤 7：创建测试运行以使用 VPC 端点配置](#device-farm-vpce-configuration-cross-region-step7)
+ [使用 Transit Gateway 创建可扩展的网络](#device-farm-vpce-configuration-cross-region-transit-gateways)

## 在 AWS Device Farm 中使用 Amazon VPC 的先决条件
<a name="device-farm-vpce-configuration-cross-region-prerequisites"></a>

此示例要求以下内容：
+ 两个配置 VPCs 的子网包含不重叠的 CIDR 块。
+ *VPC-1* 必须位于 `us-west-2` 区域并且包含可用区 `us-west-2a`、`us-west-2b` 和 `us-west-2c` 的子网。

有关创建 VPCs 和配置子网的更多信息，请参阅 Amazon *VPC* 对等互[连指南中的使用 VPCs 和子网](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html)。

## 步骤 1：在 VPC-1 和 VPC-2 之间建立对等连接
<a name="device-farm-vpce-configuration-cross-region-step1"></a>

在 VPCs 包含不重叠的 CIDR 块的两者之间建立对等连接。为此，请参阅《Amazon VPC 对等连接指南》**中的[创建和接受 VPC 对等连接](https://docs.aws.amazon.com/vpc/latest/peering/create-vpc-peering-connection.html)。使用本主题的跨区域场景和《Amazon VPC 对等连接指南》**，创建了以下对等连接配置示例：

**名称**  
`Device-Farm-Peering-Connection-1`

**VPC ID（请求者）**  
`vpc-0987654321gfedcba (VPC-2)`

**Account**  
`My account`

**区域**  
`US West (Oregon) (us-west-2)`

**VPC ID（接受者）**  
`vpc-1234567890abcdefg (VPC-1)`

**注意**  
在建立任何新的对等连接时，请务必查阅您的 VPC 对等连接配额。有关更多信息，请参阅《Amazon VPC 对等连接指南》**中的 [Amazon VPC 配额](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-peering)。

## 步骤 2：更新 VPC-1 和 VPC-2 中的路由表
<a name="device-farm-vpce-configuration-cross-region-step2"></a>

设置对等连接后，您必须在两者之间建立目的地路由， VPCs 以便在两者之间传输数据。要建立此路由，您可以手动更新 *VPC-1* 的路由表以指向 *VPC-2* 的子网，反之亦然。为此，请参阅《Amazon VPC 对等连接指南》**中的[为 VPC 对等连接更新路由表](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-routing.html)。使用本主题的跨区域场景和《Amazon VPC 对等连接指南》**，创建了以下示例路由表配置：


**Device Farm VPC 路由表示例**  

| VPC 组件 | VPC-1 | VPC-2 | 
| --- | --- | --- | 
| 路由表 ID | rtb-1234567890abcdefg | rtb-0987654321gfedcba | 
| 本地地址范围 | 10.0.0.0/16 | 172.16.0.0/16 | 
| 目标地址范围 | 172.16.0.0/16 | 10.0.0.0/16 | 

## 步骤 3：创建目标组
<a name="device-farm-vpce-configuration-cross-region-step3"></a>

设置目标路由后，您可以在 *VPC-1* 中配置网络负载均衡器，将请求路由到 *VPC-2*。

网络负载均衡器必须首先包含一个目标组，该目标组包含请求发送到的 IP 地址。

**要创建目标组**

1. 确定要在 *VPC-2* 中定位的服务的 IP 地址。
   + 这些 IP 地址必须是对等连接中使用的子网的成员。
   + 目标 IP 地址必须是不可变的静态地址。如果您的服务具有动态 IP 地址，请考虑将静态资源（例如网络负载均衡器）作为目标，然后让该静态资源将请求路由到您的真实目标。
**注意**  
**如果您的目标是一个或多个独立的亚马逊弹性计算云 (Amazon EC2) 实例，请打开[https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2)位于的亚马逊 EC2 控制台，然后选择实例。**
如果您的目标是 Amazon EC2 实例的 Amazon EC2 Auto Scaling 组，则必须将 Amazon EC2 Auto Scaling 组与网络负载均衡器关联起来。有关更多信息，请参阅《Amazon EC2 Auto Scaling 用户指南》**中的[将负载均衡器挂接到自动扩缩组](https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html)。  
然后，您可以在上打开 Amazon EC2 控制台 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2)，然后选择**网络接口**。从那里您可以查看每个**可用区**中网络负载均衡器的每个网络接口的 IP 地址。

1. 在 *VPC-1* 中创建目标组。有关更多信息，请参阅《Network Load Balancer 用户指南》**中的[为 Network Load Balancer 创建目标组](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-target-group.html)。

   不同 VPC 中服务的目标组需要以下配置：
   + 在 **选择目标类型**中，选择 **IP 地址**。
   + 对于 **VPC**，请选择将托管负载均衡器的 VPC。对于主题示例，这将是 *VPC-1*。
   + 在**注册目标**页面上，为 *VPC-2* 中的每个 IP 地址注册一个目标。

     对于**网络**，选择**其他私有 IP 地址**。

     对于**可用区**，请在 *VPC-1* 中选择所需的区域。

     对于**IPv4 地址**，请选择 *VPC-2* IP 地址。

     对于**端口**，请选择您的端口。
   + 选择**在下面以待注册的形式添加**。指定完地址后，选择**注册待注册目标**。

使用本主题的跨区域场景和*网络负载均衡器用户指南*，在目标组配置中使用了以下值：

**Target type**  
`IP addresses`

**目标组名称**  
`my-target-group`

**协议/端口**  
`TCP : 80`

**VPC**  
`vpc-1234567890abcdefg (VPC-1)`

**Network**  
`Other private IP address`

**可用区**  
`all`

**IPv4 address**  
`172.16.100.60`

**端口**  
`80`

## 步骤 4：创建 Network Load Balancer
<a name="device-farm-vpce-configuration-cross-region-step4"></a>

使用[步骤 3](#device-farm-vpce-configuration-cross-region-step3) 中描述的目标组创建网络负载均衡器。为此，请参阅[创建 Network Load Balancer](amazon-vpc-endpoints.md#device-farm-create-nlb)。

使用本主题的跨区域场景，在网络负载均衡器配置示例中使用了以下值：

**负载均衡器名称**  
`my-nlb`

**Scheme**  
`Internal`

**VPC**  
`vpc-1234567890abcdefg (VPC-1)`

**映射**  
`us-west-2a` - `subnet-4i23iuufkdiufsloi`  
`us-west-2b` - `subnet-7x989pkjj78nmn23j`  
`us-west-2c` - `subnet-0231ndmas12bnnsds`

**协议/端口**  
`TCP : 80`

**目标组**  
`my-target-group`

## 步骤 5：创建 VPC 端点服务以将您的 VPC 连接到 Device Farm
<a name="device-farm-vpce-configuration-cross-region-step5"></a>

您可以使用网络负载均衡器创建 VPC 终端节点服务。通过此 VPC 终端节点服务，Device Farm 无需任何其他基础设施（例如互联网网关、NAT 实例或 VPN 连接）即可连接到 *VPC-2* 中的服务。

为此，请参阅[在 Device Farm 中创建 VPC 终端节点配置](amazon-vpc-endpoints.md#device-farm-vpce-configuration-vpc-endpoint)。

## 步骤 6：在 VPC 与 Device Farm 之间创建 VPC 端点配置
<a name="device-farm-vpce-configuration-cross-region-step6"></a>

您现在可以在 VPC 和 Device Farm 之间建立私有连接。您可以使用 Device Farm 来测试私有服务，而无需通过公共互联网公开这些服务。为此，请参阅[在 Device Farm 中创建 VPC 终端节点配置](amazon-vpc-endpoints.md#device-farm-edit-devicefarm-settings-vpc-endpoint)。

使用本主题的跨区域场景，在 VPC 终端节点配置示例中使用了以下值：

**名称**  
`My VPCE Configuration`

**VPCE 服务名称**  
`com.amazonaws.vpce.us-west-2.vpce-svc-1234567890abcdefg`

**服务 DNS 名称**  
`devicefarm.com`

## 步骤 7：创建测试运行以使用 VPC 端点配置
<a name="device-farm-vpce-configuration-cross-region-step7"></a>

您可以创建使用[步骤 6](#device-farm-vpce-configuration-cross-region-step6) 中所述的 VPC 终端节点配置的测试运行。有关更多信息，请参阅 [在 Device Farm 中创建测试运行](how-to-create-test-run.md)或 [创建会话](how-to-create-session.md)。

## 使用 Transit Gateway 创建可扩展的网络
<a name="device-farm-vpce-configuration-cross-region-transit-gateways"></a>

要使用两个以上的网络创建可扩展网络 VPCs，您可以使用 Transit Gateway 充当网络传输中心，将您的网络 VPCs 和本地网络互连。要将与 Device Farm 位于同一区域的 VPC 配置为使用 Transit Gateway，您可以按照 [Amazon VPC endpoint services with Device Farm](https://docs.aws.amazon.com/devicefarm/latest/developerguide/amazon-vpc-endpoints.html) 指南，根据其私有 IP 地址将资源定位到其他区域。

有关中转网关的更多信息，请参阅《Amazon VPC Transit Gateway 指南》**中的[什么是中转网关？](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html)。