This post will take you through the installation and configuration of an Infiniband card on a server running Red Hat Enterprise Linux 5.4. These steps are applicable to any version of Red Hat 5, and will probably work with version 6 as well. It has been surprisingly hard to find all of these steps in one document.
Required packages
openib-1.4.1-6.el5.noarch
libibverbs-1.1.3-2.el5.x86_64
libnes-0.9.0-2.el5.x86_64
libibumad-1.3.3-1.el5.x86_64
opensm-libs-3.3.3-2.el5.x86_64
swig-1.3.29-2.el5.x86_64
ibutils-libs-1.2-11.1.el5.x86_64
ibutils-1.2-11.1.el5.x86_64
(provides ibdiagnet and others)
opensm-3.3.3-2.el5.x86_64
libibmad-1.3.3-1.el5.x86_64
infiniband-diags-1.5.3-1.el5.x86_64
(provides handy tools like ibstat and ibstatus)
libibverbs-utils-1.1.3-2.el5.x86_64
(provides handy tools ibv_devinfo and ibv_devices)
libibverbs-devel-1.1.3-2.el5.x86_64
libibverbs-1.1.3-2.el5.x86_64
libnes-0.9.0-2.el5.x86_64
libibumad-1.3.3-1.el5.x86_64
opensm-libs-3.3.3-2.el5.x86_64
swig-1.3.29-2.el5.x86_64
ibutils-libs-1.2-11.1.el5.x86_64
ibutils-1.2-11.1.el5.x86_64
(provides ibdiagnet and others)
opensm-3.3.3-2.el5.x86_64
libibmad-1.3.3-1.el5.x86_64
infiniband-diags-1.5.3-1.el5.x86_64
(provides handy tools like ibstat and ibstatus)
libibverbs-utils-1.1.3-2.el5.x86_64
(provides handy tools ibv_devinfo and ibv_devices)
libibverbs-devel-1.1.3-2.el5.x86_64
Hardware
First, make sure your hardware is working correctly:
Make sure the card shows up! If not, there is basic hardware problem. Try re-seating the card or moving it to another PCI slot.
Kernel driver
If you have installed the openib package, the Infiniband kernel module should be installed. Reboot the system and look at the kernel boot messages for a good clue to which driver you need:
I need the mthca driver, so I use modprobe to load the kernel module:
Note that even though the correct driver was mentioned in the boot messages, the module is NOT automatically installed. I added this module to the /etc/modules file so that it will be automatically loaded at boot. Now, check the module:
Once the kernel driver is loaded, you should see a directory under /sys/class/infiniband:
User-space driver
Okay, that’s working, but ibv_devices and ibv_devinfo still report:
Now install the appropriate driver for the user space:
Check again:
If you still get the error
the root cause might be that you need to load the correct driver:
TCP over Infiniband
Following the Red Hat documentation, create a device configuration file called
/etc/sysconfig/network-scripts/ifcfg-ib0
Make sure to set the right IP address for YOUR configuration: (EDIT: Removed TYPE parameter)
DEVICE=ib0 BOOTPROTO=none ONBOOT=yes IPADDR=172.21.102.2 NETMASK=255.255.0.0
Now you should be able to ping the Infiniband interface (assuming the cable is plugged in to a working fabric):
Enable connected mode
Edit: 21 Sept 2013
By default, RedHat does not enable “connected mode” on Infiniband. Enabling connected mode can substantially speed up IP-over-IB transport. Add the following line to the config file you created in the previous step
CONNECTED_MODE=Yes
and restart Infiniband.
No comments:
Post a Comment