在执行预检查步骤时,NSX Network Detection and Response 功能激活向导报告错误。

问题

NSX Network Detection and Response 激活向导执行预检查,以验证 NSX Advanced Threat Prevention 云服务与运行 NSX Application Platform 的 Kubernetes 集群之间的连接。将在 NSX Network Detection and Response 激活向导上显示遇到的任何错误。如果激活向导在预检查步骤期间报告错误,将阻止激活 NSX Network Detection and Response 功能,并且激活按钮保持变灰状态。

如果激活预检查失败,您可能会遇到以下几个错误。
  • 云区域 API 返回无效数据 (数据缺失或无效)。(Cloud regions APIs returned invalid data (missing or invalid data).)
  • 连接云 API 以验证 NSX 许可证失败 (Contacting cloud API for validating the NSX license failed)
  • NSX 安装没有所需的许可证。(The NSX Installation does not have the required license.)

原因

预检查步骤验证从运行 NSX Application Platform 的 Kubernetes 集群到您选择的 NSX Advanced Threat Prevention 云区域的连接。预检查步骤还会验证授权您使用以执行 NSX Network Detection and Response 功能的可用 NSX Data Center 许可证。如果连接预检查失败,部署向导将无法验证许可证资格。

解决方案

  1. 如果 NSX Manager 设备配置为使用 Web 代理进行 Internet 连接,请确保正确配置了该 Web 代理,并且可以从用于 NSX Application Platform 的 Kubernetes 集群中运行的工作负载访问该代理。
  2. 确保正确部署了 NSX Application Platform,并且它在系统 > NSX Application Platform UI 页面上报告为稳定
  3. 部署预检查最多可能需要 30 分钟的时间,以部署和验证 NSX Advanced Threat Prevention 云可访问性和 NSX Data Center 许可证资格。等待预检查项目完成,并验证每一行的结果。
    1. 对于标记为失败的任何项目,请指向该图标以查看详细信息。
    2. 确保满足作为失败一部分描述的许可证要求。
    3. 如果错误表明出现连接错误,请确保 NSX Application Platform 可以与 Internet 进行通信。
  4. 如果预检查失败未提供有关失败的信息,请收集额外的信息。
    1. 收集 NSX Application Platform 支持包,并检查名称以 nsx-ndr-precheck 开头的任何 Kubernetes Pod 的日志。
    2. 或者,也可以使用以下步骤在 NSX Manager 设备上以交互方式查询日志。
      1. root 身份登录到 NSX Manager 设备。
      2. 使用以下命令为任何后续的 helmkubectl 调用标记 Kubernetes 配置。
        export KUBECONFIG=/config/vmware/napps/.kube/config
      3. 通过使用以下命令,确保成功部署了 NSX Network Detection and Response 预检查 Helm Chart。
        helm --namespace nsxi-platform list --all --filter 'nsx-ndr-precheck'
        验证 STATUS 属性是否显示为 deployed
      4. 通过使用以下命令,检查已部署的任何预检查 Pod 的事件。
        kubectl --namespace nsxi-platform describe pod --selector='app.kubernetes.io/instance=nsx-ndr-precheck'
        Events 部分提供预检查作业的状态以及与这些作业关联的任何操作。
      5. 要检查已部署的任何预检查 Pod 的日志,请使用以下命令。
        kubectl --namespace nsxi-platform get pods --selector='app.kubernetes.io/instance=nsx-ndr-precheck' -o wide
        对于以 RUNNINGCOMPLETED 状态列出的每个 Pod,请使用以下命令查看日志。
        kubectl --namespace nsxi-platform logs --container=main <pod-name>
  5. 在解决报告的错误后,再次尝试激活 NSX Network Detection and Response 功能。