1、安装依赖包

yum install epel-release -y  yum install gcc gcc-c++ bc openssl-devel automake ncurses-devel libibverbs -y  yum install libibverbs-devel libibverbs-utils librdmacm librdmacm-devel librdmacm-utils perl-Switch elfutils-libelf-devel  -y

2、 librxe-dev 和 rxe-dev下载

下载地址

Github: https://github.com/SoftRoCE/rxe-dev.git  Github: https://github.com/SoftRoCE/librxe-dev.git

备注:rxe-dev下载v18版本,即rxe-dev-rxesubmissionv18

3、安装rxe-dev

unzip rxe-dev-rxe_submission_v18.zipcd rxe-dev-rxe_submission_v18/cp /boot/config-3.10.0-514.el7.x86_64 .config

备注:使用root用户,执行以下命令

make menuconfig

会出现选择界面(如果没出现,需要安装 ncurse-devel)

输入 "/" ,然后输入 rxe,按下 enter,会查找有关 rxe 的选择项。
输入数字 1,就会选择到“Software RDMA over Ethernet (ROCE) driver”的设置,输入 "M" ,选中 RDMA 的配置,如果 输不了 M,那就输入空格。
移动到保存按钮,回车,装保存到.config中,退出安装界面(exit)。
然后 vi .config 来确认 
CONFIGRDMARXE 为 m
CONFIGINFINIBANDADDRTRANS 和 CONFIGINFINIBANDADDRTRANS_CONFIGFS 为 y

make -j 4  make modules_install ,可能执行中途 会提示 丢失一些 module,这个 没关系,无关紧要。  make install  make headers_install INSTALL_HDR_PATH=/usr

确认 新的内核是否在 grub 引导中。查看 /etc/grub.cfg 即可看见。在开机的时候可以选择 新内核启动

4、安装 librxe-dev

cd librxe-dev  ./configure --libdir=/usr/lib64/ --prefix=  make  make install

重启操作系统,在开机启动时,选择4.7.0-rc3内核

启动后,查看内核版本

uname -r

5、验证 rdma

[root@aboss ~]# rxe_cfg start   Name        Link  Driver  Speed  NMTU  IPv4_addr  RDEV  RMTU    ens33       yes   e1000                                         virbr0      no    bridge                                        virbr0-nic  no    tun                                         [root@aboss ~]# rxe_cfg add ens33[root@aboss ~]# rxe_cfg status   Name        Link  Driver  Speed  NMTU  IPv4_addr  RDEV  RMTU            ens33       yes   e1000                           rxe0  1024  (3)    virbr0      no    bridge                                                virbr0-nic  no    tun

查看rxe设备

ibvdevices 程序显示该系统中目前所有设备,而 ibvdevinfo 命令会给出每个设备的具体信息

[root@aboss ~]# ibv_devices    device          	   node GUID    ------          	----------------    rxe0            	020c29fffe55c818[root@aboss ~]# ibv_devinfo  rxe0hca_id:	rxe0	transport:			InfiniBand (0)	fw_ver:				0.0.0	node_guid:			020c:29ff:fe55:c818	sys_p_w_picpath_guid:			0000:0000:0000:0000	vendor_id:			0x0000	vendor_part_id:			0	hw_ver:				0x0	phys_port_cnt:			1		port:	1			state:			PORT_ACTIVE (4)			max_mtu:		4096 (5)			active_mtu:		1024 (3)			sm_lid:			0			port_lid:		0			port_lmc:		0x00			link_layer:		Ethernet

6、softRoCE连通性测试

服务端

rping -s -a 192.168.1.133 -v -C 10

客户端

rping -c -a 192.168.1.133 -v -C 10

7、关于librdmacm编译说明

git clone https://github.com/ofiwg/librdmacm.gitcd librdmacmyum install autoconf automake gettext gettext-devel libtool -y./autogen.sh ./configure make make install

8、常见问题

(1)如果你克隆虚机,需要解决网卡问题

(2)使用rdma,请将防火墙与selinx关闭