在多 NSX 实例环境中,只有部署了 NSX Edge 虚拟机的 NSX Manager 才能将其用于路由和 TEP 间通信。注册到同一 VMware vCenter 的任何其他 NSX Manager 都无法将其用于路由和 TEP 间通信。其他 NSX Manager 实例会将 NSX Edge 虚拟机视为常规虚拟机。此场景可能会在 NSX Edge 虚拟机上导致流量性能问题。

问题

在多 NSX 实例场景中,您具有以下配置:
  • NSX Manager-1 和 NSX Manager-2 注册到同一 VMware vCenter(计算管理器)。
  • NSX Manager-1 部署了 NSX Edge 虚拟机。
  • NSX Manager-2 准备了 ESXi 主机。
  • vSphere Web Client,通过 vMotion 将 NSX Edge 虚拟机迁移到由 NSX Manager-2 准备的 ESXi 主机。NSX Manager-2 未部署 NSX Edge 虚拟机。
  • NSX Manager-1 不会将 NSX Edge 识别为清单虚拟机。因此,NSX Manager-1 不会对其应用任何 DFW 规则。

NSX Edge 虚拟机移至新 ESXi 主机后:

  • NSX Manager-2 将 NSX Edge 分类为常规虚拟机,而不是 NSX Edge 虚拟机。如果配置了任何 DFW 规则,NSX Manager-2 会对 NSX Edge 虚拟机应用任何 DFW 规则。

    请参见示例输出:

    https://<NSX Manager-2>/api/v1/fabric/virtual-machines
    {
                “host_id”: “59ac4c38-56b1-4b82-a131-dd9ad119f53d”,
                “source”: {
                    “target_id”: “59ac4c38-56b1-4b82-a131-dd9ad119f53d”,
                    “target_display_name”: “10.172.17.133”,
                    “target_type”: “HostNode”,
                    “is_valid”: true
                },
               …..
                “type”: “REGULAR”,
                “guest_info”: {
                    “os_name”: “Ubuntu Linux (64-bit)“,
                    “computer_name”: “vm”
                },
                “resource_type”: “VirtualMachine”,
                “display_name”: “mgr2_edge1",
                “_last_sync_time”: 1663802733277
            },
    

原因

由于 NSX Manager-2 排除列表不会筛选掉 NSX Edge 虚拟机,因此它被视为常规虚拟机,而不是 NSX Edge 虚拟机。因此,为工作负载配置的 DFW 规则或任何第三方防火墙规则也会应用于 NSX Edge 虚拟机。此场景可能会导致流量中断。

解决方案

  1. 登录到 VMware vCenter,网址为 https://vCenter-Server-IP
  2. 由于 NSX Manager-2 将 NSX Edge 虚拟机视为常规虚拟机,因此,需创建 NS 组“Edge-VMs-From-Other-Managers”,并将 Edge 虚拟机添加到该 NS 组。
  3. 要标识 NSX Manager-1 中必须添加到 NSX Manager-2 上排除列表的 Edge 虚拟机,请执行以下步骤:
    1. 使用调用以下 API 后获取的 display_namehttps://<NSX Manager-1>/api/v1/transport-nodes?node_types=EdgeNode
    2. 将此名称与 NSX Manager-2 的 API 响应中的 display_name 匹配:https://<NSX Manager-2>/api/v1/fabric/virtual-machines
  4. 将 NS 组“Edge-VMs-From-Other-Managers”添加到 NSX Manager-2 上的 DFW 排除列表和 SI 排除列表。
  5. 验证 NSX Edge 虚拟机并将其从第三方防火墙中排除。
  6. 如果 Edge 虚拟机 ID 发生更改,请更新 NS 组。
  7. 删除 Edge 虚拟机之前,请从排除列表中移除该条目。
    注: NSX Edge-2 不支持 NSX Manager 虚拟机上的 TEP 间通信。