如果您是基于CentOS 7.9或CentOS 8.4版本的自定义镜像创建的ecs.sccc7或ecs.sccg7规格族的超级计算集群SCC(Super Computing
Cluster)实例,且需要实现多台实例之间使用RoCE RDMA通信,则需要参考本文在实例内手动安装RDMA驱动,来保证您可以正常使用RDMA功能。
前提条件
已通过CentOS 7.9或CentOS 8.4版本的自定义镜像创建了ecs.sccc7或ecs.sccg7规格族的SCC实例。具体操作,请参见使用自定义镜像创建实例。
背景信息
SCC实例规格族ecs.sccc7和ecs.sccg7配置了RDMA网卡,处于同一可用区同一高可用集群内的多台实例之间可以使用RoCE RDMA网卡通信。阿里云的SCC实例默认仅支持特定的SCC版操作系统镜像,如果是基于CentOS
7.9或CentOS 8.4版本的自定义镜像创建的ecs.sccc7或ecs.sccg7规格的实例,默认没有安装RDMA驱动,需手动安装。
说明 除以上情况,SCC实例默认已安装了RDMA驱动,无需再手动安装。
- 有关超级计算集群SCC的更多信息,请参见超级计算集群概述。
- 有关RDMA网卡的更多信息,请参见使用ERI。
操作步骤
- 远程连接已创建的SCC实例。具体操作,请参见连接方式概述。
- 依次运行以下命令,安装相关依赖包。
- 安装DKMS(Dynamic Kernel Module Support)。
yum install dkms -y
- 运行以下命令,下载MFT工具安装包。
wget https://www.mellanox.com/downloads/MFT/mft-4.17.0-106-x86_64-rpm.tgz
- 运行以下命令,解压MFT工具安装包。
tar zvxf mft-4.17.0-106-x86_64-rpm.tgz
- 依次运行以下命令,进入MFT工具并运行该工具。
cd mft-4.17.0-106-x86_64-rpm ./install.sh
- 安装DKMS(Dynamic Kernel Module Support)。
- 依次运行以下命令,分别下载SCC实例规格族定制的驱动包。
wget https://scc7-pkg.oss-cn-shanghai.aliyuncs.com/nic-drivers-mellanox-rdma-4.0.0-8.noarch.rpm wget https://scc7-pkg.oss-cn-shanghai.aliyuncs.com/nic-libs-mellanox-rdma-4.0.0-1.x86_64.rpm wget https://scc7-pkg.oss-cn-shanghai.aliyuncs.com/rdma-service-eflops-3.1.1u4-lossyv4.noarch.rpm wget https://scc7-pkg.oss-cn-shanghai.aliyuncs.com/ali-bonding-1.0.0-4.noarch.rpm
- 依次运行以下命令,分别安装SCC实例规格族定制的驱动包。
rpm -ivh nic-drivers-mellanox-rdma-4.0.0-8.noarch.rpm rpm -ivh nic-libs-mellanox-rdma-4.0.0-1.x86_64.rpm rpm -ivh rdma-service-eflops-3.1.1u4-lossyv4.noarch.rpm rpm -ivh ali-bonding-1.0.0-4.noarch.rpm
- 在/etc/dhcp/dhclient.conf配置文件中添加
bootp-broadcast-always;
配置。- 打开/etc/dhcp/dhclient.conf文件。
vim /etc/dhcp/dhclient.conf
- 按i键进入编辑模式,在配置文件中添加一行
bootp-broadcast-always;
配置信息。 - 按Esc键退出编辑模式,输入
:wq
并按下Enter键,保存并退出文件。
- 打开/etc/dhcp/dhclient.conf文件。
- 将RDMA网卡(eth1、eth2)绑定到bond0网卡。
- 新建ifcfg-bond0文件并添加内容。
- 运行以下命令,新建ifcfg-bond0文件。
vim /etc/sysconfig/network-scripts/ifcfg-bond0
- 按i键进入编辑模式,添加以下内容到文件中。
DEVICE=bond0 BOOTPROTO=dhcp TYPE="ethernet" ONBOOT=yes USERCTL=no PEERDNS=no BONDING_OPTS="miimon=100 mode=4 xmit_hash_policy=layer3+4" DEFROUTE=no
- 按Esc键退出编辑模式,输入
:wq
并按下Enter键,保存并退出文件。
- 运行以下命令,新建ifcfg-bond0文件。
- 新建ifcfg-eth1文件并添加内容。
- 运行以下命令,查看eth1网卡的ether地址。
ifconfig -a
- 运行以下命令,新建ifcfg-eth1文件。
vim /etc/sysconfig/network-scripts/ifcfg-eth1
- 按i键进入编辑模式,添加以下内容到文件中。
DEVICE=eth1 TYPE="Ethernet" HWADDR=xx:xx:xx:xx:xx:xx BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes PEERDNS=no ETHTOOL_OPTS="autoneg on" RX_MAX=`ethtool -g "$DEVICE" | grep 'Pre-set' -A1 | awk '/RX/{print $2}'` RX_CURRENT=`ethtool -g "$DEVICE" | grep "Current" -A1 | awk '/RX/{print $2}'` [[ "$RX_CURRENT" -lt "$RX_MAX" ]] && ethtool -G "$DEVICE" rx "$RX_MAX"
其中,
HWADDR
是eth1网卡的ether地址,请您替换为实际值。 - 按Esc键退出编辑模式,输入
:wq
并按下Enter键,保存并退出文件。
- 运行以下命令,查看eth1网卡的ether地址。
- 新建ifcfg-eth2文件并添加内容。
- 运行以下命令,查看eth2网卡的ether地址。
ifconfig -a
- 运行以下命令,新建ifcfg-eth2文件。
vim /etc/sysconfig/network-scripts/ifcfg-eth2
- 按i键进入编辑模式,添加以下内容到文件中。
DEVICE=eth2TYPE="Ethernet"HWADDR=xx:xx:xx:xx:xx:xxBOOTPROTO=noneONBOOT=yesMASTER=bond0SLAVE=yesPEERDNS=noETHTOOL_OPTS="autoneg on"RX_MAX=`ethtool -g "$DEVICE" | grep 'Pre-set' -A1 | awk '/RX/{print $2}'`RX_CURRENT=`ethtool -g "$DEVICE" | grep "Current" -A1 | awk '/RX/{print $2}'`[[ "$RX_CURRENT" -lt "$RX_MAX" ]] && ethtool -G "$DEVICE" rx "$RX_MAX"
其中,
HWADDR
是eth2网卡的ether地址,请您替换为实际值。 - 按Esc键退出编辑模式,输入
:wq
并按下Enter键,保存并退出文件。
- 运行以下命令,查看eth2网卡的ether地址。
- 新建ifcfg-bond0文件并添加内容。
- 运行以下命令,激活bond0网卡。
ifup bond0
当出现如下结果时,表示bond0网卡激活成功。
Determining IP information for bond0... done.
- 运行以下命令,确认bond0已获取RDMA IP地址。
ifconfig bond0
当查询到bond0网卡与eth1、eth2网卡的ether地址相同时,表示RDMA驱动安装完成。
关于阿里云ecs服务器的内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:https://www.cnzhanzhang.com/9315.html