主要内容

本页采用了机器翻译。点击此处可查看英文原文。

解决 MATLAB 作业调度器集群中的通信问题

问题

为了保持集群配置的正常运行,MATLAB® 作业调度器的作业管理器必须解析 MATLAB 工作单元所发布的主机名。同样,所有 MATLAB 工作单元和客户端都必须解析作业管理器节点发布的主机名。

如果某个工作单元无法连接到其作业管理器,或者某个客户端会话无法验证使用该调度器的配置文件,则表明集群节点之间存在通信问题。

可能的解决方案

使用命令行接口进行调查

请确保所有节点对各自的 IP 解析结果达成一致。验证节点的主机名在该节点自身以及其他节点的视角下是否保持一致。例如,如果 nodeB 上的某个进程无法连接到 nodeA 上的某个进程,请分别在本地和从 nodeB 检查 nodeA 的主机名。主机名必须一致。

如果各节点能够相互识别,那么您就可以使用 nodestatus 命令诊断它们的进程之间存在的问题。使用此命令可确定本地主机上正在运行哪些 MATLAB Parallel Server™ 进程,以及哪些进程可从远程主机访问。

例如,如果 nodeA 上的某个工作单元无法在 nodeB 上的作业管理器处注册,请在两个节点上都运行相同的 nodestatus 命令,以验证 nodeA 能否正确识别 nodeB 及其上的所有 MATLAB Parallel Server 进程。在 nodeB 上,于 Linux® 或 Windows® 命令行窗口中,运行以下命令。matlabroot 是 MATLAB 的安装文件夹。

cd matlabroot\toolbox\parallel\bin
nodestatus -remotehost nodeB
然后,在 nodeA 上运行相同的命令。
cd matlabroot\toolbox\parallel\bin
nodestatus -remotehost nodeB
这两组命令的输出结果应一致,列出的作业管理器和工作单元应相同。如果输出结果不一致,请在 hostA 上再次运行 nodestatus 命令,并设置更高的信息级别,以便从 nodeA 的角度获取有关 nodeB 上运行的进程的更详细信息。
nodestatus -remotehost nodeB -infolevel 3

使用管理中心工具进行排查

您可以使用“管理中心”工具诊断某些通信问题。如需进一步了解“管理中心”工具,请参阅 启动管理中心

如果无法通过指定主机名将节点添加到“管理中心”列表中,您可以改用其 IP 地址。有关详细信息,请参阅添加主机

要测试 MATLAB 作业调度器节点、工作单元以及运行管理中心的节点之间的通信,请在管理中心工具中选择 Test Connectivity 以打开“连接性测试”对话框。这些测试用于验证节点能否相互识别,并确保其进程能够进行通信。如果任何通信测试失败,管理中心会提供相关信息,供您用于诊断问题。有关详细信息,请参阅在管理中心测试 MATLAB 作业调度器集群连接

另请参阅

主题