Using command line NVMe-oF DEMO to test off-load NVMe-oF target performance

From the package of us, there are few demo utils to create a single pooled storage to demonstrate storage features and performance. Through the way, you can quick preview your favorite features in minutes.

For NVMe-oF target, you may run the following command to start:

/opt/flexsds/bin/flexsds -d nvmf spool 3 nvme://0000:04:00.0 nvme://0000:05:00.0 nvme://0000:05:00.0
outputs are:
found 1 ib devices
device0: mlx5_0, uverbs0, /sys/class/infiniband_verbs/uverbs0, /sys/class/infiniband/mlx5_0
copies: 2
create name space: nqn.2016-12.com.flexsds:all-flash-pool.volume0…done.
NVMe over Fabric service is started.

Read more

Configure NVMe-oF device with Multipath

Requirements:

Linux Kernel 4.8 and newer.

Package: multipath, nvme-cli

Use the ways to install them:

#yum install device-mapper-multipath nvme-cli

Read more

Using Linux nvme-cli to connect to the FlexSDS’s NVMe-oF targets

Requirements

To using Linux NVMe over Fabrics client, need Linux with kernel 4.08 and above.

Install the nvme-cli package on the client machine:

#yum install nvme-cli

or on Debian:

#apt-get install nvme-cli

Startup Kernel Module

#modprobe nvme-rdma

Discover NVMe-oF subsystems

nvme discover -t rdma -a 192.168.80.101 -s 4420
Discovery Log Number of Records 1, Generation counter 1

=====Discovery Log Entry 0======

trtype: rdma

adrfam: ipv4

subtype: nvme subsystem

treq: not specified

portid: 1

trsvcid: 4420

subnqn:nqn.2016-12.com.flexsds:all-flash-pool.test_vol0

traddr: 192.168.80.101

rdma_prtype: not specified

rdma_qptype: connected

rdma_cms: rdma-cm

rdma_pkey: 0x0000

Connect to NVMe-oF subsystems

nvme connect -t rdma -n nqn.2016-12.com.flexsds:all-flash-pool.test_vol0 -a 192.168.80.101 -s 4420

List nvme device info:

#nvme list
Node SN Model Namespace Usage Format FW Rev
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1 FlexSDS Controller 1000 GB / 1000 GB 512 B + 0 B A34CCD834CD3544

Disconnect NVMe-oF subsystems

In order to disconnect from the target run the nvme disconnect command:

#nvme disconnect -d /dev/nvme0n1