

AWS Application Discovery Service 不再向新客户开放。或者 AWS Transform ，使用提供类似功能的。有关更多信息，请参阅 App [AWS lication Discovery Service 可用性变更](https://docs.aws.amazon.com/application-discovery/latest/userguide/application-discovery-service-availability-change.html)。

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

# 对无代理收集器进行故障排除
<a name="agentless-collector-troubleshooting"></a>

本节包含的主题可以帮助您解决 Application Discovery Service 无代理收集器（无代理收集器）的已知问题。

**Topics**
+ [正在修复 `Unable to retrieve manifest or certificate file error`](#unable-to-retrieve-manifest-or-certificate-file)
+ [解决配置 WinRM 证书时的自签名认证问题](#agentless-collector-address-self-signed-certification-problems)
+ [修复安装过程中无法访问 AWS 的无代理收集器](#agentless-collector-fix-connector-cannot-reach-aws)
+ [修复连接到代理主机时的自签名认证问题](#agentless-collector-fix-self-signed-certification-problems)
+ [寻找不健康的收藏家](#agentless-collector-fixing-unhealthy-connectors)
+ [修复 IP 地址问题](#agentless-collector-vcenter-ip-issues)
+ [修复 vCenter 凭据问题](#agentless-collector-vcenter-credentials-issues)
+ [修复数据库和分析数据收集模块中的数据转发问题](#agentless-collector-database-analytics-forwarding-issues)
+ [修复数据库和分析数据收集模块中的连接问题](#agentless-collector-database-analytics-connection-issues)
+ [支持独立 ESX 主机](#agentless-collector-standalone-esx-host)
+ [就无代理 AWS 收集器问题联系 Support](#agentless-collector-support)

## 正在修复 `Unable to retrieve manifest or certificate file error`
<a name="unable-to-retrieve-manifest-or-certificate-file"></a>

如果您在尝试通过 vC VMware enter 用户界面中的 Amazon S3 网址部署 OVA 时收到此错误，请确保您的 vCenter 服务器满足以下要求：
+ VMware vCenter Server 版本 8.0 更新 1 或更高版本
+ VMware vCenter Server 7.0 更新 3q（ISO 版本 23788036）或更高版本

## 解决配置 WinRM 证书时的自签名认证问题
<a name="agentless-collector-address-self-signed-certification-problems"></a>

如果启用 WinRM 证书检查，则可能需要将自签名证书颁发机构导入无代理收集器。

**导入自签名证书颁发机构**

1. 在 vCent VMware er 中打开收集器的 VM Web 控制台，然后`ec2-user`使用密码登录`collector`，如下例所示。

   ```
   username: ec2-user
   password: collector
   ```

1. 确保用于签署 WinRM 证书的每个自签名 CA 证书都在目录下。`/etc/pki/ca-trust/source/anchors`例如：

   ```
   /etc/pki/ca-trust/source/anchors/https-winrm-ca-1.pem
   ```

1. 要安装新证书，请运行以下命令。

   ```
   sudo update-ca-trust
   ```

1. 运行以下命令重新启动无代理收集器

   ```
   sudo shutdown -r now
   ```

1. （可选）要验证证书是否已成功导入，可以运行以下命令。

   ```
   sudo trust list --filter=ca-anchors | less
   ```

## 修复安装过程中无法访问 AWS 的无代理收集器
<a name="agentless-collector-fix-connector-cannot-reach-aws"></a>

无代理收集器需要通过 TCP 端口 443 对多个域进行出站访问。 AWS 在控制台中配置 Agentless Collector 时，可能会收到以下错误消息。

**无法到达 AWS**  
AWS 无法到达。请验证网络设置。

出现此错误的原因是 Agentless Collector 尝试与该收集器在设置过程中需要与之通信的 AWS 域建立 HTTPS 连接失败。如果无法建立连接，则无代理收集器配置将失败。

**将连接修复到 AWS**

1. 请咨询您的 IT 管理员，了解贵公司的防火墙是否阻止了通过端口 443 向任何需要出站访问的 AWS 域名的出站流量。哪些 AWS 域名需要出站访问取决于您的主区域是美国西部（俄勒冈）区域、us-west-2 还是其他区域。

**如果您的 AWS 账户主区域为 us-west-2，则以下域名需要出站访问：**
   + `arsenal-discovery.us-west-2.amazonaws.com`
   + `migrationhub-config.us-west-2.amazonaws.com`
   + `api.ecr-public.us-east-1.amazonaws.com`
   + `public.ecr.aws`

**如果您的 AWS 账户主区域不是，则以下域名需要出站访问权限`us-west-2`：**
   + `arsenal-discovery.us-west-2.amazonaws.com`
   + `arsenal-discovery.your-home-region.amazonaws.com`
   + `migrationhub-config.us-west-2.amazonaws.com`
   + `api.ecr-public.us-east-1.amazonaws.com`
   + `public.ecr.aws`

   **如果您的防火墙阻止了对 Agentless Collector 需要与之通信的 AWS 域的出站访问，请在 “收集器配置” 下的 “**数据同步**” 部分中配置代理主机。**

1. 如果更新防火墙不能解决连接问题，请使用以下步骤确保收集器虚拟机具有与上一步中列出的域的出站网络连接。

   1. 从 v VMware Center 获取无代理收集器的 IP 地址。

   1. 打开收集器的 VM Web 控制台并**ec2-user**使用密码登录**collector**，如以下示例所示。

      ```
      username: ec2-user
      password: collector
      ```

   1. 通过在端口 443 上运行 telnet 来测试与所列域的连接，如以下示例所示。

      ```
      telnet migrationhub-config.us-west-2.amazonaws.com 443
      ```

1. 如果 telnet 无法解析域，请尝试[按照适用于 Amazon Linux 2 的说明](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-static-dns-ubuntu-debian/)配置静态 DNS 服务器。

1. 如果错误仍然存在，要获得更多支持，请参阅[就无代理 AWS 收集器问题联系 Support](#agentless-collector-support)。

## 修复连接到代理主机时的自签名认证问题
<a name="agentless-collector-fix-self-signed-certification-problems"></a>

如果通过 HTTPS 与可选提供的代理进行通信，并且该代理具有自签名证书，则可能需要提供证书。

1. 从 v VMware Center 获取无代理收集器的 IP 地址。

1. 打开收集器的 VM Web 控制台并`ec2-user`使用密码登录`collector`，如以下示例所示。

   ```
   username: ec2-user
   password: collector
   ```

1. 将与安全代理关联的证书正文（包括`-----BEGIN CERTIFICATE-----`和`-----END CERTIFICATE-----`）粘贴到以下文件中：

   ```
   /etc/pki/ca-trust/source/anchors/https-proxy-ca.pem
   ```

1. 要安装新证书，请运行以下命令：

   ```
   sudo update-ca-trust
   ```

1. 通过运行以下命令重新启动无代理收集器：

   ```
   sudo shutdown -r now
   ```

## 寻找不健康的收藏家
<a name="agentless-collector-fixing-unhealthy-connectors"></a>

每个收集器的状态信息可在 AWS Migration Hub （Migration Hub）控制台[的数据收集](https://console.aws.amazon.com/migrationhub/discover/datacollectors?type=connector)器页面上找到。您可以通过查找任何**状态为** “**需要关注**” 的收藏家来识别有问题的收藏家。

以下过程介绍如何访问无代理收集器控制台以识别运行状况问题。

**访问无代理收集器控制台**

1. 使用您的 AWS 账户，登录 AWS 管理控制台 并打开 Migration Hub 控制台，网址为[https://console.aws.amazon.com/migrationhub/](https://console.aws.amazon.com/migrationhub/)。

1. 在 Migration Hub 控制台导航窗格的 “**发现**” 下，选择 “**数据收集器**”。

1. 在 “**无代理收集器**” 选项卡中，记下状态为 “**需要**注意” 的每个连接器**的 IP 地址**。

1. 要打开无代理收集器控制台，请打开 Web 浏览器。然后在地址栏中键入以下 URL: **https://** *<ip\$1address>***/**，其中 *ip\$1addres* s 是运行状况不佳的收集器的 IP 地址。

1. 选择 “**登录**”，然后输入无代理收集器密码，该密码是在中配置收集器时设置的。[配置无代理收集器](agentless-collector-gs-configure.md)

1. **在 “**无代理收集器” 控制板页面上，在 “**数据收集**” 下，选择 vCent** er VMware 部分的 “**查看和编辑”**。**

1. 按照中的说明[编辑 VMware vCenter 凭证](agentless-collector-vcenter-edit.md)更正 URL 和凭证。

**更正运行状况问题后，收集器将重新建立与 vCenter Server 的连接，并且收集器的状态将更改为 “正在收集” 状态。**如果问题仍然存在，请参阅[就无代理 AWS 收集器问题联系 Support](#agentless-collector-support)。

收集器运行状况不佳的最常见原因是 IP 地址和凭据问题。 [修复 IP 地址问题](#agentless-collector-vcenter-ip-issues)并[修复 vCenter 凭据问题](#agentless-collector-vcenter-credentials-issues)可以帮助您解决这些问题并将收集器恢复到正常状态。

## 修复 IP 地址问题
<a name="agentless-collector-vcenter-ip-issues"></a>

如果收集器安装期间提供的 vCenter 端点格式错误、无效，或者 vCenter 服务器当前已关闭且无法访问，则收集器可能会进入不健康状态。在这种情况下，您将收到一条**连接错误**消息。

以下过程可以帮助您解决 IP 地址问题。

**修复收集器 IP 地址问题**

1. 从 v VMware Center 获取无代理收集器的 IP 地址。

1. 打开 Web 浏览器打开无代理收集器控制台，然后在地址栏中键入以下 URL：**https://***<ip\$1address>***/**，其中 *ip\$1addr* ess 是收集器来自的 IP 地址。[部署无代理收集器](agentless-collector-deploying.md#agentless-collector-gs-deploy)

1. 选择 “**登录**”，然后输入无代理收集器密码，该密码是在中配置收集器时设置的。[配置无代理收集器](agentless-collector-gs-configure.md)

1. **在 “**无代理收集器” 控制板页面上，在 “**数据收集**” 下，选择 vCent** er VMware 部分的 “**查看和编辑”**。**

1. **在**VMware 数据收集详细信息**页面的 “**已发现的 vCenter 服务器**” 下，记下 vCenter 列中的 IP 地址。**

1. 使用单独的命令行工具（如`ping`或）`traceroute`，验证关联的 vCenter 服务器是否处于活动状态，并且可以从收集器虚拟机访问 IP。
   + **如果 IP 地址不正确且 vCenter 服务处于活动状态，请在收集器控制台中更新 IP 地址，然后选择下一步。**
   + 如果 IP 地址正确但 vCenter 服务器处于非活动状态，请将其激活。
   + 如果 IP 地址正确且 vCenter 服务器处于活动状态，请检查它是否因防火墙问题而阻止入口网络连接。如果是，请更新您的防火墙设置以允许来自收集器虚拟机的传入连接。

## 修复 vCenter 凭据问题
<a name="agentless-collector-vcenter-credentials-issues"></a>

如果配置收集器时提供的 vCenter 用户凭据无效，或者没有 vCenter 读取和查看帐户权限，则收集器可能会进入不健康状态。

如果您遇到与 vCenter 凭据相关的问题，请检查并确保已为系统组设置了 vCenter 读取和查看权限。

有关编辑 vCenter 凭据的信息，请参阅。[编辑 VMware vCenter 凭证](agentless-collector-vcenter-edit.md)

## 修复数据库和分析数据收集模块中的数据转发问题
<a name="agentless-collector-database-analytics-forwarding-issues"></a>

Agentless Collector 中的数据库和分析数据收集模块的主页显示了访问 **DMS 和**访问**** S3 的连接状态。如果您看到 “**无法访问** **DMS**” 和 “**访问 S3**”，请配置数据转发。有关更多信息，请参阅 [配置数据转发](agentless-collector-gs-database-analytics-collection-prerequisites.md)。

如果您在配置数据转发后遇到此问题，请检查以确保您的数据收集模块可以访问互联网。然后，请确保您已将**DMSCollector策略**和 **FleetAdvisorS3Policy 策略**添加到您的 IAM 用户。有关更多信息，请参阅 [部署应用程序 Discovery Service 无代理收集器为无代理收集器创建 IAM 用户](agentless-collector-deploying.md#agentless-collector-gs-iam-user)。

如果您的数据收集模块无法连接 AWS，请提供对以下域的出站访问权限。
+ `dms.your-home-region.amazonaws.com`
+ `s3.amazonaws.com`

## 修复数据库和分析数据收集模块中的连接问题
<a name="agentless-collector-database-analytics-connection-issues"></a>

Agentless Collector 中的数据库和分析数据收集模块连接到您的 LDAP 服务器，以发现数据环境中的操作系统服务器。然后，数据收集模块连接到您的操作系统服务器以发现数据库和分析服务器。数据收集模块从这些数据库服务器收集容量和性能指标。如果您的数据收集模块无法连接到这些服务器，请验证您是否可以连接到您的服务器。

在以下示例中，用您的*replaceable*值替换值。
+ 要验证是否可以连接到 LDAP 服务器，请安装`ldap-util`软件包。为此，请运行以下命令。

  ```
  sudo apt-get install ldap-util
  ```

  然后运行以下命令。

  ```
  ldapsearch -x -D "CN=user,CN=Users,DC=example,DC=com" -w "password" -b "dc=example,dc=com" -h 
  ```
+ 要验证是否可以连接到 Linux 操作系统服务器，请使用以下命令。

  ```
  ssh -i C:\Users\user\private_key.pem -p 22 username@my-linux-host.domain.com
  ```

  在 Windows 中以管理员身份运行前面的示例。

  ```
  ssh username@my-linux-host.domain.com
  ```

  在 Linux 中运行前面的示例。
+ 要验证是否可以连接到 Windows 操作系统服务器，请使用以下命令。

  ```
  winrs -r:[hostname or ip] -u:username -p:password cmd
  ```

  在 Windows 中以管理员身份运行前面的示例。

  ```
  sudo apt install -y winrm
  winrm --user=username --password=password [http or https]://[hostname or ip]:[port] "[cmd.exe or any other CLI command]"
  ```

  在 Linux 中运行前面的示例。
+ 要验证是否可以连接到 SQL Server 数据库，请使用以下命令。

  ```
  sqlcmd -S [hostname or IP] -U username -P 'password'
  SELECT GETDATE() AS sysdate
  ```
+ 要验证是否可以连接到 MySQL 数据库，请使用以下命令。

  ```
  mysql -u username -p 'password' -h [hostname or IP] -P [port]
  SELECT NOW() FROM DUAL
  ```
+ 要验证是否可以连接到 Oracle 数据库，请使用以下命令。

  ```
  sqlplus username/password@[hostname or IP]:port/servicename
  SELECT SYSDATE FROM DUAL
  ```
+ 要验证您是否可以连接到 PostgreSQL 数据库，请使用以下命令。

  ```
  psql -U username -h [hostname or IP] -p port -d database
  SELECT CURRENT_TIMESTAMP AS sysdate
  ```

如果您无法连接到数据库和分析服务器，请确保提供所需的权限。有关更多信息，请参阅 [发现您的数据库服务器](agentless-collector-gs-database-analytics-collection-discovery.md)。

## 支持独立 ESX 主机
<a name="agentless-collector-standalone-esx-host"></a>

无代理收集器不支持独立的 ESX 主机。ESX 主机必须是 vCenter Server 实例的一部分。

## 就无代理 AWS 收集器问题联系 Support
<a name="agentless-collector-support"></a>

如果您在使用 Application Discovery Service 无代理收集器（无代理收集器）时遇到问题并需要帮助，请联系[AWS 支持](https://aws.amazon.com/contact-us/)部门。我们将与您联系，并可能要求您发送收集器日志。

**获取无代理收集器日志**

1. 从 v VMware Center 获取无代理收集器的 IP 地址。

1. 打开收集器的 VM Web 控制台并**ec2-user**使用密码登录**collector**，如以下示例所示。

   ```
   username: ec2-user
   password: collector
   ```

1. 使用以下命令导航到日志文件夹。

   ```
   cd /var/log/aws/collector
   ```

1. 使用以下命令压缩日志文件。

   ```
   sudo cp /local/agentless_collector/compose.log .
   docker inspect $(docker ps --format {{.Names}}) | sudo tee docker_inspect.log >/dev/null
   sudo tar czf logs_$(date '+%d-%m-%Y_%H.%M.%S').tar.gz --exclude='db.mv*' *
   ```

1. 从无代理收集器 VM 中复制日志文件。

   ```
   scp logs*.tar.gz targetuser@targetaddress
   ```

1. 将`tar.gz`文件交给 E AWS nterprise Support。