在linux系统中配置NVMe over FC与配置NVMe over TCP类似,前5步操作请参考《在linux系统中配置NVMe over TCP》,网页连接如下:

  https://www.cnblogs.com/JamesLi/p/11399054.html

注意事项:

以Emulex卡举例,在内核加载lpfc模块时,需要给模块参数赋值,包括:lpfc_enable_nvmet 和 lpfc_enable_fc4_type

例如:

modprobe lpfc lpfc_enable_nvmet=0x1234567890ABCDEF  lpfc_enable_fc4_type=3

解释描述:

lpfc lpfc_enable_nvmet赋值的是做target端的FC端口wwpn(从/sys/class/fc_host/hostx/port_name获得),设置多个时请用逗号分开(当前版本最大支持32个)。

lpfc_enable_fc4_type可以赋值1或2或3,这里3表示及支持SCSI又支持NVMe。

从第6步向后,请按下边步骤操作。

6. 创建NVMe over FC的Transport层

进入/sys/kernel/config/nvmet/ports目录进行操作。

mkdir 123

进入/sys/kernel/config/nvmet/ports/123/目录,此目录自动包含了如下内容

开始设置这些属性:

echo fc > addr_trtype
echo fc > addr_adrfam
addr_traddr            //注意:输入的traddr包含两部分,前边是nn后边是pn(即:node name和port name)。有两种格式即“nn-1234567890ABCDEF:pn-ABCDEF0123456789”或“nn-0x1234567890ABCDEF:pn-0xABCDEF0123456789”。两种格式差别就是是否带了0x标识。(注意nn和pn值的中间的“:”冒号可以用其他任意字符替代,而不要用空格(空格可能会导致只写入了一半),写入之后请用cat addr_traddr确认下是否已经成功写入)
addr_trsvcid      //注意:这个字段在FC类型中暂时未用到

8. 使用host主机进行Discovery

在host端执行命令:

nvme discover -t fc  -a nn-0x1234567890ABCDEF-pn-0xABCDEF0123456789  -w nn-0x2345678901ABCDEF-pn-0x1234567890FEDCBA

参数:

-a是指定的target端FC端口的node_name和port_name

-w是指定的host_traddr,与target相连接的本地FC端口的node_name和port_name

9. 连接

在host主机端执行命令

nvme connect -t fc  -a nn-0x1234567890ABCDEF-pn-0xABCDEF0123456789  -w nn-0x2345678901ABCDEF-pn-0x1234567890FEDCBA  -n nqn.2014-08.org.nvmexpress.mytest

参数:

-n指定target端将要连接的NVM subsystem的NQN。

连接成功后,请用nvme list命令确认下是否已经看到连接的nvme盘。

其他操作,与NVMe over TCP的操作相同。

例如:

nvme id-ctrl /dev/nvme0n1

nvme id-ns /dev/nvme0n1

10. 其他

target端设备重启一次,或许主机再次连接时遇到问题,提示找不到/dev/nvme-fabrics设备。

解决:

  a)使用 ls -l /dev/nvme-fabrics查看,确认是存在此设备的(如果不存在则用lsmod |grep nvme_fabrics确认是不是内核模块异常了);

  b)用dmesg查看内核日志,如果出现“nvme_fc_create_ctrl   combination not found”,可能是nvme_fc_create_ctrl函数return ERR_PTR(-ENOENT);这个错误码导致的误报成了找不到文件或目录。

  c)如果是上一步的原因,则可以echo 1 >/sys/class/fc_host/hostx/issue_lip 或者重启一次主机来解决此问题。

在linux系统中配置NVMe over FC的更多相关文章

  1. 在linux系统中配置NVMe over TCP

    1. 准备环境 1.1 准备linux系统 要求的linux系统可以是运行在物理机上,也可以是虚拟机上: 建议有个linux系统,一个做host,一个做target,如果资源紧张也可以把host和ta ...

  2. Linux系统中配置jdk

    在Linux系统下安装jdk 1.到Oracle公司的官网里下载好jdk,网址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8 ...

  3. 『动善时』JMeter基础 — 57、Linux系统中运行JMeter脚本

    目录 1.Linux系统中安装Java环境 (1)解压Java安装包 (2)配置Java环境变量 (3)验证Java环境是否配置成功 2.Linux系统中安装JMeter (1)下载JMeter (2 ...

  4. 在新安装的Linux系统中,防火墙默认是被禁掉的,一般也没有配置过任何防火墙的策略,所有不存在/etc/sysconfig/iptables文件。

    原因:在新安装的Linux系统中,防火墙默认是被禁掉的,一般也没有配置过任何防火墙的策略,所有不存在/etc/sysconfig/iptables文件. 解决办法: .随便写一条iptables命令配 ...

  5. Linux系统中ElasticSearch搜索引擎安装配置Head插件

    近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...

  6. linux系统中Nginx+FFmPeg+vlc实现网页视频播放配置过程

    linux系统中Nginx+FFmPeg实现网页监控视频播放配置过程 1.安装好的nginx上添加模块nginx-http-fiv-module-master 此模块是rtmp模块的升级版,有它所有的 ...

  7. linux系统中给mysql配置环境变量

    安装过程就不写了,记得安装的路径就行,接下来要用到. 修改配置文件 vim /etc/profile 设置环境变量 写一个MYSQL_HOME,值为“mysql的安装路径” 在PATH后面加上$MYS ...

  8. Linux 系统中的MySQL数据库默认区分大小写

    今天在开发中遇到这么个问题,将连接的数据库改为服务器上的时候(服务器是Linux系统的),程序跑起来后一直出错,总提示数据库的表找不到, 而打开数据库看该表明明是存在的,在我的印象中MySQL数据是不 ...

  9. Linux系统中“动态库”和“静态库”那点事儿 /etc/ld.so.conf 动态库的后缀为*.so 静态库的后缀为 libxxx.a ldconfig 目录名

    Linux系统中“动态库”和“静态库”那点事儿 /etc/ld.so.conf  动态库的后缀为*.so  静态库的后缀为 libxxx.a   ldconfig   目录名 转载自:http://b ...

随机推荐

  1. 将jsp页面转化为图片或pdf升级版(二)(qq:1324981084)

    java高级架构师全套vip教学视频,需要的加我qq1324981084 上面我们已经将jsp页面转化成html页面了,那么接下来我们的目标是利用这个html页面形成pdf或图片格式.这里我用到的是w ...

  2. Python3标准库:copy复制对象

    1. copy复制对象 copy模块包括两个函数copy()和deepcopy(),用于复制现有的对象. 1.1 浅副本 copy()创建的浅副本(shallow copy)是一个新容器,其中填充了原 ...

  3. Apache Log4j 反序列化代码执行(CVE-2019-17571) 漏洞分析

    Apache Log4j 漏洞分析 仅用于研究漏洞原理,禁止用于非法用途,后果自负!!! CVE-2019-17571 漏洞描述 Log4j是美国阿帕奇(Apache)软件基金会的一款基于Java的开 ...

  4. 网易MuMu模拟器不显示Menu(菜单)键的解决办法

    解决方法一: 前提:需要一个键盘 步骤: 1.直接按下键盘上的Menu键. 解决方法二: 前提:需要Root之后的文件浏览器 步骤: 1.在文件管理器中打开 /System 文件夹: 2.复制 bui ...

  5. 正则表达式中的exec()方法

    推荐该博主的内容链接: https://blog.csdn.net/ddwddw4/article/details/84658398?ops_request_misc=%7B%22request%5F ...

  6. Redis主从结构主节点执行写入后wait命令对性能的影响

    这里的Redis主从结构可以是简单的主从,sentinel,redis cluster中的主从等. wait命令的作用:此命令将阻塞当前客户端,直到当前Session连接(主节点上)所有的写命令都被传 ...

  7. 第十周CTF解答

    第十周write-up解题答案及过程 隐写诶 直接用WinRAR查看就能看到其flag{0ca175b9c0f726a831d895e269332461 } 第一题 将后缀名改为 rar ,发现压缩包 ...

  8. php ./configure的一些参数及意义

    PHP编译参数的含义 ./configure –prefix=/usr/local/php php安装目录 –with-apxs2=/usr/local/apache/bin/apxs –with-c ...

  9. Nginx虚拟主机配置(20200202)

    一台机器上跑多个站点,即多个域名 curl -xIP:port 域名    用来指定访问的域名在哪个IP的哪个端口上 Nginx默认虚拟主机 不管什么域名解析到该服务器,都会访问到默认虚拟主机 ngi ...

  10. cf877D

    题意简述:矩阵中有的点不能走,你每次可从四个方向走,至少走一步,最多走k步(不能横跨那些不能走的格子),问从(sx,sy)走到(tx,ty)的最短时间是多少? 题意:利用set来加速bfs的过程,原理 ...