ubuntu18.04系统中配置NVMe-oF
1.环境准备
linux系统可以是运行在物理机上,也可以是虚拟机上,本次是运行在虚拟机上。
建议有2个linux系统,一个做host,一个做target,如果资源紧张也可以把host和target运行在一个linux系统里,本次host、target都同一个系统里。
1.1 安装 ubuntu18.04
root@ubuntu:~# uname -a
Linux ubuntu 5.4.0-42-generic #46~18.04.1-Ubuntu SMP Fri Jul 10 07:21:24 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
root@ubuntu:~#
1.2 安装nvme-cli
apt install nvme-cli
1.3 编译安装MLNX_OFED_LINUX驱动
驱动下载地址:https://www.mellanox.com/products/infiniband-drivers/linux/mlnx_ofed
编译安装:
# 解压编译安装
tar -zxvf MLNX_OFED_LINUX-5.0-2.1.8.0-ubuntu18.04-x86_64.tgz
cd MLNX_OFED_LINUX-5.0-2.1.8.0-ubuntu18.04-x86_64
./mlnxofedinstall --with-nvmf --force --add-kernel-support
# 加载相关驱动内核模块
modprobe nvmet
modprobe nvmet-rdma
modprobe nvmet-tcp
modprobe nvme-fabrics
modprobe nvme_core
# 加载检查
root@ubuntu:~# lsmod |grep nvme
nvme_fabrics 24576 0
nvme_core 106496 1 nvme_fabrics
nvmet_tcp 24576 0
nvmet_rdma 28672 0
rdma_cm 65536 1 nvmet_rdma
ib_core 311296 4 rdma_cm,nvmet_rdma,iw_cm,ib_cm
nvmet 81920 2 nvmet_tcp,nvmet_rdma
root@ubuntu:~#
root@ubuntu:~# tree /sys/kernel/config/
/sys/kernel/config/
├── nvmet
│ ├── hosts
│ ├── ports
│ └── subsystems
├── pci_ep
│ ├── controllers
│ └── functions
└── rdma_cm
8 directories, 0 files
root@ubuntu:~#
**安装编译的时候遇到报错,查看日志是因为系统自带的python3,而编译的脚本使用了python2的语法,因此报错,解决办法是在系统中安装了一下python:apt install python
1.4 准备一块磁盘
root@ubuntu:~# fdisk -l /dev/sdb
Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors