

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

# 将 Amazon VPC 端点服务与 Device Farm 结合使用 – 传统做法（不建议）
<a name="amazon-vpc-endpoints"></a>

**警告**  
我们强烈建议使用[本](https://docs.aws.amazon.com/devicefarm/latest/developerguide/vpc-eni.html)页面描述的 VPC-ENI 连接进行私有端点连接，因为 VPCE 现在被视为一项传统功能。与 VPCE 连接方法相比，VPC-ENI 提供了更大的灵活性、更简单的配置、更具成本效益，并且所需的维护开销大幅降低。

**注意**  
只有配置了私有设备的客户才支持将 Amazon VPC 终端节点服务与 Device Farm 结合使用。要启用您的 AWS 账户以将此功能与私有设备结合使用，请[联系我们](mailto:aws-devicefarm-support@amazon.com)。

Amazon Virtual Private Cloud（亚马逊 VPC）是一项 AWS 服务，可用于在您定义的虚拟网络中启动 AWS 资源。借助 VPC，您可以控制您的网络设置，如 IP 地址范围、子网、路由表和网络网关。

如果您使用 Amazon VPC 在美国西部（俄勒冈）(`us-west-2`) AWS 地区托管私有应用程序，则可以在您的 VPC 和 Device Farm 之间建立私有连接。借助此连接，您可以使用 Device Farm 测试私有应用程序，而无需通过公共 Internet 公开它们。要使您的 AWS 账户能够在私人设备上使用此功能，[请联系我们](mailto:aws-devicefarm-support@amazon.com)。

要将您的 VPC 中的资源连接到 Device Farm，您可以使用 Amazon VPC 控制台创建 VPC 终端节点服务。利用此终端节点服务，您可以通过 VPC 终端节点将您的 VPC 中的资源提供给 Device Farm。该终端节点服务提供了到 Device Farm 的可靠、可扩展的连接，无需 Internet 网关、网络地址转换 (NAT) 实例或 VPN 连接。有关更多信息，请参阅*AWS PrivateLink 指南*[中的 VPC 终端节点服务 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/endpoint-service.html)。

**重要**  
Device Farm VPC 终端节点功能可帮助您使用连接将 VPC 中的私有内部服务安全地 AWS PrivateLink 连接到 Device Farm 公有 VPC。虽然连接是安全且私有的，但这种安全性取决于您保护对 AWS 凭证的保护。如果您的 AWS 凭据遭到泄露，攻击者可以访问您的服务数据或将其暴露给外界。

在 Amazon VPC 中创建 VPC 终端节点服务后，您可以使用 Device Farm 控制台在 Device Farm 中创建 VPC 终端节点配置。本主题介绍如何在 Device Farm 中创建 Amazon VPC 连接和 VPC 终端节点配置。

## 开始前的准备工作
<a name="device-farm-vpce-configuration-before-you-begin"></a>

以下信息适用于美国西部（俄勒冈州）(`us-west-2`) 区域的 Amazon VPC 用户，其子网位于以下每个可用区：us-west-2a、us-west-2b 和 us-west-2c。

Device Farm 对于其可结合使用的 VPC 终端节点服务具有其他要求。当您创建和配置 VPC 终端节点服务以使用 Device Farm 时，请确保选择满足以下要求的选项：
+ 服务的可用区必须包括 us-west-2a、us-west-2b 和 us-west-2c。VPC 终端节点服务的可用区由与终端节点服务关联的网络负载均衡器确定。如果您的 VPC 终端节点服务不显示所有这三个可用区，您必须重新创建网络负载均衡器来启用这三个区域，然后将网络负载均衡器与您的终端节点服务重新关联。
+ 终端节点服务的白名单委托人必须包含 Device Farm VPC 终端节点的 Amazon 资源名称（ARN）。在创建终端节点服务后，将 Device Farm VPC 终端节点服务 ARN 添加到您的白名单，以向 Device Farm 提供访问您的 VPC 终端节点服务的权限。要获取 Device Farm VPC 终端节点服务 ARN，请[联系我们](mailto:aws-devicefarm-support@amazon.com)。

此外，如果您在创建 VPC 终端节点服务时将**需要接受**设置保持开启状态，则必须手动接受 Device Farm 向终端节点服务发送的每个连接请求。要更改此设备，请在 Amazon VPC 控制台上选择终端节点服务，选择**操作**，然后选择**修改终端节点接受设置**。有关更多信息，请参阅《AWS PrivateLink 指南》**中的[更改负载均衡器和接受设置](https://docs.aws.amazon.com/vpc/latest/privatelink/modify-endpoint-service.html)。

下一部分将说明如何创建满足这些要求的 Amazon VPC 终端节点服务。

## 步骤 1：创建网络负载均衡器
<a name="device-farm-create-nlb"></a>

在您的 VPC 和 Device Farm 之间建立私有连接的第一步是创建网络负载均衡器，以便将请求路由到目标组。

------
#### [ New console ]

**要使用新控制台创建网络负载均衡器**

1. 打开亚马逊弹性计算云 (Amazon EC2) 控制台，网址为。[https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2)

1. 在导航窗格中的**负载均衡**下，选择**负载均衡器**。

1. 选择**创建负载均衡器**。

1. 在**网络负载均衡器**下，选择**创建**。

1. 在**创建网络负载均衡器**页面的**基本配置**下，执行以下操作：

   1. 输入负载均衡器**名称**。

   1. 对于**方案**，选择**内部**。

1. 在 **网络映射**下，请执行以下操作：

   1. 为您的目标组选择 **VPC**。

   1. 选择以下**映射**：
      + `us-west-2a`
      + `us-west-2b`
      + `us-west-2c`

1. 在**侦听器和路由**下，使用**协议**和**端口**选项来选择目标组。
**注意**  
默认情况下，跨可用性区域负载均衡处于禁用状态。  
由于负载均衡器使用可用区 `us-west-2a`、`us-west-2b` 和 `us-west-2c`，它要求在每个可用区中注册目标，或者，如果您在少于所有三个区域中注册目标，则要求您启用跨区域负载均衡。否则，负载均衡器可能无法按预期运行。

1. 选择**创建负载均衡器**。

------
#### [ Old console ]

**要使用旧控制台创建网络负载均衡器**

1. 打开亚马逊弹性计算云 (Amazon EC2) 控制台，网址为。[https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2)

1. 在导航窗格中的**负载均衡**下，选择**负载均衡器**。

1. 选择**创建负载均衡器**。

1. 在**网络负载均衡器**下，选择**创建**。

1. 在**配置负载均衡器**页面的**基本配置**下，执行以下操作：

   1. 输入负载均衡器**名称**。

   1. 对于**方案**，选择**内部**。

1. 在**侦听器**下，选择目标组正在使用的**协议**和**端口**。

1. 在**可用区**下，请执行以下操作：

   1. 为您的目标组选择 **VPC**。

   1. 选择以下**可用区**：
      + `us-west-2a`
      + `us-west-2b`
      + `us-west-2c`

   1. 选择**下一步：配置安全设置**。

1. （可选）配置您的安全设置，然后选择**下一步：配置路由**。

1. 在**配置路由**页面上，执行以下操作：

   1. 对于**目标组**，选择**现有目标组**。

   1. 对于**名称**，选择您的目标组。

   1. 选择**下一步：注册目标**。

1. 在**注册目标**页面上，查看您的目标，然后选择**下一步：查看**。
**注意**  
默认情况下，跨可用性区域负载均衡处于禁用状态。  
由于负载均衡器使用可用区 `us-west-2a`、`us-west-2b` 和 `us-west-2c`，它要求在每个可用区中注册目标，或者，如果您在少于所有三个区域中注册目标，则要求您启用跨区域负载均衡。否则，负载均衡器可能无法按预期运行。

1. 检查您的负载均衡器配置，然后选择**创建**。

------

## 步骤 2：创建 Amazon VPC 终端节点服务
<a name="device-farm-vpce-configuration-vpc-endpoint"></a>

创建网络负载均衡器后，使用 Amazon VPC 控制台在您的 VPC 中创建终端节点服务。

1. 打开位于 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 的 Amazon VPC 控制台。

1. 在**按区域列出的资源** 下，选择 **终端节点服务**。

1. 选择**创建终端节点服务**。

1. 请执行以下操作之一：
   + 如果您已有一个希望终端节点服务使用的网络负载均衡器，请在**可用的负载均衡器**下选择它，然后继续执行步骤 5。
   + 如果您尚未创建网络负载均衡器，请选择**创建新的负载均衡器**。打开 Amazon EC2 控制台。按照[创建网络负载均衡器](#device-farm-create-nlb)中的步骤进行操作（从步骤 3 开始），然后在 Amazon VPC 控制台中继续执行这些步骤。

   

1. 对于**包括的可用区**，验证 `us-west-2a`、`us-west-2b` 和 `us-west-2c` 是否显示在列表中。

1. 如果您不想手动接受或拒绝发送到终端节点服务的每个连接请求，请在**其他设置**下，清除**需要接受**。如果清除此复选框，则终端节点服务将自动接受其收到的每个连接请求。

1. 选择**创建**。

1. 在新的终端节点服务中，选择**允许主体**。

1. [联系我们](mailto:aws-devicefarm-support@amazon.com)以获取要添加到终端节点服务允许列表的 Device Farm VPC 终端节点的 ARN，然后将该服务 ARN 添加到服务的允许列表中。

1. 在终端节点服务的**详细信息**选项卡上，记下服务的名称（**服务名称**）。您将在下一步中创建 VPC 终端节点配置时需要此名称。

您的 VPC 终端节点服务现已准备好用于 Device Farm。

## 步骤 3：在 Device Farm 中创建 VPC 终端节点配置
<a name="device-farm-edit-devicefarm-settings-vpc-endpoint"></a>

在 Amazon VPC 中创建终端节点服务后，您可以在 Device Farm 中创建 Amazon VPC 终端节点配置。

1. 登录 DeviceFarm 控制台，网址为 [https://console.aws.amazon.com/devicef](https://console.aws.amazon.com/devicefarm) arm。

1. 在导航窗格中，选择**移动设备测试**，然后选择**私有设备**。

1. 选择 **VPCE 配置**。

1. 选择**创建 VPCE 配置**。

1. 在**创建新的 VPCE 配置**下，输入 VPC 终端节点配置的**名称**。

1. 在 **VPCE 服务名称**中，输入您在 Amazon VPC 控制台中记下的 Amazon VPC 终端节点服务的名称（**服务名称**）。名称的形式类似于 `com.amazonaws.vpce.us-west-2.vpce-svc-id`。

1. 输入要测试的应用程序的**服务 DNS 名称**（例如，`devicefarm.com`）。请不要在服务 DNS 名称之前指定 `http` 或 `https`。

   域名不可通过公共 Internet 访问。此外，与您的 VPC 终端节点服务相对应的此新域名由 Amazon Route 53 生成且仅在您的 Device Farm 会话中供您使用。

1. 选择**保存**。  
![\[包含示例数据的创建新的 VPC 配置页面\]](http://docs.aws.amazon.com/zh_cn/devicefarm/latest/developerguide/images/aws-device-farm-create-vpce-configuration.png)

## 步骤 4：创建测试运行
<a name="device-farm-create-test-run"></a>

保存 VPC 终端节点配置后，您可以使用该配置来创建测试运行或远程访问会话。有关更多信息，请参阅 [在 Device Farm 中创建测试运行](how-to-create-test-run.md)或 [创建会话](how-to-create-session.md)。