07-IB业务配置举例
本章节下载: 07-IB业务配置举例 (3.05 MB)
目 录
本文档介绍H3C UniServer B16000刀箱服务器InfiniBand(下文简称IB)业务的典型配置举例。
本节介绍各个典型组网中需要使用的硬件,如表1-1所示。如果一个单元格内有多种型号,表示这些型号的硬件均适用于该配置举例。
配置举例 |
适用硬件型号 |
|||
网卡 |
互联模块 |
外部交换机 |
后端存储 |
|
单刀箱IB组网配置举例 |
IB1040i |
BX1020B |
- |
- |
双刀箱IB直连组网配置举例 |
IB1040i |
BX1020B |
- |
- |
本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。
本文档假设您已了解IB的相关知识,掌握H3C刀片服务器和互联模块的基本使用方法。
以下配置举例中,重点介绍刀箱侧的配置过程,外部网络的配置内容建议根据实际需求进行调整。
如图2-1所示,B16000刀箱安装了3台刀片服务器和1块互联模块,3台刀片服务器分别安装在刀箱前部的1号、3号和5号槽位,互联模块安装在刀箱背部的1号槽位,每台刀片服务器的Mezz1槽位均安装了Mezz网卡。
本例中刀片服务器使用H3C UniServer B5700 G3,并安装RedHat 7.5操作系统;Mezz网卡使用IB1040i-Mb-2*100G(下文简称IB1040i);互联模块使用BX1020B。
现希望实现如下需求:
在Blade-5上运行子网管理器(Subnet Manager,下文简称SM)。通过SM管理整个IB集群(IB集群是指本网络中的所有可管理的IB Mezz网卡和IB互联模块的集合),实现各刀片服务器之间通过IB网络互通,且数据交互延迟尽可能低。
图2-1 单刀箱IB组网图
如果部署IB设备时采用脚本批量下发命令,可以将刀片服务器安装在刀箱的同一侧,这样所有的IB Mezz网卡都使用Port1端口与IB互联模块相连,从而简化脚本。
· 缺省情况下,刀片服务器主机名采用默认设置,为了在后续步骤中区分各个刀片服务器,建议修改系统的主机名称。本例中的命名规则为:具有管理功能的服务器命名为“mgnt”,其余服务器依次命名为“testnodeX0Y”,其中“X”表示刀箱编号,“Y”表示刀片服务器槽位号,如“testnode101”表示Enclosure-1中的Blade-1。
· 为了保证服务器之间数据交互延迟最短,建议根据网络拓扑切换路由算法,本例中建议使用ftree算法,以达到带宽的负载均衡且不容易发生死锁。
本举例是在IB1040i Mezz网卡的16.25.8000版本和BX1020B互联模块的27.2000.1600版本上进行配置和验证的。
IB互联模块无管理功能,待刀片服务器上的操作系统配置完毕后便可以正常使用。本举例中无其他特殊需求,所以互联模块仅需安装到位即可。
(1) 为所有刀片服务器修改主机名称,以方便在系统中识别各个刀片服务器。如图2-2所示,执行“hostnamectl --static set-hostname <hostname>”命令设置主机名称,重启后生效。本例中,将具有管理功能的服务器命名为“mgnt”,其余服务器依次命名为“testnode101”,“testnode102”,以此类推。
(2) 为所有刀片服务器更新IB1040i Mezz网卡的驱动,操作步骤参见4.1 如何安装IB网卡驱动。
(3) 在SM节点(Blade-5)上安装MFT工具,操作步骤参见4.2 如何安装MFT工具。
IB Mezz网卡驱动中集成了子网管理器(下文简称OpenSM),安装驱动后,OpenSM已默认安装。执行以下操作配置OpenSM。
(1) 如图2-3所示,执行“/etc/init.d/opensmd start”命令,启用OpenSM。
(2) 如图2-4所示,执行“opensm --create-config /etc/opensm/opensm.conf”命令创建opensm.conf配置文件,此文件用于修改SM的路由算法。
(3) OpenSM默认的路由算法是minhop,当网络使用Fat-tree拓扑时,建议将算法修改为ftree。请执行以下操作修改路由算法:
a. 执行“vi opensm.conf”命令编辑此配置文件;
b. 找到routing_engine字段,在其后添加路由算法ftree,如图2-5所示;
c. 输入“:wq”保存并退出。
(4) 执行“/etc/init.d/opensm restart”命令,完成配置并重启SM服务。
(5) 执行“chkconfig opensmd on”命令,设置子网管理器开机时自启动。
图2-6 设置子网管理器自启动
(1) 如图2-7所示,子网管理器设置成功后,执行“mst ib add”命令,自动将集群中的所有IB设备加入子网管理器中统一管理。
图2-7 把IB设备加入集群
(2) 如图2-8所示,执行“mst status –v”命令查询当前集群中所有的IB设备(IB交换模块和IB Mezz网卡),确认IB设备都已经加入集群。
为了实现刀片服务器之间互相通信,需要为服务器的IB端口配置IP地址,配置方法和以太网端口的IP地址配置方法一样,具体步骤如下:
(1) 如图2-9所示,在SM节点的/etc/sysconfig/network-scripts/路径下,执行“vi ifcfg-ib0”命令编辑IB端口的网络配置文件,配置IP地址和子网掩码,然后保存并退出。
图2-9 设置IB网络参数
(2) 执行“systemctl restart network.service”命令,重启网络。
(3) 执行“ifconfig ib0”命令,确认IB端口的详细信息,如图2-10所示。
图2-10 查看IB端口状态
(4) 参考上述步骤完成其他2个刀片服务器的IB网络配置。
在SM节点上执行“ibstat”命令,检查IB端口的状态和速率。如图2-11所示,可以看到IB网卡的mlx5_0端口(图2-1中的Port1)状态为Active,协商速率为100Gpbs。
图2-11 查看IB Mezz网卡端口状态
在SM节点上执行“iblinkinfo”命令,检查网络拓扑信息是否与组网一致。如图2-12所示,可以观察到所有刀片服务器(CA)和交换模块(Switch)的端口连接情况,包括:刀片服务器槽位号、端口速率和状态、对端设备名称等信息。关于本命令的详细说明,请参见《BX1020B IB交换模块 配置指导》。
在SM节点上执行“ibdiagnet”命令检查光纤物理链路的健康情况,可以查看线缆是否有损坏或连接不稳定等情况。如图2-13所示,Errors和Warnings计数为0表示物理链路正常;如果存在错误信息,可以在/var/tmp/ibdiagnet/路径查看log日志。
完成网络链路检查后,执行以下操作可以检查任意两台刀片服务器之间的IB网络带宽。
(1) 任意选择两台刀片服务器,一台作为Server端,另一台作为Client端。
(2) 在Server端执行命令“ib_write_bw -d mlx5_0 -F -R --report_gbits --run_infinitely”。
(3) 在Client端执行命令“ib_write_bw -d mlx5_0 ip_address -F -R --report_gbits --run_infinitely”,其中ip_address表示Server端的系统IP地址。
(4) 如图2-14所示,可以看到带宽实测速率达到最大带宽的96%以上,表示性能正常。
如图3-1所示,2台B16000刀箱通过IB链路互联,其中每台刀箱内安装了3台刀片服务器和1块互联模块,3台刀片服务器分别安装在刀箱前部的1号、3号和5号槽位,互联模块安装在刀箱背部的1号槽位,每台刀片服务器的Mezz1槽位均安装了Mezz网卡。2台刀箱中的互联模块分别通过各自的外部端口相互连接。
本例中刀片服务器使用H3C UniServer B5700 G3,并安装RedHat 7.5操作系统;Mezz网卡使用IB1040i-Mb-2*100G(下文简称IB1040i);互联模块使用BX1020B。
现希望实现如下需求:
在Enclosure-1的Blade-5上运行子网管理器(Subnet Manager,下文简称SM)。通过SM管理整个IB集群(IB集群是指本网络中的所有可管理的IB Mezz网卡和IB互联模块的集合),实现各刀片服务器之间通过IB网络互通,且数据交互延迟尽可能低。
图3-1 双刀箱IB直连组网图
· IB互联模块提供多个外部端口,且它们之间没有差异,刀箱可以使用任意外部端口与其他IB设备互连。本例中每台刀箱内部安装了3台刀片服务器,所以每块互联模块各选3个外部端口与对端互连,以确保有足够的上行带宽。
· 如果部署IB设备时采用脚本批量下发命令,可以将刀片服务器安装在刀箱的同一侧,这样所有的IB Mezz网卡都使用Port1端口与IB互联模块相连,从而简化脚本。
· 缺省情况下,刀片服务器主机名采用默认设置,为了在后续步骤中区分各个刀片服务器,建议修改系统的主机名称。本例中的命名规则为:具有管理功能的服务器命名为“mgnt”,其余服务器依次命名为“testnode101”,“testnode102”,以此类推。
· 为了保证服务器之间数据交互延迟最短,建议根据网络拓扑切换路由算法,本例中建议使用ftree算法,以达到带宽的负载均衡且不容易发生死锁。
本举例是在IB1040i Mezz网卡的16.25.8000版本和BX1020B互联模块的27.2000.1600版本上进行配置和验证的。
IB互联模块无管理功能,待刀片服务器上的操作系统配置完毕后便可以正常使用。本举例中无其他特殊需求,所以互联模块仅需安装到位即可。
(1) 为所有刀片服务器修改主机名称,以方便在系统中识别各个刀片服务器。如图3-2所示,执行“hostnamectl --static set-hostname <hostname>”命令设置主机名称,重启后生效。本例中,将具有管理功能的服务器命名为“mgnt”,其余服务器依次命名为“testnodeX0Y”,其中“X”表示刀箱编号,“Y”表示刀片服务器槽位号,如“testnode101”表示Enclosure-1中的Blade-1,以此类推。
(2) 为所有刀片服务器更新IB1040i Mezz网卡的驱动,操作步骤参见4.1 如何安装IB网卡驱动。
(3) 在SM节点(Blade-5)上安装MFT工具,操作步骤参见4.2 如何安装MFT工具。
IB Mezz网卡驱动中集成了子网管理器(下文简称OpenSM),安装驱动后,OpenSM已默认安装。执行以下操作配置OpenSM。
(1) 如图3-3所示,执行“/etc/init.d/opensmd start”命令,启用OpenSM。
(2) 如图3-4所示,执行“opensm --create-config /etc/opensm/opensm.conf”命令创建opensm.conf配置文件,此文件用于修改SM的路由算法。
(3) OpenSM默认的路由算法是minhop,当网络使用Fat-tree拓扑时,建议将算法修改为ftree。请执行以下操作修改路由算法:
a. 执行“vi opensm.conf”命令编辑此配置文件;
b. 找到routing_engine字段,在其后添加路由算法ftree,如图3-5所示;
c. 输入“:wq”保存并退出。
(4) 执行“/etc/init.d/opensm restart”命令,完成配置并重启SM服务。
(5) 执行“chkconfig opensmd on”命令,设置子网管理器开机时自启动。
图3-6 设置子网管理器自启动
(1) 如图3-7所示,子网管理器设置成功后,执行“mst ib add”命令,自动将集群中的所有IB设备加入子网管理器中统一管理。
图3-7 把IB设备加入集群
(2) 如图3-8所示,执行“mst status –v”命令查询当前集群中所有的IB设备(IB交换模块和IB Mezz网卡),确认IB设备都已经加入集群。
为了实现刀片服务器之间互相通信,需要为服务器的IB端口配置IP地址,配置方法和以太网端口的IP地址配置方法一样,具体步骤如下:
(1) 如图2-9所示,在SM节点的/etc/sysconfig/network-scripts/路径下,执行“vi ifcfg-ib0”命令编辑IB端口的网络配置文件,配置IP地址和子网掩码,然后保存并退出。
图3-9 设置IB网络参数
(2) 执行“systemctl restart network.service”命令,重启网络。
(3) 执行“ifconfig ib0”命令,确认IB端口的详细信息,如图3-10所示。
图3-10 查看IB端口状态
(4) 参考上述步骤完成其他5个刀片服务器的IB网络配置。
在SM节点上执行“ibstat”命令,检查IB端口的状态和速率。如图3-11所示,可以看到IB网卡的mlx5_0端口(图2-1中的Port1)状态为Active,协商速率为100Gpbs。
图3-11 查看IB Mezz网卡端口状态
在SM节点上执行“iblinkinfo”命令,检查网络拓扑信息是否与组网一致。如图3-12和图3-13所示,可以观察到所有刀片服务器(CA)和交换模块(Switch)的端口连接情况,包括:刀片服务器槽位号、端口速率和状态、对端设备名称等信息。关于本命令的详细说明,请参见《BX1020B IB交换模块 配置指导》。
在SM节点上执行“ibdiagnet”命令检查光纤物理链路的健康情况,可以查看线缆是否有损坏或连接不稳定等情况。如图3-14所示,Errors和Warnings计数为0表示物理链路正常;如果存在错误信息,可以在/var/tmp/ibdiagnet/路径查看log日志。
图3-15 检查光纤物理链路(2)
完成网络链路检查后,执行以下操作可以检查任意两台刀片服务器之间的IB网络带宽。
(1) 任意选择两台刀片服务器,一台作为Server端,另一台作为Client端。
(2) 在Server端执行命令“ib_write_bw -d mlx5_0 -F -R --report_gbits --run_infinitely”。
(3) 在Client端执行命令“ib_write_bw -d mlx5_0 ip_address -F -R --report_gbits --run_infinitely”,其中ip_address表示Server端的系统IP地址。
(4) 如图3-16所示,可以看到带宽实测速率达到最大带宽的96%以上,表示性能正常。
执行以下操作安装IB网卡驱动工具:
(1) 将IB网卡驱动文件拷贝到刀片服务器的操作系统下,本例中以/home路径举例。
图4-1 上传驱动程序
(2) 在当前/home路径下对IB网卡驱动文件进行解压:
参考命令:tar –xvf MLNX_OFED_LINUX-4.7-1.0.0.1-rhel7.5-x86_64.tgz
图4-2 解压驱动文件
(3) 进入MLNX_OFED_LINUX-4.7-1.0.0.1-rhel7.5-x86_64/目录下,执行命令:./mlnxofedinstall,进行IB网卡的驱动安装。
图4-3 安装驱动
(4) 驱动安装成功后,重启服务器。
图4-4 重启服务器
MFT是一套固件管理工具,用于生产标准化或定制化Mellanox固件镜像、查询固件信息、烧录固件镜像。
执行以下操作安装MFT工具:
(1) 将MFT工具文件拷贝到刀片服务器的操作系统下,本例中以/home/uis路径举例。
(2) 如图4-5所示,进入/home/uis路径,执行“tar -xvf mft-4.13.0-104-x86_64-rpm.tgz”命令解压IB通用的MFT工具包。
图4-5 解压MFT工具包
(3) 如图4-6所示,进入/home/uis/mft-4.13.0-104-x86_64-rpm路径,执行“./install.sh –oem”命令安装MFT工具。
(4) 如图4-7所示,执行“mst start”命令,运行MFT工具。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!