弹性RDMA网卡(ERI)是一种可以绑定到ECS实例的虚拟网卡,ERI必须依附于弹性网卡(ENI)开启RDMA设备。ERI完全复用了弹性网卡所属的网络,让您无需改变业务组网,即可在原有网络下使用RDMA功能,体验RDMA带来的超低延迟。本文介绍如何在ECS实例上配置ERI。

背景信息

ERI基于神龙架构,使用ERI具有以下优势:
  • 超低延迟:RDMA功能绕过内核协议栈,将数据直接从用户态程序转移到HCA中进行网络传输,极大地降低了CPU负载和延迟。ERI使弹性网卡具有传统RDMA网卡的优点,您可以在阿里云VPC中体验超低的延迟。
  • 规模部署:传统的RDMA功能依赖于网络的无损特性,在规模部署时难度高且成本高。而ERI采用了自研的拥塞控制(CC)算法,容忍VPC网络中的传输质量变化(例如延迟、丢包等),在有损的网络环境中依然拥有良好的性能表现。
  • 弹性扩展:ERI依附于弹性网卡,您可以随时创建支持ERI的弹性网卡并绑定到ECS实例,轻松实现弹性扩展。

ERI支持的接口和库:Libfabric 1.13.1、Intel MPI 2021.2、OpenMPI 4.1.1、EPSL v1.10、RSocket(自带RSocket,无需额外安装)。

操作步骤

注意 如果之前已通过DKMS(Dynamic Kernel Module Support)安装过1.0版本的ERI驱动,则需要先执行dkms remove -m erdma -v 1.0移除该驱动。
  1. 创建支持ERI的实例。
    具体操作,请参见使用向导创建实例。在创建支持ERI的实例时,请注意下表中的配置项。
    配置项 说明
    地域及可用区 选择华北2(北京),可用区K。
    实例规格 选择RDMA增强型实例规格族c7re的实例规格。
    镜像 按需从以下镜像中选择一款镜像:
    • Alibaba Cloud Linux 2/3
    • CentOS 7.4/7.6/8.3
    • Ubuntu 18.04/20.04
    • Debian 9.9
  2. 创建启用ERI的弹性网卡。
    具体操作,请参见创建弹性网卡。在创建启用ERI的弹性网卡时,请注意打开弹性RDMA接口开关。ERI会共用该弹性网卡的设置,包括弹性网卡的IP、应用于弹性网卡的安全组规则等。
    说明 只能在创建弹性网卡时启用ERI,不支持通过修改弹性网卡的属性启用ERI。
    create-eni
  3. 将弹性网卡绑定至实例。
    具体操作,请参见绑定弹性网卡。将启用ERI的弹性网卡绑定至实例后,如需解绑,必须先停止实例。
    说明 单台实例最多绑定一个启用ERI的弹性网卡。
  4. 远程连接实例。
  5. 在实例内配置弹性网卡。
    部分镜像无法自动识别新绑定的辅助弹性网卡。您可以执行ifconfig命令查看,如果不能显示该网卡,请手动配置弹性网卡,具体操作,请参见配置辅助弹性网卡
  6. 在实例内安装ERI驱动。
    1. 升级所有包和系统内核。
      • Alibaba Cloud Linux 2/3、CentOS:
        yum update -y
      • Ubuntu:
        apt-get update
      • Debian:
        apt-get update && apt-get install linux-image-4.9.0-16-amd64 && reboot
        说明 请在实例重启后重新远程连接实例。
    2. 安装DKMS。
      ERI驱动采用源码编译的方式安装,安装ERI驱动前需先安装DKMS。
      • Alibaba Cloud Linux 2/3、CentOS:
        sudo yum install dkms
      • Ubuntu、Debian:
        sudo apt-get install dkms
    3. 安装kernel-devel。
      • Alibaba Cloud Linux 2/3、CentOS:
        sudo yum install kernel-devel
      • Ubuntu、Debian:
        sudo apt-get install kernel-devel
    4. 下载驱动安装包。
      wget https://aliyun-chengyou.oss-cn-hangzhou.aliyuncs.com/release/aliyun-erdma-source-installer-2.9.6.tar.gz
    5. 解压安装包并进入文件目录。
      tar -xf aliyun-erdma-installer-2.9.6.tar.gz && cd aliyun-erdma-installer
    6. 安装驱动。
      sudo sh ./erdma_install.sh -y
    7. 确认已成功安装驱动。
      ibv_devinfo
      查询到设备信息即表示安装成功,即ERI配置完成,可以开始使用,输出示例如下图所示。rdma-driver