Firbre channel由于其专用性,相较传统iSCSI网络,能极大地提高Fabric的传输效率和速度,因此在传统中

高端存储上得到广泛的应用。搭建基于Fibre channel的存储服务,要求对Fibre channel 底层传输协议有一

定了解,还要求熟悉Fibre channel的软件堆栈层次,此外还要求清楚一般存储服务管理中的host、LUN、

host group之间的关系。

本文总结了实际使用过程中碰到的和驱动堆栈相关问题,加深了我们队Fibre channel的底层软件堆栈的

理解。

1. Fibre channel 的软件堆栈

根据Linux storage stack diagram中的描述,在最近linux系统上fibre channel的驱动堆栈如下面截图所示:

其中target_core_pscsi驱动模块和SCSI mid layer 交互,入下面的层次图所示:

下面在实际机器上看到的驱动依赖关系,也印证了上面的层次:

[root@localhost ~]# lsmod | grep scsi

scsi_transport_fc     59960  2 qla2xxx,tcm_qla2xxx

scsi_tgt              20027  1 scsi_transport_fc

target_core_pscsi     18810  0

iscsi_target_mod     296307  1

target_core_mod      312037  9 target_core_iblock,tcm_qla2xxx,target_core_pscsi,iscsi_target_mod,tcm_loop

scsi_transport_sas    41034  1 mpt3sas

[root@localhost ~]# lsmod | grep qla2xxx

tcm_qla2xxx           31370  3

qla2xxx              598010  1 tcm_qla2xxx

scsi_transport_fc     59960  2 qla2xxx,tcm_qla2xxx

target_core_mod      312037  9 target_core_iblock,tcm_qla2xxx,target_core_pscsi,iscsi_target_mod,tcm_loop

[root@localhost ~]# lsmod | grep core

target_core_iblock    18177  0

target_core_pscsi     18810  0

coretemp              13435  0

edac_core             57650  1 sb_edac

mfd_core              13435  1 lpc_ich

target_core_mod      312037  9 target_core_iblock,tcm_qla2xxx,target_core_pscsi,iscsi_target_mod,tcm_loop

i2c_core              40325  6 ast,drm,igb,i2c_i801,drm_kms_helper,i2c_algo_bit

pps_core              19106  1 ptp

[root@localhost ~]# lsmod | grep iblock

target_core_iblock    18177  0

target_core_mod      312037  9 target_core_iblock,tcm_qla2xxx,target_core_pscsi,iscsi_target_mod,tcm_loop

[root@localhost ~]#

2.使用过程中的常见问题

在尝试用targetcli创建target实例的过程中,会使用到上面驱动层次中的各个模块,因此如果在此过程中出

现任何问题,需要及时检查驱动加载状态和内核的输出信息,再结合targetcli命令运行失败的输出,就能

帮助我们快速定位问题。

2.1 Could not create Qla2xxxFabricModule in configFS.

Fabric module name: qla2xxx

ConfigFS path: /sys/kernel/config/target/qla2xxx

Allowed WWN types: naa

Allowed WWNs list: naa.2100000e1e1b0190, naa.2100000e1e1b0191

Fabric module features: acls

Corresponding kernel module: tcm_qla2xxxt

/qla2xxx> create 21:00:00:0e:1e:1b:01:90

Could not create Qla2xxxFabricModule in configFS.

原因没有加载:tcm_qla2xxx

解决办法:

modprobe tcm_qla2xxx

2.看不到FC fabric

Copyright 2011-2013 by Datera, Inc and others.

For help on commands, type 'help'.

/> ls

o- / ......................................................................................................................... [...]

o- backstores .............................................................................................................. [...]

| o- block .................................................................................................. [Storage Objects: 0]

| o- fileio ................................................................................................. [Storage Objects: 0]

| o- pscsi .................................................................................................. [Storage Objects: 0]

| o- ramdisk ................................................................................................ [Storage Objects: 0]

o- iscsi ............................................................................................................ [Targets: 0]

o- loopback ......................................................................................................... [Targets: 0]

/> quit

Command not found quit

/> exit

Global pref auto_save_on_exit=true

Last 10 configs saved in /etc/target/backup.

Configuration saved to /etc/target/saveconfig.json

原因:tcm_qla2xxx没加载:

[root@localhost myfc]# lsmod | grep qla2xxx

qla2xxx              614431  0

scsi_transport_fc     68189  1 qla2xxx

[root@localhost myfc]# lsmod | grep tcm_qla2xxx

3.在target里面不能创建configFS

现象如下图所示:

检查驱动,发现tcm_qla2xxx.ko和qla2xxx.ko都已经加载,问题是qla2xxx.ko支持target模式和initiator模式,在存储服务器上必须根据target模式加载,可以参考下面的命令重新加载:

modprobe -r qla2xxx

modprobe qla2xxx qlini_mode=”disabled”

本文转自存储之厨51CTO博客,原文链接:http://blog.51cto.com/xiamachao/1921488 ,如需转载请自行联系原作者

