如何确定 Infiniband 子网管理器在哪个交换机上运行?

如何确定 Infiniband 子网管理器在哪个交换机上运行?

我最近接手了一个包含多个交换机的 Infiniband 网络,我知道其中一个交换机正在运行子网管理器。其余的交换机据称已关闭该功能,或从未启用过。问题是,我不知道是哪一个...

我想用在我的几台基础设施服务器上运行的 OpenSM 替换交换机子网管理器。除了单独登录每台交换机之外,还有什么方法可以确定哪台交换机正在运行 SM?

答案1

如果您的基础设施服务器可以运行 OpenSM,它们可能也安装了 OFED 堆栈实用程序。如果命令可用,ibstat将告诉您 SM 的 LID。然后使用 LIDsmpquery ND -L <LID>获取运行 SM 的节点的节点描述。

答案2

如果你的系统和包中安装了 OFED,infiniband-diags你可以使用命令信息网列出 Infiniband 网络中正在运行的子网管理器:

~ # sminfo 
sminfo: sm lid 18 sm guid 0x0000000, activity count 55554951 priority 0 state 3 SMINFO_MASTER      

它将列出该节点和主子网管理器的所有已知子网管理器。

答案3

如果您通过 IP 地址联系到您的经理,您可以查看交换机的 ARP/MAC 表来查找哪个 IP 地址与您的交换机相对应。

答案4

首先获取当前 SM 管理器信息,然后通过 LID(网络上的本地 ID)或 GUID(全局唯一 ID)sminfo查询节点描述saquery

# sminfo
sminfo: sm lid 8 sm guid 0x24be05ffff8a5f71, activity count 53314 priority 14 state 3 SMINFO_MASTER
# saquery -O 8
login2 HCA-1
-OR
# saquery -U 0x24be05ffff8a5f71
login2 HCA-1

如果节点描述没有太多说明,可以调查 InfiniBand 网络ibnetdiscover | less -S并查找 GUID 和它所连接的交换机/端口。

要获取结构上配置的所有子网管理器的列表,请运行ibdiagnet并检查 ibdiagnet2.sm 文件(应将完整路径报告给标准输出)。

相关内容