

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

# 对向 Amazon EC2 传送数据的联系人进行故障排除
<a name="troubleshooting-contact"></a>

如果您无法成功完成AWS Ground Station联系，则需要验证您的 Amazon EC2 实例是否正在运行，验证您的数据流终端节点应用程序是否正在运行，并验证您的数据流终端节点应用程序的流配置是否正确。

**注意**  
 DataDefender (DDX) 是目前支持的数据流端点应用程序的示例AWS Ground Station

 **先决条件** 

以下过程假定您已经设置了一个 EC2 instance 实例。要在中设置 Amazon EC2 实例AWS Ground Station，请参阅[入门](https://docs.aws.amazon.com/ground-station/latest/ug/getting-started.html)。

## 步骤 1：验证您的 EC2 实例是否正在运行
<a name="verify-that-your-ec2-instance-is-running"></a>

以下过程说明如何在控制台中找到您的 Amazon EC2 实例，并在该实例未运行时将其启动。

1. 找到用于您正在进行故障排除的联系的 Amazon EC2 实例。使用以下步骤：

   1. 在**CloudFormation**控制面板中，选择包含您的 Amazon EC2 实例的堆栈。

   1. 选择**资源**选项卡，然后在**逻辑 ID** 列中找到您的 Amazon EC2 实例。在**状态**列中验证实例是否已创建。

   1. 在**物理 ID** 列中，选择 Amazon EC2 实例的链接。这将带您到 Amazon EC2 管理控制台。

1. 在 Amazon EC2 管理控制台中，确保您的亚马逊 EC2 **实例状态处于***运行*状态。

1. 如果您的实例正在运行，请继续执行下一步。如果您的实例没有运行，请使用以下步骤启动实例：

   1. 选择 Amazon EC2 实例后，依次选择**操作 > 实例状态 > 启动**。

## 步骤 2：确定使用的数据流应用程序的类型
<a name="branch-based-on-dataflow-type"></a>

如果您使用**AWS Ground Station代理**进行数据传输，请重定向至 “[故障排除AWS Ground Station代理](https://docs.aws.amazon.com/ground-station/latest/ug/troubleshooting-agent.html)” 部分。否则，如果您使用的是 **DataDefender (DDX)** 应用程序，请继续。[步骤 3：验证数据流应用程序是否正在运行](#verify-that-dataflow-application-is-running)

## 步骤 3：验证数据流应用程序是否正在运行
<a name="verify-that-dataflow-application-is-running"></a>

验证状态 DataDefender 需要您连接到 Amazon EC2 中的实例。有关连接到您的实例的更多详细信息，请参阅 [Connect 到您的 Linux 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html)。

 以下过程提供了在 SSH 客户端中使用命令进行故障排除的步骤。

1. 打开终端或命令提示符，然后使用 SSH 连接到您的 Amazon EC2 实例。转发远程主机的端口 80 以查看 DataDefender Web 用户界面。以下命令演示了如何使用 SSH 通过启用了端口转发的堡垒机连接到 Amazon EC2 实例。
**注意**  
您必须将 <SSH KEY>、<BASTION HOST> 和 <HOST> 替换为特定的 SSH 密钥、堡垒主机名和 Amazon EC2 实例主机名。

   **对于 Windows：**

   ```
   ssh -L 8080:localhost:80 -o ProxyCommand="C:\Windows\System32\OpenSSH\ssh.exe -o \"ForwardAgent yes\" -W %h:%p -i \"<SSH KEY>\" ec2-user@<BASTION HOST>" -i "<SSH KEY>" ec2-user@<HOST>
   ```

   **适用于 Mac**

   ```
   ssh -L 8080:localhost:80 -o ProxyCommand="ssh -A -o 'ForwardAgent yes' -W %h:%p -i <SSH KEY> ec2-user@<BASTION HOST>" -i <SSH  KEY> ec2-user@<HOST>
   ```

1. 通过对输出 DataDefender 中名为 ddx 的正在运行的进程执行 greping（检查）来验证（也称为 DDX）是否正在运行。下面提供了针对正在运行的进程和成功的示例输出的 grep（检查）命令。

   ```
   [ec2-user@Receiver-Instance ~]$ ps –ef | grep ddx
             Rtlogic   4977      1 10 Oct16 ?        2-00:22:14 /opt/rtlogic/ddx/bin/ddx –m/opt/rtlogic/ddx/modules –p/opt/rtlogic/ddx/plugins –c/opt/rtlogic/ddx/bin/ddx.xml –umask=077 –daemon –f installed=true –f security=true –f enable HttpsForwarding=true
             Ec2-user 18787 18657  0 16:51 pts/0      00:00:00 grep –color=auto ddx
   ```

    如果 DataDefender 正在运行，请跳至 “[步骤 4：验证您的数据流应用程序流是否已配置](#verify-that-your-dataflow-application-stream-is-configured)否则”，继续下一步。

1. 开始 DataDefender 使用下面的命令。

   ```
   sudo systemctl start rtlogic-ddx
   ```

   如果在使用命令后 DataDefender 正在运行，请跳至[步骤 4：验证您的数据流应用程序流是否已配置](#verify-that-your-dataflow-application-stream-is-configured)。否则，请继续下一步。

1. 使用以下命令检查以下文件，以查看安装和配置时是否存在任何错误 DataDefender。

   ```
   cat /var/log/user-data.log
             cat /opt/aws/groundstation/.startup.out
   ```
**注意**  
检查这些文件时发现的一个常见问题是，您的 Amazon EC2 实例所在的 Amazon VPC 无法访问 Amazon S3 来下载安装文件。如果您在日志中发现这是问题所在，请检查您的 EC2 实例的 Amazon VPC 和安全组设置，确保它们不会阻止对 Amazon S3 的访问。

   如果在检查您 DataDefender 的 Amazon VPC 设置后正在运行，请继续[步骤 4：验证您的数据流应用程序流是否已配置](#verify-that-your-dataflow-application-stream-is-configured)。如果问题仍然存在，请[联系 AWS Support](https://aws.amazon.com/support/createCase)，并发送包含问题描述的日志文件。

## 步骤 4：验证您的数据流应用程序流是否已配置
<a name="verify-that-your-dataflow-application-stream-is-configured"></a>

1. 在网络浏览器中，通过在地址栏中输入以下地址来访问您的 DataDefender 网络用户界面：*localhost: 8080。*然后按 **Enter**。

1. 在**DataDefender**仪表板上，选择 “**转到详细信息**”。

1. 从流列表中选择您的流，然后选择**编辑流**。

1. 在**流向导**对话框中，执行以下操作：

   1. 在**广域网传输**窗格中，确保将**流方向**选为**广域网到局域网**。

   1. 在**端口**框中，确保您为数据流端点组选择的 WAN 端口已存在。默认情况下，此端口为 55888。然后选择**下一步**。

       ![Interface for configuring WAN communication settings.](http://docs.aws.amazon.com/zh_cn/ground-station/latest/ug/images/troubleshooting-3.5.b.png) 

   1. 在**本地终端节点**窗格中，确保*端口*框中存在有效端口。默认情况下，此端口为 50000。从AWS Ground Station服务收到数据后 DataDefender ，您将在此端口上接收数据。然后选择**下一步**。

       ![Interface for configuring DataDefender to communicate with a local endpoint.](http://docs.aws.amazon.com/zh_cn/ground-station/latest/ug/images/troubleshooting-3.5.d.png) 

   1. 如果您更改了任何值，请通过其余菜单选择**下一步**。另外，您也可以取消**流向导**菜单。

现在，您已确保您的 Amazon EC2 实例 DataDefender 均处于运行状态，并且配置正确，可以从中接收数据AWS Ground Station。继续[步骤 5：确保您的接收器实例子网中有足够的可用的 IP 地址](#verify-that-you-have-enough-available-addresses-in-your-subnets)。

## 步骤 5：确保您的接收器实例子网中有足够的可用的 IP 地址
<a name="verify-that-you-have-enough-available-addresses-in-your-subnets"></a>

以下过程说明如何在控制台中查找 Amazon EC2 接收器实例中可用 IP 地址的数量。

1. 对于用于该联系的每个 Amazon EC2 接收器实例，您正在进行故障排除。使用以下步骤：

   1. 在**CloudFormation**控制面板中，选择包含您的 Amazon EC2 实例的堆栈。

   1. 选择**资源**选项卡，然后在**逻辑 ID** 列中找到您的 Amazon EC2 实例。在**状态**列中验证实例是否已创建。

   1. 在**物理 ID** 列中，选择 Amazon EC2 实例的链接。这将带您到 Amazon EC2 管理控制台。

1. 在 Amazon EC2 管理控制台中，找到并单击您的 Amazon EC2 接收器实例的**实例摘要**中的**子网 ID** 链接。这将带您进入相应的 Amazon VPC 管理控制台。

1. 在 Amazon VPC 管理控制台中选择匹配的子网，然后查看子网的**详细信息**以了解**可用 IPv4 地址**。如果这个数字不如使用此 Amazon EC2 接收器实例的数据流终端节点那么多，请执行以下操作：

   1. 更新CloudFormation模板的相应子网**CidrBlock**以使其大小正确。有关子网大小的更多详细信息，请参阅[子网 CIDR 块](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-sizing.html)。

   1. 使用更新的CloudFormation模板重新部署堆栈。

如果您仍然遇到问题，[请联系 AWS Support](https://aws.amazon.com/support/createCase)。