[Fibre channel 实战之一] 驱动堆栈和创建target常见问题相关推荐

  1. Mysql实战之驱动篇

    Mysql实战之驱动篇 前言 从工作开始就一直和MySQL这个老朋友打交道, 说实话一直停留在使用阶段,对其原理的认知也是碎片化的,一直有计划做个整理,最近就让想法付诸实践,所以就有了本篇. 驱动: ...

  2. python使用np.logspace函数在对数刻度上创建一个对数等距数组实战:在对数刻度上创建一个数组(指定数值个数以及是否包含末尾界值)、使用不同的基数(底数)在对数刻度上构建等距数组、可视化

    python使用np.logspace函数在对数刻度上创建一个对数等距数组实战:在对数刻度上创建一个数组(指定数值个数以及是否包含末尾界值).使用不同的基数(底数)在对数刻度上构建等距数组.可视化 目 ...

  3. fb驱动安装linux系统,drm 驱动是如何创建 fb device 的

    drm 驱动是如何创建 fb device 的 什么是 drm? drm 是一个 Linux 内核的显示系统驱动框架,区别于另外一个 DRM数字版权保护 drm 是一个管理 GPU 的显示框架 在内核 ...

  4. 【存储知识学习】第八章-Fibre Channel协议-8.1 FC网络和8.2FC协议中七种端口类型-《大话存储》阅读笔记

    8.1FC网络 Fibre Channel也就是网状通道,简称FC.也可以称为FC协议,FC网络.FC互联 注意: Fibre Channel不是Fiber Channel,后者是光纤通道与网状通道没 ...

  5. Serverless实战 —— ​​​​​​​Laravel + Serverless Framework 快速创建 CMS 内容管理系统

    Serverless实战 -- Laravel + Serverless Framework 快速创建 CMS 内容管理系统 作者: Tabor 今天,为大家带来一篇 Laravel + Server ...

  6. tcm_fc自动加载 linux,[Fibre Channle 实战之四]centos7中如何添加tcm_qla2xxx支持

    centos7中自带的有qla2xxx驱动,但是没有tcm_qla2xxx驱动,这会创建一些HBA卡的target的时候失败.为此,需要保证tcm_qla2xxx.ko驱动能生成并自动执行.那么该如何 ...

  7. RAID10 (146G*8) vs EMC VNX 5300 (8G Fibre Channel)

    RAID10 (146G*8) vs EMC VNX 5300 (8G Fibre Channel) 服务器RAID卡带宽是6G,而Fibre Channel目前是8G,ISCSI与FCoE 可以提供 ...

  8. Configure hp 磁带库 Fibre Channel Card

    Configure Fibre Channel Card 1. 在windows下用超级终端连接Fibre Channel Card 点选"开始"-〉"附件"- ...

  9. SATA ,SCSI ,Fibre Channel, SAN ,VERITAS

    ####################SATA接口############################ SATA的全称是Serial Advanced Technology Attachment ...

  10. GameFramework实战一(流程的创建)

    GameFramework的导入 看了之前的之前的文章,我默认大家都已经调试好了,如果没有的话,我推荐GF作者的工程源码 第一个流程的创建 在工程导入之后,我们的初始目录是这样的 在GameMain文 ...

最新文章

  1. 传统产业已死,新的产业在何方?
  2. 编程笔试(解析及代码实现):猴子吃桃。猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个…的C++、Java、Python、C#等语言代码实现
  3. python自定义函数添加到路径
  4. python统计分析---6.主成分分析
  5. 捕捉Entity framework 6的详细异常提示
  6. 产品经验谈:设计思维 统计思维
  7. 赢在微点答案专区英语_少儿英语课堂 语法教学游戏 全集
  8. 腾讯 PCG 招计算机视觉实习生!52CV关注者可加速面试进程
  9. google java. 集合_google guava集合之Table
  10. Swift开发教程--怎样设置状态栏的文字颜色
  11. JAVA模拟学生选课系统(附下载链接)
  12. 2021绍兴市大学生程序设计竞赛邀请赛题解
  13. 关于火车采集文章发布到wordpress后台待审核模块的设置
  14. android-c2手机,[视频]最新Android One手机Nokia C2登场:搭载紫光展锐处理器
  15. 保险丝的作用原理及选择
  16. 使用HTML实现一个静态页面(含源码)
  17. 中英文切换遇到的坑-总结
  18. 如何伦敦银走势图中寻找波段操作机会
  19. c语言signed int与unsigned int的运算
  20. JIRA 从低版本升级到高版本(3 6 2- 6 0 8)

热门文章

  1. https:/zh.wikipedia.org/wiki/表现层状态转
  2. 两张图按同一坐标合并_excel如何将两个图合并为同X轴,不同Y轴的图?
  3. 免备案服务器的优势及香港免备案服务器的应用
  4. Python实例004:输入某年某月某日,判断日期的正确合理性以及输出该天是该年的第几天
  5. android实现漫天雪花下雨效果
  6. 房屋租赁|基于JavaWeb实现一个房屋租赁平台系统
  7. 5个免费的3D钣金CAD软件
  8. 使用FFmpeg打水印,加速减速播放以及4宫格播放视频
  9. SAP License:浅谈财务信息系统建设
  10. 使用windows自带任务计划管理程序定时调用Kettle作业