NSX Edge 传输节点与控制器的连接已断开。

问题

原因

当与管理器的连接处于“已启动”状态,但与控制器的连接处于“关闭”状态时,会出现此问题。Admin 命令“get managers”会返回活动管理器节点,而命令“get controllers”不会为该传输节点返回任何活动控制器,该传输节点处于“已连接”状态和/或会话状态也为“已启动”。

解决方案

  1. 使用 Admin CLI get maintenance-mode 或运行 API GET api/v1/transport-nodes/<tn-uuid>| state | status 来验证传输节点是否未处于 NSX 维护模式。
  2. 通过运行 API GET /api/v1/configs/management 验证是否设置了 FQDN 属性(传输节点使用此属性与 NSX Manager/控制器进行通信),并查看 publish_FQDNS 的值。
  3. 如果设置了 FQDN,请验证控制器 FQDN 是否可访问以及传输节点是否正在使用 FQDN 值与控制器进行通信,方法是先对控制器 FQDN 运行 ICMP ping 操作,然后运行 Admin CLI get controllers 以验证是否正确填充了控制器 FQDN 值。
  4. 按照上述的节点代理故障排除步骤,验证节点代理服务是否正在运行。
  5. 如果 Edge 传输节点处于 NSX 维护模式,请运行 Admin CLI set maintenance-mode false 或 API POST /api/v1/transport-nodes/<node-id>?action=exit_maintenance_mode 以使该节点退出 NSX 维护模式
  6. 如果设置了 FQDN 且 ICMP ping 适用于控制器 FQDN,请尝试取消设置 FQDN 属性并重新设置该属性,方法是运行 API PUT /api/v1/configs/management 并将 publish_fqdns 的值设置为 false,然后再次运行该 API 并将值设置为 true。
  7. 通过运行 get edge diagnosis config 验证 NSX Edge 节点上是否正在运行代理服务。如果任何服务显示为“失败”,请通过运行 Admin CLI start service <service-name> 或 root CLI etc/init.d/<service-name> start 来重新启动服务。